rnp_op_generate_key

(PECL rnp >= 0.1.1)

rnp_op_generate_key - Генерує ключ

Опис

rnp_op_generate_key(    RnpFFI $ffi,    string $userid,    string $key_alg,    string $sub_alg = ?,    array $options = ?): string|false

Список параметрів

ffi

Об'єкт FFI, що повертається функцією rnp_ffi_create.

userid

PGP User ID - текст, призначений для надання імені та адреси електронної пошти власника ключа.

key_alg

Алгоритм первинного ключа (наприклад, 'RSA', 'DSA' тощо).

sub_alg

Алгоритм дочірнього ключа. Якщо значення не задано, то дочірній ключ не генеруватися.

options

Асоціативний масив із опціями.

КлючТип данныхОпис
"bits"integerРозмір первинного ключа у бітах. Застосовується тільки для ключів RSA, DSA та El-Gamal.
"hash"stringХеш-алгоритм, що використовується в самопідпис або підпис з прив'язкою до дочірнього ключа.
"dsa_qbits"integerВстановлює розмір параметра q для ключа DSA. Примітка: Залежно від розрядності ключа буде встановлено значення за промовчанням. Однак за потреби його можна перевизначити.
"curve"stringНалаштування кривої, що використовується для ключа ECC. Примітка: це застосовується лише для ключів ECDSA, ECDH та SM2.
"request_password"booleanВключає запит пароля через провайдер паролів. Цей пароль використовуватиметься для шифрування ключа. Callback-функція провайдера паролів має бути задана заздалегідь викликом функції rnp_ffi_set_pass_provider(). . Примітка: Ця настройка буде проігнорована, якщо пароль був заданий через за допомогою "password"
"password"stringВстановлює пароль для шифрування даних секретного ключа.
"expiration"integerВстановлює час закінчення терміну дії ключів та дочірніх ключів за секунди.
"sub_bits"integerРозмір дочірнього ключа у бітах. Застосовується тільки для ключів RSA, DSA та El-Gamal.
"sub_hash"stringХеш-алгоритм, що використовується в підписі дочірнього ключа або в підписі з прив'язкою до дочірнього ключа.
"sub_curve"stringВстановлює криву, яка використовується для дочірнього ключа ECC. Примітка: це застосовується лише для ключів ECDSA, ECDH та SM2.

Значення, що повертаються

Отпечаток сгенерированного первичного ключа или**false** у разі виникнення помилки. Цей відбиток може бути використаний надалі для посилання на ключ в операціях підпису та шифрування. Дані ключа зберігаються в контексті пам'яті FFI та можуть бути збережені за допомогою функції rnp_save_keys() або rnp_save_keys_to_path()