PHP Conference Japan 2024

rnp_op_generate_key

(PECL rnp >= 0.1.1)

rnp_op_generate_key產生金鑰

說明

rnp_op_generate_key(
    RnpFFI $ffi,
    字串 $userid,
    字串 $key_alg,
    字串 $sub_alg = ?,
    陣列 $options = ?
): 字串|false

參數

ffi

由 rnp_ffi_create 回傳的 FFI 物件。

userid

PGP 使用者 ID - 代表金鑰持有者姓名和電子郵件地址的文字。

key_alg

主要金鑰演算法(例如 'RSA'、'DSA' 等)。

sub_alg

子金鑰演算法。如果未設定,則不會產生子金鑰。

options

包含選項的關聯式陣列。

鍵值 資料類型 說明
"bits" 整數 主要金鑰大小,以位元為單位。僅適用於 RSA、DSA 和 El-Gamal 金鑰。
"hash" 字串 在自簽章或子金鑰綁定簽章中使用的雜湊演算法。
"dsa_qbits" 整數 設定 DSA 金鑰的 q 參數大小。注意:將根據金鑰位元設定適當的預設值。但是,如果需要,您可以覆寫它。
"curve" 字串 設定 ECC 金鑰使用的曲線。注意:這僅適用於 ECDSA、ECDH 和 SM2 金鑰。
"request_password" 布林值 啟用透過密碼提供器請求密碼。此密碼將用於金鑰加密。密碼提供器回呼函式應事先透過呼叫 rnp_ffi_set_pass_provider() 設定。注意:如果已透過 "password" 設定密碼,則會忽略此設定。
"password" 字串 設定用於加密私密金鑰資料的密碼。
"expiration" 整數 設定金鑰和子金鑰的到期時間,以秒為單位。
"sub_bits" 整數 子金鑰大小,以位元為單位。僅適用於 RSA、DSA 和 El-Gamal 金鑰。
"sub_hash" 字串 在子金鑰自簽章或子金鑰綁定簽章中使用的雜湊演算法。
"sub_curve" 字串 設定 ECC 子金鑰使用的曲線。注意:這僅適用於 ECDSA、ECDH 和 SM2 金鑰。

回傳值

產生的主要金鑰的指紋,或失敗時回傳 false。此指紋之後可用於在簽章和加密操作中參考金鑰。金鑰資料儲存在 FFI 記憶體上下文中,可以使用 rnp_save_keys()rnp_save_keys_to_path() 儲存。

新增註解

使用者貢獻的註解

此頁面沒有使用者貢獻的註解。
To Top