函数名称: rnp_load_keys()
适用版本: >= 1.0.0
函数描述: rnp_load_keys()
函数用于从文件或内存中加载 OpenPGP 密钥。
语法: rnp_load_keys(string $format, mixed $input, bool $public = false): resource
参数:
$format
(字符串): 指定密钥文件的格式,目前支持的格式有 "GPG" 和 "KBX"。$input
(混合类型): 指定密钥的输入源,可以是文件路径或者密钥的内容。$public
(布尔类型,可选): 指定是否加载公钥,默认为false
。
返回值: 一个资源类型的句柄,代表成功加载的密钥。
示例1: 从文件加载私钥
$key_handle = rnp_load_keys('GPG', '/path/to/private.key');
if ($key_handle) {
echo "私钥加载成功!";
// 在此处可以执行其他操作,如签名、解密等
rnp_unload_keys($key_handle); // 释放资源
} else {
echo "私钥加载失败!";
}
示例2: 从内存加载公钥
$public_key = '-----BEGIN PGP PUBLIC KEY BLOCK-----
...
-----END PGP PUBLIC KEY BLOCK-----';
$key_handle = rnp_load_keys('GPG', $public_key, true);
if ($key_handle) {
echo "公钥加载成功!";
// 在此处可以执行其他操作,如验证、加密等
rnp_unload_keys($key_handle); // 释放资源
} else {
echo "公钥加载失败!";
}
注意事项:
- 需要安装 RNP 扩展才能使用此函数。