(PECL rnp >= 0.1.1)
rnp_ffi_set_pass_provider — Устанавливает callback-функцию поставщика паролей
Устанавливает callback-функцию поставщика пароля. Функция может запрашивать пароль на стандартном входе (если PHP скрипт выполняется в среде командной строки), отображать диалог GUI или предоставлять пароль любым другим возможным способом. Запрашиваемые пароли используются для шифрования или расшифровки секретных ключей или выполнения операций симметричного шифрования/дешифрования.
ffiFFI-объект, который возвращает функция rnp_ffi_create().
password_callbackФункция, которая будет вызываться для каждого запроса пароля. У неё следующая сигнатура:
$key_fp - Цифровой отпечаток, если таковой имеется. Может быть пустым.$pgp_context - Строка, описывающая, почему запрашивается ключ.$password - Ссылка на строку пароля, в которой должен храниться предоставленный пароль.true, если пароль был успешно установлен или false, если возникла ошибка.
Возвращает true в случае успешного выполнения или false, если возникла ошибка.
Пример #1 Пример простой callback-функции
<?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');