CX_SYSTEM_OBJECT::GenerateHash
196595
Beschreibung:
Diese Funktion bildet einen Hash-Wert nach spezifiziertem Algorithmus aus der übergebenen Zeichenkette. Ist kein Algorithmus angegeben (Leerstring), wird SHA1 verwendet.
Der Parameterhash wird nur nur dann benötigt, wenn der Klartext mit einem bestehenden bcrypt-Hash verglichen werden soll (siehe auch CheckHash), denn die Hashing-Parameter (Salt & Anzahl Runden) sind in dem Hash enthalten und müssen gleich gewählt werden, damit der generierte Hash auch vergleichbar ist (und für den gleichen Klartext den gleichen Hash liefert).
Unterstützte Algorithmen |
---|
SHA1 |
bycrypt |
SHA256 228748 |
SHA512 228748 |
Siehe auch CX_USER.
Die Hashes, die von den SHA-Algorithmen zurückgegeben werden, sind ASCII-Kodierte Hex-Strings (nur Zeichen 0-9 & A-F).
Der von bcrypt zurückgegebene Hash hat einen etwas komplexeren Aufbau und der eigentliche Hash ist Base64 kodiert (jedoch mit einem nicht-standardisierten Alphabet). Alle zurückgegebenen Hashes bestehen nur aus Zeichen des druckbaren ASCII-Zeichensatzes und enthalten keine Sonderzeichen.
Code-Beispiel:
"myText" "$2a$12$VpfUu6nek.wpNUfaz5IU7.XIIZ/2L1YHxuw35eDL.0GNqC5xLLaBq" "bcrypt" SystemObject Call(GenerateHash)
"myText" "" "SHA1" SystemObject Call(GenerateHash) // "8B67FDFA9CE9..."
Stack | Position | Objekttyp | Kurzbeschreibung |
---|---|---|---|
Stack(In) | Top | CX_SYSTEM_OBJECT | Das System-Objekt |
Top-1 | STRING | Hash-Algorithmus | |
Top-1 | STRING | Parameterhash (nur für bcrypt) | |
Top-2 | STRING | Text | |
Stack(Out) | Top | STRING | Hash-Wert |