Funkcja PHP hasło_verify

Funkcja PHP hasło_verify
Funkcja hasła_verify () służy do dopasowania hasła skrótu do oryginalnego hasła. Inna funkcja, hasło_hash () służy do generowania wartości skrótu w oparciu o algorytm mieszania, kosztów i wartości soli. Funkcja Password_Verify () zawiera wszystkie informacje o mieszaniu w celu zweryfikowania skrótu za pomocą hasła. Zastosowania tej funkcji zostały pokazane w tym samouczku przy użyciu wielu przykładów.

Składnia

Ta funkcja ma dwa argumenty i zwraca prawdziwe sukces i fałszywe porażkę. Składnia tej funkcji podano poniżej.

hasło_verify (string $ hasło, string $ hash): bool

Pierwszy argument zawiera hasło, które zostanie sprawdzone. Drugi argument zawiera wartość skrótu używaną do sprawdzenia hasła jest prawidłowe lub nie. Ta wartość skrótu jest generowana za pomocą funkcji hasła_hash ().

Do generowania wartości skrótu dowolnego hasła można użyć różnych rodzajów algorytmów. Drugi argument funkcji hasła_hash () zawiera stałą wartość wskazującą algorytm mieszania. Stałe, które mogą być używane przez funkcję Password_Hash (), wspomniano poniżej.

Stała nazwa Opis
Hasło_default Używa domyślnego algorytmu do generowania wartości hash hasła.
Hasło_bcrypt Używa algorytmu Crypt_Blowfish do wygenerowania wartości hash hasła.
Hasło_argon2i Używa algorytmu Argon2i do generowania wartości hash hasła.
Hasło_argon2id Wykorzystuje algorytm Argon2ID do generowania wartości hash hasła.

Użycie funkcji hasła_verify ()

W tej części samouczka pokazano sposoby weryfikacji hasła na podstawie wartości skrótu generowanego przez różne algorytmy mieszania.

Przykład-1: Sprawdź hasło za pomocą skrótu generowanego przez hasło_default

Utwórz plik PHP z następującym skryptem, który wyświetli formularz dla użytkownika, aby podać hasło, które zostanie sprawdzone przez funkcję hasła_verify () w sprawie sprawdzania poprawności, gdy przycisk przesłania zostanie naciśnięty.

Stała wartość, Hasło_default został użyty w funkcji hasła_hash () do wygenerowania wartości skrótu konkretnego hasła. Następnie funkcja hasła_verify () używana do sprawdzenia wartości hasła podanej przez użytkownika jest ważna lub nieprawidłowa.



Weryfikacja hasła













// Wygeneruj wartość skrótu hasła
$ hash = hasło_hash ('secretPass456', hasło_default);
// Sprawdź, czy wartość hasła jest przesyłana przez użytkownika lub nie
if (isset ($ _ POST ['pass']))

// Przeczytaj hasło przesłane przez użytkownika
$ hasło = $ _POST ['pass'];
// Sprawdź hasło jest prawidłowe lub nieprawidłowe
if (hasło_verify ($ hasło, $ hash))
Hasło echo jest prawidłowe!';;
w przeciwnym razie
Hasło echo jest nieprawidłowe.';;


?>

Wyjście:

Następujące dane wyjściowe pojawi się po wykonaniu powyższego skryptu, jeśli użytkownik podano prawidłowe hasło.

Następujące dane wyjściowe pojawi się po wykonaniu powyższego skryptu, jeśli użytkownik podano nieprawidłowe hasło.

Przykład-2: Sprawdź hasło za pomocą skrótu generowanego przez hasło_bcrypt

Utwórz plik PHP z następującym skryptem, który wyświetli formularz dla użytkownika, aby podać hasło, które zostanie sprawdzone przez funkcję hasła_verify () do sprawdzania poprawności, gdy przycisk przesłania zostanie naciśnięty jak poprzedni przykład.

Stała wartość, Hasło_bcrypt, i wartość kosztów została użyta w funkcji hasła_hash () do wygenerowania wartości skrótu konkretnego hasła. Następnie funkcja hasła_verify () używana do sprawdzenia wartości hasła podanej przez użytkownika jest ważna lub nieprawidłowa.



Weryfikacja hasła













// Ustaw wartość hasła
$ hasło = "secretPass";
// Ustaw wartość kosztu
$ options = ["cost" => 15];
// Wygeneruj wartość skrótu hasła i wartości kosztów
$ hash = hasło_hash ($ hasło, hasło_bcrypt, $ opcje);
// Sprawdź, czy wartość hasła jest przesyłana przez użytkownika lub nie
if (isset ($ _ POST ['pass']))

// Przeczytaj hasło przesłane przez użytkownika
$ hasło = $ _POST ['pass'];
// Sprawdź hasło jest prawidłowe lub nieprawidłowe
if (hasło_verify ($ hasło, $ hash))
Hasło echo jest prawidłowe.';;
w przeciwnym razie
Hasło echo jest nieprawidłowe.';;


?>

Wyjście:

Następujące dane wyjściowe pojawi się po wykonaniu powyższego skryptu, jeśli użytkownik podano prawidłowe hasło.

Następujące dane wyjściowe pojawi się po wykonaniu powyższego skryptu, jeśli użytkownik podano nieprawidłowe hasło.

Przykład-3: Sprawdź hasło za pomocą skrótu generowanego przez hasło_argon2i

Utwórz plik PHP z następującym skryptem, który wyświetli formularz dla użytkownika, aby podać hasło, które zostanie sprawdzone przez funkcję hasła_verify () do sprawdzania poprawności, gdy przycisk przesłania zostanie naciśnięty jak poprzedni przykład.

Stała wartość, Hasło_argon2i, i wartość kosztów została użyta w funkcji hasła_hash () do wygenerowania wartości skrótu konkretnego hasła. Wartość hash hasła zostanie wydrukowana na wyjściu. Następnie funkcja hasła_verify () używana do sprawdzenia wartości hasła podanej przez użytkownika jest ważna lub nieprawidłowa.

// Ustaw wartość hasła
$ hasło = "secretPass";
// Wygeneruj wartość skrótu hasła
$ hash = hasło_hash ($ hasło, hasło_argon2i, [„cost” => 15]);
echo „Wartość skrótu:
$ hash ";
?>


Weryfikacja hasła













// Sprawdź, czy wartość hasła jest przesyłana przez użytkownika lub nie
if (isset ($ _ POST ['pass']))

// Przeczytaj hasło przesłane przez użytkownika
$ hasło = $ _POST ['pass'];
// Sprawdź hasło jest prawidłowe lub nieprawidłowe
if (hasło_verify ($ hasło, $ hash))
Hasło echo jest prawidłowe.';;
w przeciwnym razie
Hasło echo jest nieprawidłowe.';;


?>

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu.

Następujące dane wyjściowe pojawi się po wykonaniu powyższego skryptu, jeśli użytkownik podano prawidłowe hasło.

Wniosek

Weryfikacja hasła jest wymagana do uwierzytelnienia użytkownika i jest to niezbędne zadanie dowolnej witryny. Zastosowania funkcji hasła_verify () do weryfikacji haseł na podstawie różnych wartości skrótu pokazano w tym samouczku za pomocą formularza HTML.