English | 简体中文 | 繁體中文
查询

sodium_compare()函数—用法及示例

「 比较两个字符串是否相等,可以防止时间侧信道攻击 」


函数名称:sodium_compare()

适用版本:PHP 7.2.0及以上

函数描述:sodium_compare()函数用于比较两个字符串是否相等,可以防止时间侧信道攻击。

用法:

int sodium_compare(string $string1, string $string2): int

参数:

  • $string1:要比较的第一个字符串。
  • $string2:要比较的第二个字符串。

返回值:

  • 如果两个字符串相等,则返回0。
  • 如果两个字符串不相等,则返回一个非零整数。

示例:

$hash1 = sodium_crypto_generichash('Hello World', '');
$hash2 = sodium_crypto_generichash('hello world', '');

$result = sodium_compare($hash1, $hash2);

if ($result === 0) {
    echo "字符串相等";
} else {
    echo "字符串不相等";
}

以上示例中,我们使用sodium_crypto_generichash()函数生成两个不同的哈希值,然后使用sodium_compare()函数比较这两个哈希值。如果两个哈希值相等,将输出"字符串相等";否则,将输出"字符串不相等"。

注意:为了正确使用sodium_compare()函数,确保在PHP安装时已启用libsodium扩展。

补充纠错
上一个函数: sodium_base642bin()函数
下一个函数: sodium_add()函数
热门PHP函数
分享链接