openssl_password_verify
OpenSSL の Argon2 実装を用いてパスワードをハッシュと照合する
説明
bool openssl_password_verify(string $algo, string $password, string $hash)
この関数は、PHP が Argon2 をサポートする OpenSSL
(HAVE_OPENSSL_ARGON2)
とともにコンパイルされている場合にのみ使用できます。
パラメータ
-
algo
-
パスワードハッシュアルゴリズム。サポートされている値は
"argon2id" と "argon2i" です。
-
password
-
ユーザーのパスワード。
-
hash
-
openssl_password_hash で作成したハッシュ。
戻り値
パスワードとハッシュがマッチする場合に true、それ以外の場合に false を返します。
エラー / 例外
algo がサポートされている値
("argon2i" または "argon2id")
のいずれでもない場合、ValueError をスローします。
例
例1 openssl_password_verify の例
<?php
$hash = openssl_password_hash('argon2id', 'my-secret-password');
if (openssl_password_verify('argon2id', 'my-secret-password', $hash)) {
echo 'Password matches.';
} else {
echo 'Password does not match.';
}
?>
参考
- openssl_password_hash
- password_verify