以下是如何使用 sodium_crypto_auth() 的快速示例;其中您有一条要签名的消息,因此任何可以访问*共享*密钥的人都可以确认消息没有被篡改。
这类似于 sodium_crypto_sign_detached(),但签名者和验证者都能够访问相同的密钥。
<?php
$key = sodium_crypto_auth_keygen();
//--------------------------------------------------
// 第一人,签名
$message = 'Hello';
$signature = sodium_crypto_auth($message, $key);
//--------------------------------------------------
// 第二人,验证
$message_valid = sodium_crypto_auth_verify($signature, $message, $key);
if (!$message_valid) {
exit('消息已被更改。');
}
?>