函式名: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及以上。
熱門工具排行榜