Files
php-doc-ru/reference/rnp/functions/rnp-op-generate-key.xml
2023-07-12 15:55:43 +03:00

180 lines
7.4 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 79bc1248b2295d9c9f0837d1ddcaea9d7c2853a7 Maintainer: sergey Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.rnp-op-generate-key" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>rnp_op_generate_key</refname>
<refpurpose>Генерирует ключ</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>string</type><type>false</type></type><methodname>rnp_op_generate_key</methodname>
<methodparam><type>RnpFFI</type><parameter>ffi</parameter></methodparam>
<methodparam><type>string</type><parameter>userid</parameter></methodparam>
<methodparam><type>string</type><parameter>key_alg</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>sub_alg</parameter></methodparam>
<methodparam choice="opt"><type>array</type><parameter>options</parameter></methodparam>
</methodsynopsis>
<para>
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>ffi</parameter></term>
<listitem>
<para>
&rnp.parameter.ffi-description;
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>userid</parameter></term>
<listitem>
<para>
PGP User ID - текст, предназначенный для представления
имени и адреса электронной почты владельца ключа.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>key_alg</parameter></term>
<listitem>
<para>
Алгоритм первичного ключа (например, 'RSA', 'DSA' и т.д.).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>sub_alg</parameter></term>
<listitem>
<para>
Алгоритм дочернего ключа. Если значение не задано,
то дочерний ключ генерироваться не будет.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>options</parameter></term>
<listitem>
<para>
Ассоциативный массив с опциями.
</para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>Ключ</entry>
<entry>Тип данных</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>"bits"</literal></entry>
<entry>integer</entry>
<entry>Размер первичного ключа в битах. Применяется только для ключей RSA, DSA и El-Gamal.</entry>
</row>
<row>
<entry><literal>"hash"</literal></entry>
<entry>string</entry>
<entry>Хеш-алгоритм, используемый в самоподписи или подписи с привязкой к дочернему ключу.</entry>
</row>
<row>
<entry><literal>"dsa_qbits"</literal></entry>
<entry>integer</entry>
<entry>
Устанавливает размер параметра <literal>q</literal> для DSA-ключа.
Примечание: в зависимости от разрядности ключа будет установлено соответствующее
значение по умолчанию. Однако при необходимости его можно переопределить.
</entry>
</row>
<row>
<entry><literal>"curve"</literal></entry>
<entry>string</entry>
<entry>Установка кривой, используемой для ключа ECC. Примечание: это применимо только для ключей ECDSA, ECDH и SM2.</entry>
</row>
<row>
<entry><literal>"request_password"</literal></entry>
<entry>boolean</entry>
<entry>
Включает запрос пароля через провайдера паролей. Этот пароль будет использоваться
для шифрования ключа. Callback-функция провайдера паролей должна быть задана
заранее вызовом функции <function>rnp_ffi_set_pass_provider</function>.
Примечание: данная настройка будет проигнорирована,
если пароль был задан через с помощью <literal>"password"</literal>.
</entry>
</row>
<row>
<entry><literal>"password"</literal></entry>
<entry>string</entry>
<entry>Устанавливает пароль, используемый для шифрования данных секретного ключа.</entry>
</row>
<row>
<entry><literal>"expiration"</literal></entry>
<entry>integer</entry>
<entry>Устанавливает время истечения срока действия ключей и дочерних ключей в секундах.</entry>
</row>
<row>
<entry><literal>"sub_bits"</literal></entry>
<entry>integer</entry>
<entry>Размер дочернего ключа в битах. Применяется только для ключей RSA, DSA и El-Gamal.</entry>
</row>
<row>
<entry><literal>"sub_hash"</literal></entry>
<entry>string</entry>
<entry>Хеш-алгоритм, используемый в самоподписи дочернего ключа или в подписи с привязкой к дочернему ключу.</entry>
</row>
<row>
<entry><literal>"sub_curve"</literal></entry>
<entry>string</entry>
<entry>Устанавливает кривую, используемую для дочернего ключа ECC. Примечание: это применимо только для ключей ECDSA, ECDH и SM2.</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Отпечаток сгенерированного первичного ключа&return.falseforfailure;.
Этот отпечаток может быть использован в дальнейшем для ссылки на ключ
в операциях подписи и шифрования.
Данные ключа хранятся в контексте памяти FFI и могут быть сохранены
с помощью функции <function>rnp_save_keys</function> или <function>rnp_save_keys_to_path</function>.
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->