PHP Conference Nagoya 2025

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

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top