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 des CRYPT_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_BCRYPT_DEFAULT_COST (int)

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 ist PASSWORD_ARGON2_DEFAULT_MEMORY_COST.

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

  • threads (int) - Die Anzahl der Threads, die für die Berechnung des Argon2-Hashs verwendet werden. Der Vorgabewert ist PASSWORD_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 bei PASSWORD_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_ARGON2_PROVIDER (string)

Verfügbar von PHP 7.4.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

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.

add a note add a note

User Contributed Notes 2 notes

up
0
Daniel
7 years ago
The salt option has been deprecated as of PHP 7.0.0. It is now preferred to simply use the salt that is generated by default. -
- http://php.net/manual/pt_BR/function.password-hash.php
up
-22
renan at tecdicas dot com
8 years ago
The salt option has been deprecated as of PHP 7.0.0.
To Top