查詢

sodium_crypto_auth_verify()函式—用法及示例

「 驗證訊息的認證標籤是否與原始訊息匹配 」


函式名稱:sodium_crypto_auth_verify()

適用版本:PHP 7.2.0及以上

函式說明:sodium_crypto_auth_verify()函式用於驗證訊息的認證標籤是否與原始訊息匹配。它使用sodium_crypto_auth()函式生成的認證標籤來驗證訊息的完整性和真實性。

用法: bool sodium_crypto_auth_verify(string $mac, string $message, string $key): bool

引數:

  • $mac:要驗證的認證標籤,以字串形式傳遞。
  • $message:原始訊息,以字串形式傳遞。
  • $key:用於生成認證標籤的金鑰,以字串形式傳遞。

返回值:

  • 如果認證標籤與原始訊息匹配,則返回true;否則返回false。

示例:

<?php
$key = sodium_crypto_auth_keygen(); // 生成一個隨機的金鑰

$message = "Hello, world!";
$mac = sodium_crypto_auth($message, $key); // 生成認證標籤

$isValid = sodium_crypto_auth_verify($mac, $message, $key); // 驗證認證標籤是否匹配

if ($isValid) {
    echo "認證標籤有效!";
} else {
    echo "認證標籤無效!";
}
?>

上述示例中,我們首先生成一個隨機的金鑰,然後使用sodium_crypto_auth()函式生成訊息的認證標籤。接下來,我們使用sodium_crypto_auth_verify()函式驗證認證標籤是否與原始訊息匹配。最後,根據驗證結果輸出相應的資訊。

請注意,為了使用sodium_crypto_auth_verify()函式,您的PHP版本必須為7.2.0或更高,並且必須安裝並啟用了Sodium擴充套件。

補充糾錯
熱門PHP函式
分享連結