Vordefinierte Konstanten
Die aufgelisteten Konstanten stehen immer zur Verfügung, da sie zum Grundbestand von PHP gehören.
-
PASSWORD_BCRYPT
(string) -
PASSWORD_BCRYPT
wird verwendet, um neue Passwort-Hashes unter Verwendung desCRYPT_BLOWFISH
Algorithmus zu erzeugen.Dies ergibt immer einen Hash, der das "$2y$"-Crypt-Format verwendet und immer 60 Zeichen lang ist.
Unterstützte Optionen:
-
salt
(string) - um manuell ein Salt anzugeben, das beim Hashing des Passworts verwendet wird. Es ist zu beachten, dass dies die automatische Erzeugung des Salt verhindert.Wird diese Option ausgelassen, dann wird von password_hash() ein zufälliges Salt für jedes gehashte Passwort erzeugt. Dies ist die vorgesehene Funktionsweise, und von PHP 7.0.0 an wird die salt-Option missbilligt.
-
cost
(int) - bezeichnet den algorithmischen Aufwand, der angewendet werden soll. Beispiele dieses Wertes können der crypt()-Dokumentation entnommen werden.Wird diese Option ausgelassen, dann wird der Standardwert
10
verwendet. Das ist eine gute Ausgangsbasis, aber es ist zu erwägen, diesen Wert in Abhängigkeit von der Hardware zu erhöhen.
-
-
PASSWORD_ARGON2I
(string) -
PASSWORD_ARGON2I
wird verwendet, um neue Passwort-Hashes unter Verwendung des Argon2i-Algorithmus zu erzeugen.Unterstützte Optionen:
-
memory_cost
(int) - die Obergrenze des Speichers (in Kibibytes), der verwendet werden darf, um den Argon2-Hash zu berechnen. Der Vorgabewert istPASSWORD_ARGON2_DEFAULT_MEMORY_COST
. -
time_cost
(int) - die Höchstdauer der Berechnung des Argon2-Hashs. Der Vorgabewert istPASSWORD_ARGON2_DEFAULT_TIME_COST
. -
threads
(int) - Die Anzahl der Threads, die für die Berechnung des Argon2-Hashs verwendet werden. Der Vorgabewert istPASSWORD_ARGON2_DEFAULT_THREADS
. Nur mit libargon2 verfügbar, nicht mit der libsodium-Implementierung.
Verfügbar von PHP 7.2.0 an.
-
-
PASSWORD_ARGON2ID
(string) -
PASSWORD_ARGON2ID
wird verwendet, um neue Passwort-Hashes unter Verwendung des Argon2id-Algorithmus zu erzeugen. Es werden dieselben Optionen wie beiPASSWORD_ARGON2I
unterstützt.Verfügbar von PHP 7.3.0 an.
-
PASSWORD_ARGON2_DEFAULT_MEMORY_COST
(int) -
Der Vorgabewert des Speichers in Bytes, der beim Versuch, den Hash zu berechnen, verwenden wird.
Verfügbar von PHP 7.2.0 an.
-
PASSWORD_ARGON2_DEFAULT_TIME_COST
(int) -
Der Vorgabewert der Dauer, die beim Versuch, den Hash zu berechnen, verwenden wird.
Verfügbar von PHP 7.2.0 an.
-
PASSWORD_ARGON2_DEFAULT_THREADS
(int) -
Der Vorgabewert der Anzahl Threads, die Argon2lib verwenden wird.
Verfügbar von PHP 7.2.0 an.
-
PASSWORD_DEFAULT
(mixed) -
Der Vorgabewert des Algorithmus, der für das Hashing verwendet wird, wenn kein Algorithmus angegeben wird. Dies kann sich in neueren PHP-Releases ändern, wenn neuere, stärkere Hash-Algorithmen unterstützt werden.
Es ist zu betonen, dass sich diese Konstante im Lauf der Zeit ändern kann (und vermutlich wird). Daher ist zu beachten, dass sich die Länge des resultierenden Hashs ändern kann. Also sollte bei Verwendung von
PASSWORD_DEFAULT
der sich ergebende Hash so gespeichert werden, dass er mehr als 60 Zeichen lang sein kann (255 ist die empfohlene Länge).Werte dieser Konstante:
-
PHP 5.5.0 -
PASSWORD_BCRYPT
-
PHP 5.5.0 -
Changelog
Version | Beschreibung |
---|---|
7.4.0 |
Die Werte der Passwort-Algorithmen-IDs
(PASSWORD_BCRYPT ,
PASSWORD_ARGON2I ,
PASSWORD_ARGON2ID und
PASSWORD_DEFAULT ) sind nun Strings. Zuvor waren
es Integer.
|