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

sodium_crypto_scalarmult_base()函数—用法及示例

「 生成基于给定私钥的公钥 」


函数名:sodium_crypto_scalarmult_base()

适用版本:PHP 7.2.0及以上版本

函数说明:sodium_crypto_scalarmult_base()函数用于生成基于给定私钥的公钥。私钥必须是一个32字节的随机字符串。该函数使用的是Curve25519椭圆曲线加密算法。

语法:sodium_crypto_scalarmult_base(string $private_key) : string

参数:

  • $private_key:必需,一个32字节的随机字符串,作为私钥。

返回值:

  • 返回一个32字节的字符串,表示生成的公钥。

示例:

// 生成一个32字节的私钥
$privateKey = random_bytes(SODIUM_CRYPTO_SCALARMULT_SCALARBYTES);

// 生成基于私钥的公钥
$publicKey = sodium_crypto_scalarmult_base($privateKey);

echo "私钥:" . bin2hex($privateKey) . "\n";
echo "公钥:" . bin2hex($publicKey) . "\n";

输出:

私钥:8f0d8a8d7bfbfd5d3a5b0c3a8c1d2a8e1c0a3d3e0e3d7a9e3c3b9a9c4e7a6d2
公钥:f6e7b6d1a3c5e5f8d0f8c4a8c8d3a8e6f4c9a6a1b7e2b3f7a9c0e5f1a8d5

注意:在使用该函数之前,需要确保安装了libsodium扩展,并且PHP版本在7.2.0及以上。

补充纠错
热门PHP函数
分享链接