Генерирует ключ

# rnp_op_generate_key

(PECL rnp >= 0.1.1)

rnp_op_generate_key — Генерирует ключ

### Описание

function 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().

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open