Vordefinierte Konstanten

Die aufgelisteten Konstanten stehen immer zur Verfügung, da sie zum Grundbestand von PHP gehören.

PASSWORD_BCRYPT (integer)

PASSWORD_BCRYPT wird verwendet um neue Passwort-Hashes unter Verwendung des CRYPT_BLOWFISH Algorithmus zu erzeugen.

Dies ergibt immer einen Hash, der das "$2y$" Crypt-Format verwendet, und der immer 60 Zeichen lang ist.

Unterstützte Optionen:

  • salt (string) - um manuell ein Salt bereit zu stellen, wenn dass Passwort gehasht wird. Es ist zu beachten, dass dies die automatische Erzeugung eines Salt verhindert.

    Wird diese Option ausgelassen, dann wird von password_hash() ein zufälliges Salt für jedes gehashte Passwort erzeugt. Dies ist der vorgesehene Operationsmodus, und von PHP 7.0.0 an ist die salt Option missbilligt.

  • cost (integer) - 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 (integer)

PASSWORD_ARGON2I wird verwendet um neue Passwort-Hashes unter Verwendung des Argon2i-Algorithmus zu erzeugen.

Unterstützte Optionen:

  • memory_cost (integer) - die Obergrenze des Speichers (in Bytes), die verwendet werden darf, um den Argon2-Hash zu berechnen. Der Vorgabewert ist PASSWORD_ARGON2_DEFAULT_MEMORY_COST.

  • time_cost (integer) - die Höchstdauer der Berechnung des Argon2-Hashs. Der Vorgabewert ist PASSWORD_ARGON2_DEFAULT_TIME_COST.

  • threads (integer) - Die Anzahl der Threads, die für die Berechnung des Argon2-Hashs verwendet werden. Der Vorgabewert ist PASSWORD_ARGON2_DEFAULT_THREADS.

Verfügbar von PHP 7.2.0 an.

PASSWORD_ARGON2ID (integer)

PASSWORD_ARGON2ID wird verwendet um neue Passwort-Hashes unter Verwendung des Argon2id-Algorithmus zu erzeugen. Es werden dieselben Optionen wie bei PASSWORD_ARGON2I unterstützt.

Verfügbar von PHP 7.3.0 an.

PASSWORD_ARGON2_DEFAULT_MEMORY_COST (integer)

Der Vorgabewert des Speichers in Bytes, den Argon2lib beim Versuch den Hash zu berechnen, verwenden wird.

Verfügbar von PHP 7.2.0 an.

PASSWORD_ARGON2_DEFAULT_TIME_COST (integer)

Der Vorgabewert der Dauer, die Argon2lib beim Versuch den Hash zu berechnen, verwenden wird.

Verfügbar von PHP 7.2.0 an.

PASSWORD_ARGON2_DEFAULT_THREADS (integer)

Der Vorgabewert der Threads, die Argon2lib verwenden wird.

Verfügbar von PHP 7.2.0 an.

PASSWORD_DEFAULT (integer)

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 im Lauf der Zeit diese Konstante ä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