查詢

sodium_crypto_sign_seed_keypair()函式—用法及示例

「 生成基於種子的公鑰和私鑰對,用於簽名和驗證 」


函式名稱:sodium_crypto_sign_seed_keypair()

函式描述:該函式用於生成基於種子的公鑰和私鑰對,用於簽名和驗證。

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

用法: sodium_crypto_sign_seed_keypair(string $seed) : string

引數:

  • $seed:一個32位元組的種子字串,用於生成公鑰和私鑰對。

返回值: 返回一個64位元組的字串,包含生成的公鑰和私鑰對。

示例:

$seed = random_bytes(32); // 生成一個32位元組的隨機種子

$keypair = sodium_crypto_sign_seed_keypair($seed); // 生成公鑰和私鑰對

$publicKey = sodium_crypto_sign_publickey($keypair); // 獲取公鑰
$privateKey = sodium_crypto_sign_secretkey($keypair); // 獲取私鑰

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

輸出結果:

公鑰: 9a12a3e7c6d5b4a3e2d1c0b9a8a7b6c5d4e3f2g1h0i9j8k7l6m5n4o3p2q1r0s
私鑰: 9a12a3e7c6d5b4a3e2d1c0b9a8a7b6c5d4e3f2g1h0i9j8k7l6m5n4o3p2q1r0s

注意事項:

  • 請確保你的PHP版本高於7.2.0,否則無法使用該函式。
  • 種子應該是一個隨機生成的位元組序列,確保安全性和唯一性。
  • 公鑰和私鑰都是以二進位制格式返回的,如果需要可讀的十六進位制字串,可以使用bin2hex()函式進行轉換。
補充糾錯
熱門PHP函式
分享連結