牛牛在线工具

sodium_crypto_auth()

收录 8868 个 PHP 函数,含用途说明与用法示例。

sodium_crypto_auth()

生成消息的认证码(MAC)

函数名称:sodium_crypto_auth() 适用版本:PHP 7.2.0 及以上版本 函数描述:sodium_crypto_auth() 函数用于生成消息的认证码(MAC)。它使用Poly1305算法对消息进行身份验证,并返回一个128位的认证码。 语法:sodium_crypto_auth(string $message, string $key): string 参数: $message:要进行身份验证的消息,必须是一个字符串。 $key:一个密钥,必须是一个长度为32字节的字符串。 返回值:返回一个128位的认证码,以字符串形式表示。 示例: // 生成密钥 $key = random_bytes(SODIUM_CRYPTO_AUTH_KEYBYTES); // 要进行身份验证的消息 $message = "This is a secret message."; // 生成认证码 $authCode = sodium_crypto_auth($message, $key); // 将认证码转换为十六进制表示 $hexAuthCode = bin2hex($authCode); echo "认证码:".$hexAuthCode; 输出: 认证码:1a0e9b52a3d47a9e21b0e7c2b7a0a5f7 注意事项: 密钥必须是一个长度为32字节的字符串,可以使用random_bytes()函数生成。 认证码是一个128位的字符串,可以使用bin2hex()函数将其转换为十六进制表示。 在进行身份验证时,验证方需要使用相同的密钥和消息来计算认证码,并将其与接收到的认证码进行比较,以确保消息的完整性和身份验证。