sodium crypto pwhash()
sodium_crypto_pwhash
(PHP 7 >= 7.2.0, PHP 8)
sodium_crypto_pwhash — Härled en nyckel från ett lösenord, med hjälp av Argon2
Beskrivning
sodium_crypto_pwhash( int $length, #[\SensitiveParameter] string $password, string $salt, int $opslimit, int $memlimit, int $algo = SODIUM_CRYPTO_PWHASH_ALG_DEFAULT ): string
Denna funktion erbjuder låg-nivå åtkomst till libsodiums crypto_pwhash-funktion för nyckelavledning. Om du inte har ett specifikt behov av att använda denna funktion, rekommenderas istället sodium_crypto_pwhash_str() eller password_hash().
En vanlig anledning att använda denna funktion är för att härleda frön för kryptografiska nycklar från ett lösenord och salt, och sedan använda dessa frön för att generera faktiska nycklar (t.ex. för sodium_crypto_sign_detached()).
Parametrar
length Längden på lösenordshashen som ska genereras, i bytes.
password Lösenordet som ska hashas.
salt Ett salt som läggs till lösenordet innan hashing. Bör genereras från en säker slumpkälla såsom random_bytes(), och ha en längd av exakt SODIUM_CRYPTO_PWHASH_SALTBYTES bytes.
opslimit Maximalt antal beräkningar som ska utföras. Högre värden kräver fler CPU-cykler. Använd tillgängliga konstanter för att ställa in lämpliga värden:
- SODIUM_CRYPTO_PWHASH_OPSLIMIT_INTERACTIVE
- SODIUM_CRYPTO_PWHASH_OPSLIMIT_MODERATE
- SODIUM_CRYPTO_PWHASH_OPSLIMIT_SENSITIVE
memlimit Maximalt RAM som funktionen använder, i bytes. Använd följande konstanter:
- SODIUM_CRYPTO_PWHASH_MEMLIMIT_INTERACTIVE
- SODIUM_CRYPTO_PWHASH_MEMLIMIT_MODERATE
- SODIUM_CRYPTO_PWHASH_MEMLIMIT_SENSITIVE
algo Hash-algoritmen som ska användas. Standard är SODIUM_CRYPTO_PWHASH_ALG_DEFAULT, eller specifikt SODIUM_CRYPTO_PWHASH_ALG_ARGON2ID13 för Argon2id version 1.3.
Returnerar
Returnerar den härledda nyckeln som en binär sträng.
Exempel
<?php // Behåll saltet om du senare vill kunna verifiera lösenordet $salt = random_bytes(SODIUM_CRYPTO_PWHASH_SALTBYTES); // Använder bin2hex för att göra utskriften läsbar echo bin2hex( sodium_crypto_pwhash( 16, // == 128 bitar 'password', $salt, SODIUM_CRYPTO_PWHASH_OPSLIMIT_INTERACTIVE, SODIUM_CRYPTO_PWHASH_MEMLIMIT_INTERACTIVE, SODIUM_CRYPTO_PWHASH_ALG_ARGON2ID13 ) ); ?>
Exemplet ovan kommer att ge något liknande:
a18f346ba57992eb7e4ae6abf3fd30ee
Sidslut
Orginalhemsidan på Engelska :https://www.php.net/manual/en/function.sodium-crypto-pwhash.php
PHP
Funktioner
Funktionsreferens
Kryptografitillägg
Sodium
Det här är en maskinöversättning av PHP-manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till Datorhjälp som har sponsrat Linux.se med webbhotell.