sodium crypto pwhash()

Från Wiki.linux.se
Version från den 9 november 2024 kl. 08.14 av Admin (diskussion | bidrag) (Skapade sidan med '== 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 === <pre> sodium_crypto_pwhash( int $length, #[\SensitiveParameter] string $password, string $salt, int $opslimit, int $memlimit, int $algo = SODIUM_CRYPTO_PWHASH_ALG_DEFAULT ): string </pre> Denna funktion erbjuder låg-nivå åtkomst till libsodiums crypto_pwhash-funktion för nyckelavled...')
(skillnad) ← Äldre version | Nuvarande version (skillnad) | Nyare version → (skillnad)
Hoppa till navigering Hoppa till sök

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.