PHP8 rnp_ffi_set_pass_provider
(PECL rnp >= 0.1.1)
rnp_ffi_set_pass_provider — 设置密码提供程序回调函数
说明
rnp_ffi_set_pass_provider(RnpFFI $ffi, callable $password_callback): bool
设置密码提供程序功能。此函数可以在标准输入时要求输入密码 (如果 PHP 脚本是在命令行环境中执行的),则显示 GUI 对话框或提供 密码。请求的密码用于加密或解密 密钥或执行对称加密/解密操作。
参数
ffi
rnp_ffi_create返回的 FFI 对象。
password_callback
要为每个密码请求调用的函数。它具有以下签名:
password_callback(string $key_fp, string $pgp_context, string &$password): bool
$key_fp
- 密钥指纹(如果有)。可以是空的。$pgp_context
- 描述请求密钥原因的字符串。$password
- 密码字符串引用,提供的密码应存储到其中。
true
if password was successfully set 或者在失败时返回false
.
返回值
Returns true on success 或者在失败时返回 false.
示例
示例 #1 simple callback function example
<?php
function password_callback(string $key_fp, string $pgp_context, string &$password)
{
$password = "password";
return true;
}
$ffi = rnp_ffi_create('GPG', 'GPG');
rnp_ffi_set_pass_provider($ffi, 'password_callback');