1
0
mirror of https://github.com/php/doc-ru.git synced 2026-03-23 23:32:16 +01:00

Обновление до английской версии

This commit is contained in:
Sergey Panteleev
2026-01-28 13:12:38 +03:00
parent 2161551b23
commit 0738643cc7
9 changed files with 641 additions and 46 deletions

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 434366e9284206b3b073a49bddf7c42e85427aa0 Maintainer: aur Status: ready -->
<!-- EN-Revision: 3b06ef4bb06db8cf2cd8ea8470287f7f43ef9e71 Maintainer: aur Status: ready -->
<!-- Reviewed: no -->
<appendix xml:id="openssl.constants" xmlns="http://docbook.org/ns/docbook">
&reftitle.constants;
@@ -14,6 +14,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -24,6 +25,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -34,6 +36,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -44,6 +47,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -54,6 +58,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -64,6 +69,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -74,11 +80,13 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
</variablelist>
</section>
<section xml:id="openssl.padding">
<title>Флаги заполнения для ассиметричного шифрования</title>
<variablelist>
@@ -89,6 +97,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -99,6 +108,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -109,6 +119,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -119,11 +130,13 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
</variablelist>
</section>
<section xml:id="openssl.key-types">
<title>Типы ключей</title>
<variablelist>
@@ -134,6 +147,7 @@
</term>
<listitem>
<simpara>
RSA key type.
</simpara>
</listitem>
</varlistentry>
@@ -144,6 +158,7 @@
</term>
<listitem>
<simpara>
DSA key type.
</simpara>
</listitem>
</varlistentry>
@@ -154,6 +169,7 @@
</term>
<listitem>
<simpara>
DH (Diffie-Hellman) key type.
</simpara>
</listitem>
</varlistentry>
@@ -164,17 +180,66 @@
</term>
<listitem>
<simpara>
Константа доступна, только если PHP скомпилирован с OpenSSL 0.9.8+.
Тип ключа эллиптической кривой.
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.openssl-keytype-x25519">
<term>
<constant>OPENSSL_KEYTYPE_X25519</constant>
(<type>int</type>)
</term>
<listitem>
<simpara>
Тип ключа кривой X25519.
Константа доступна только в том случае, если PHP скомпилирован с OpenSSL 3.0+.
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.openssl-keytype-ed25519">
<term>
<constant>OPENSSL_KEYTYPE_ED25519</constant>
(<type>int</type>)
</term>
<listitem>
<simpara>
Тип ключа кривой Ed25519.
Константа доступна только в том случае, если PHP скомпилирован с OpenSSL 3.0+.
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.openssl-keytype-x448">
<term>
<constant>OPENSSL_KEYTYPE_X448</constant>
(<type>int</type>)
</term>
<listitem>
<simpara>
Тип ключа кривой X448.
Константа доступна только в том случае, если PHP скомпилирован с OpenSSL 3.0+.
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.openssl-keytype-ed448">
<term>
<constant>OPENSSL_KEYTYPE_ED448</constant>
(<type>int</type>)
</term>
<listitem>
<simpara>
Тип ключа кривой Ed448.
Константа доступна только в том случае, если PHP скомпилирован с OpenSSL 3.0+.
</simpara>
</listitem>
</varlistentry>
</variablelist>
</section>
<section xml:id="openssl.pkcs7.flags">
<title>Константы-флаги структур <acronym>PKCS7</acronym></title>
<para>
Функции для работы с S/MIME-сообщениями принимают флаги, которые определяют как битовое поле.
Поле битов включает одно или набор следующих значений:
The S/MIME functions make use of flags which are specified using a
bitfield which can include one or more of the following values:
<table>
<title>Константы <acronym>PKCS7</acronym></title>
<tgroup cols="2">
@@ -307,6 +372,7 @@
</table>
</para>
</section>
<section xml:id="openssl.cms.flags">
<title>Константы-флаги стуктур <acronym>CMS</acronym></title>
<para>
@@ -432,6 +498,7 @@
</table>
</para>
</section>
<section xml:id="openssl.signature-algos">
<title>Алгоритмы подписи</title>
<variablelist>
@@ -442,6 +509,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -464,6 +532,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -474,6 +543,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -484,6 +554,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -494,6 +565,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -504,6 +576,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -514,6 +587,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -524,6 +598,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -542,14 +617,16 @@
</listitem>
</varlistentry>
</variablelist>
</section>
<section xml:id="openssl.ciphers">
<title>Алгоритмы шифрования</title>
<variablelist>
<varlistentry xml:id="constant.openssl-default-stream-ciphers">
<term>
<constant>OPENSSL_DEFAULT_STREAM_CIPHERS</constant>
(<type>string</type>)
(<type>string</type>)
</term>
<listitem>
<simpara>
@@ -564,6 +641,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -574,6 +652,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -584,6 +663,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -594,6 +674,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -604,6 +685,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -616,6 +698,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -626,6 +709,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -636,11 +720,13 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
</variablelist>
</section>
<section xml:id="openssl.constversion">
<title>Константы версий</title>
<variablelist>
@@ -651,6 +737,7 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
@@ -661,18 +748,20 @@
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
</variablelist>
</section>
<section xml:id="openssl.constsni">
<title>Константа SNI (Server Name Indication)</title>
<variablelist>
<varlistentry xml:id="constant.openssl-tlsext-server-name">
<term>
<constant>OPENSSL_TLSEXT_SERVER_NAME</constant>
(<type>string</type>)
(<type>int</type>)
</term>
<listitem>
<simpara>
@@ -688,13 +777,14 @@
</para>
</note>
</section>
<section xml:id="openssl.constants.other">
<title>Другие константы</title>
<variablelist>
<varlistentry xml:id="constant.openssl-raw-data">
<term>
<constant>OPENSSL_RAW_DATA</constant>
(<type>bool</type>)
(<type>int</type>)
</term>
<listitem>
<simpara>
@@ -720,7 +810,7 @@
<varlistentry xml:id="constant.openssl-zero-padding">
<term>
<constant>OPENSSL_ZERO_PADDING</constant>
(<type>bool</type>)
(<type>int</type>)
</term>
<listitem>
<simpara>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 96263b14054f0f102fcc653688ff3ed99f9df858 Maintainer: sergey Status: ready -->
<!-- EN-Revision: aa120f36c5762e99f9ee121d8caf910e0a67121e Maintainer: sergey Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.openssl-cms-encrypt" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
@@ -17,7 +17,7 @@
<methodparam><type class="union"><type>array</type><type>null</type></type><parameter>headers</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>flags</parameter><initializer>0</initializer></methodparam>
<methodparam choice="opt"><type>int</type><parameter>encoding</parameter><initializer><constant>OPENSSL_ENCODING_SMIME</constant></initializer></methodparam>
<methodparam choice="opt"><type>int</type><parameter>cipher_algo</parameter><initializer><constant>OPENSSL_CIPHER_AES_128_CBC</constant></initializer></methodparam>
<methodparam choice="opt"><type class="union"><type>string</type><type>int</type></type><parameter>cipher_algo</parameter><initializer><constant>OPENSSL_CIPHER_AES_128_CBC</constant></initializer></methodparam>
</methodsynopsis>
<para>
Шифрует содержимое для одного или нескольких получателей на основе переданных
@@ -106,6 +106,14 @@
</row>
</thead>
<tbody>
<row>
<entry>8.5.0</entry>
<entry>
Тип параметра <parameter>cipher_algo</parameter> теперь является целым числом (<type>int</type>)
или строкой (<type>string</type>).
Ранее он был целым числом (<type>int</type>).
</entry>
</row>
<row>
<entry>8.1.0</entry>
<entry>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: b6d0da041ac2b5eee3820bf2c2062872f4459dfe Maintainer: rjhdby Status: ready -->
<!-- EN-Revision: f0d11929d41082d71dcf8338a18e04412c656fa0 Maintainer: rjhdby Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.openssl-csr-new" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
@@ -33,6 +33,10 @@
<para>
Уникальное имя (Distinguished Name) или поля субъекта для
сертификата.
Параметр <parameter>distinguished_names</parameter> — это ассоциативный массив,
в котором ключи представляют имена атрибутов уникальных имён,
а значения могут быть либо строками (для одного значения),
либо массивами (если необходимо установить несколько значений).
</para>
</listitem>
</varlistentry>
@@ -154,10 +158,9 @@
<listitem>
<para>
Параметр <parameter>extra_attributes</parameter> используется для указания дополнительных
опций для <acronym>CSR</acronym>. И <parameter>distinguished_names</parameter>, и
<parameter>extra_attributes</parameter> являются ассоциативными массивами, ключи
которых преобразуются в OI-ы и применяются к соответствующим частям
запроса.
опций для <acronym>CSR</acronym>.
Это ассоциативные массивы, в которых ключи преобразуются в OID
и применяются в качестве атрибутов <acronym>CSR</acronym>.
</para>
</listitem>
</varlistentry>
@@ -169,7 +172,7 @@
&reftitle.returnvalues;
<para>
Функция возвращает <acronym>CSR</acronym> в случае успешного выполнения,
&true;, в случае успешного создания CSR, но при возникновении ошибки подписания&return.falseforfailure;.
&true;, в случае успешного создания <acronym>CSR</acronym>, но при возникновении ошибки подписания&return.falseforfailure;.
</para>
</refsect1>
@@ -184,6 +187,20 @@
</row>
</thead>
<tbody>
<row>
<entry>8.4.0</entry>
<entry>
Ассоциативный массив <parameter>distinguished_names</parameter> теперь поддерживает
массивы в качестве значений, что позволяет указывать несколько значений для одного атрибута.
</entry>
</row>
<row>
<entry>8.4.0</entry>
<entry>
Параметр <parameter>extra_attributes</parameter> теперь правильно устанавливает атрибуты CSR,
а не изменяет уникальное имя субъекта, как это было ранее.
</entry>
</row>
<row>
<entry>8.0.0</entry>
<entry>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 5bc68add3da3cd18c40f851e944b15095d3a26aa Maintainer: rjhdby Status: ready -->
<!-- EN-Revision: 6338117af97ec5a8d5d8e1b1ba632918f8147e2e Maintainer: rjhdby Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.openssl-csr-sign" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
@@ -87,6 +87,17 @@
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>serial_hex</parameter></term>
<listitem>
<para>
Необязательная шестнадцатеричная строка, представляющая серийный номер выданного сертификата.
Если задана, она приоритетнее значения параметра <parameter>serial</parameter>.
Если не указана или задана как &null;, вместо неё используется
значение параметра <parameter>serial</parameter>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
@@ -110,6 +121,12 @@
</row>
</thead>
<tbody>
<row>
<entry>8.4.0</entry>
<entry>
Добавлен параметр <parameter>serial_hex</parameter>.
</entry>
</row>
<row>
<entry>8.0.0</entry>
<entry>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 7fd8e591b8b5a35eda6a0fa6cdecd2a83b195920 Maintainer: sergey Status: ready -->
<!-- EN-Revision: af71bd1bd3bb0604c7bb3d2ff12019480c842843 Maintainer: sergey Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.openssl-pkey-derive" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
@@ -52,7 +52,7 @@
</para>
<caution>
<simpara>
Этот параметр не следует использовать, так как он работает не так, как ожидается.
Параметр устарел и его не следует использовать, так как он работает не так, как ожидается.
Он никогда не возвращает секрет, длина которого превышает размер первого секрета.
Если желаемая длина меньше размера первого секрета, он усекает длину только для ключей ECDH,
но не для ключей DH.
@@ -70,6 +70,28 @@
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.5.0</entry>
<entry>
Параметр <parameter>key_length</parameter> устарел.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 0e80601cabf499c7db372149916b5cb3e2740f1b Maintainer: rjhdby Status: ready -->
<!-- EN-Revision: 3b06ef4bb06db8cf2cd8ea8470287f7f43ef9e71 Maintainer: rjhdby Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.openssl-pkey-get-details" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
@@ -44,7 +44,12 @@
<constant>OPENSSL_KEYTYPE_RSA</constant>,
<constant>OPENSSL_KEYTYPE_DSA</constant>,
<constant>OPENSSL_KEYTYPE_DH</constant>,
<constant>OPENSSL_KEYTYPE_EC</constant> или -1, если неизвестно).
<constant>OPENSSL_KEYTYPE_EC</constant>,
<constant>OPENSSL_KEYTYPE_X25519</constant>,
<constant>OPENSSL_KEYTYPE_ED25519</constant>,
<constant>OPENSSL_KEYTYPE_X448</constant>,
<constant>OPENSSL_KEYTYPE_ED448</constant>
или <literal>-1</literal>, если неизвестно).
</para>
<para>
В зависимости от типа используемого ключа, могут быть возвращены дополнительные
@@ -173,7 +178,16 @@
</listitem>
<listitem>
<simpara>
<constant>OPENSSL_KEYTYPE_EC</constant> возвращается элемент с индексом <literal>"ec"</literal>, содержащий данные ключа.
<constant>OPENSSL_KEYTYPE_X25519</constant>,
<constant>OPENSSL_KEYTYPE_ED25519</constant>,
<constant>OPENSSL_KEYTYPE_X448</constant>,
или <constant>OPENSSL_KEYTYPE_ED448</constant>
дополнительный ключ массива с именем
<literal>"x25519"</literal>,
<literal>"ed25519"</literal>,
<literal>"x448"</literal>
или <literal>"ed448"</literal> соответственно,
возвращается, содержащий данные ключа.
</simpara>
<informaltable>
<tgroup cols="2">
@@ -185,24 +199,12 @@
</thead>
<tbody>
<row>
<entry><literal>"curve_name"</literal></entry>
<entry>Название кривой, смотри <function>openssl_get_curve_names</function></entry>
<entry><literal>"priv_key"</literal></entry>
<entry>закрытый ключ</entry>
</row>
<row>
<entry><literal>"curve_oid"</literal></entry>
<entry>Идентификатор объекта ASN1 (OID) для кривой EC.</entry>
</row>
<row>
<entry><literal>"x"</literal></entry>
<entry>x координата (открытая)</entry>
</row>
<row>
<entry><literal>"y"</literal></entry>
<entry>y координата (открытая)</entry>
</row>
<row>
<entry><literal>"d"</literal></entry>
<entry>секретный ключ</entry>
<entry><literal>"pub_key"</literal></entry>
<entry>открытый ключ</entry>
</row>
</tbody>
</tgroup>
@@ -222,6 +224,14 @@
</row>
</thead>
<tbody>
<row>
<entry>8.4.0</entry>
<entry>
Добавлена поддержка ключей на основе Curve25519 и Curve448.
В частности, были добавлены поля <literal>x25519</literal>,
<literal>ed25519</literal>,<literal>x448</literal> и <literal>ed448</literal>.
</entry>
</row>
<row>
<entry>8.0.0</entry>
<entry>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 2e08eac2b22e4cfa97635d5d38b0984b5016a2f3 Maintainer: rjhdby Status: ready -->
<!-- EN-Revision: 3b06ef4bb06db8cf2cd8ea8470287f7f43ef9e71 Maintainer: rjhdby Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.openssl-pkey-new" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
@@ -28,10 +28,345 @@
<term><parameter>options</parameter></term>
<listitem>
<para>
Через опцию <parameter>options</parameter> выполняют точную настройку
параметров генерации ключа генерации ключа, например указывают число битов.
Подробнее о параметре <parameter>options</parameter>
рассказывает описание функции <function>openssl_csr_new</function>.
Можно точно настроить генерацию ключей (например, указав количество бит или параметров)
с помощью параметра <parameter>options</parameter>.
Параметры могут быть либо специфическими для алгоритма, используемыми для генерации ключей,
либо общими параметрами, используемыми также при генерации <acronym>CSR</acronym>,
если не указано иное.
Посмотрите документацию функции <function>openssl_csr_new</function> для получения дополнительной
информации о том, как использовать параметр <parameter>options</parameter> для <acronym>CSR</acronym>.
Среди этих опций для генерации ключей используются только <literal>private_key_bits</literal>, <literal>private_key_type</literal>,
<literal>curve_name</literal> и <literal>config</literal>.
Опции, специфичные для алгоритма, используются,
если ассоциативный массив содержит один из специфических ключей.
<itemizedlist>
<listitem>
<simpara>
Ключ <literal>"rsa"</literal> для настройки параметров RSA.
</simpara>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>Опции</entry>
<entry>Тип</entry>
<entry>Формат</entry>
<entry>Обязательность</entry>
<entry>Описание</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>"n"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>да</entry>
<entry>modulus</entry>
</row>
<row>
<entry><literal>"e"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>public exponent</entry>
</row>
<row>
<entry><literal>"d"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>да</entry>
<entry>private exponent</entry>
</row>
<row>
<entry><literal>"p"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>prime 1</entry>
</row>
<row>
<entry><literal>"q"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>prime 2</entry>
</row>
<row>
<entry><literal>"dmp1"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>exponent1, d mod (p-1)</entry>
</row>
<row>
<entry><literal>"dmq1"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>exponent2, d mod (q-1)</entry>
</row>
<row>
<entry><literal>"iqmp"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>coefficient, (inverse of q) mod p</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</listitem>
<listitem>
<simpara>
Ключ <literal>"dsa"</literal> для настройки параметров DSA.
</simpara>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>Опции</entry>
<entry>Тип</entry>
<entry>Формат</entry>
<entry>Обязательность</entry>
<entry>Описание</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>"p"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>prime number (public)</entry>
</row>
<row>
<entry><literal>"q"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>160-bit subprime, q | p-1 (public)</entry>
</row>
<row>
<entry><literal>"g"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>generator of subgroup (public)</entry>
</row>
<row>
<entry><literal>"priv_key"</literal></entry>
<entry><type>string</type></entry>
<entry>Ключ PEM</entry>
<entry>нет</entry>
<entry>private key x</entry>
</row>
<row>
<entry><literal>"pub_key"</literal></entry>
<entry><type>string</type></entry>
<entry>Ключ PEM</entry>
<entry>нет</entry>
<entry>public key y = g^x</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</listitem>
<listitem>
<simpara>
Ключ <literal>"dh"</literal> для настройки параметров DH (DiffieHellman key exchange).
</simpara>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>Опции</entry>
<entry>&Type;</entry>
<entry>Формат</entry>
<entry>Обязательность</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>"p"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>prime number (shared)</entry>
</row>
<row>
<entry><literal>"g"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>generator of Z_p (shared)</entry>
</row>
<row>
<entry><literal>"priv_key"</literal></entry>
<entry><type>string</type></entry>
<entry>Ключ PEM</entry>
<entry>нет</entry>
<entry>private DH value x</entry>
</row>
<row>
<entry><literal>"pub_key"</literal></entry>
<entry><type>string</type></entry>
<entry>Ключ PEM</entry>
<entry>нет</entry>
<entry>public DH value g^x</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</listitem>
<listitem>
<simpara>
Ключ <literal>"ec"</literal> для настройки параметров Elliptic curve.
</simpara>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>Опции</entry>
<entry>&Type;</entry>
<entry>Формат</entry>
<entry>Обязательность</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>"curve_name"</literal></entry>
<entry><type>string</type></entry>
<entry>name</entry>
<entry>нет</entry>
<entry>name of curve, see <function>openssl_get_curve_names</function></entry>
</row>
<row>
<entry><literal>"p"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>prime of the field for curve over Fp</entry>
</row>
<row>
<entry><literal>"a"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>coofecient a of the curve for Fp: y^2 mod p = x^3 + ax + b mod p</entry>
</row>
<row>
<entry><literal>"b"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>coofecient b of the curve for Fp: y^2 mod p = x^3 + ax + b mod p</entry>
</row>
<row>
<entry><literal>"seed"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>optional random number seed used to generate coefficient b</entry>
</row>
<row>
<entry><literal>"generator"</literal></entry>
<entry><type>string</type></entry>
<entry>binary encoded point</entry>
<entry>нет</entry>
<entry>curve generator point</entry>
</row>
<row>
<entry><literal>"g_x"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>curver generator point x coordinat</entry>
</row>
<row>
<entry><literal>"g_y"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>curver generator point y coordinat</entry>
</row>
<row>
<entry><literal>"cofactor"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>curve cofactor</entry>
</row>
<row>
<entry><literal>"order"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>curve order</entry>
</row>
<row>
<entry><literal>"x"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>x coordinate (public)</entry>
</row>
<row>
<entry><literal>"y"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>y coordinate (public)</entry>
</row>
<row>
<entry><literal>"d"</literal></entry>
<entry><type>string</type></entry>
<entry>двоичное число</entry>
<entry>нет</entry>
<entry>private key</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</listitem>
<listitem>
<simpara>
Ключи <literal>"x25519"</literal>, <literal>"x448"</literal>,
<literal>"ed25519"</literal>, <literal>"ed448"</literal>
для настройки параметров Curve25519 и Curve448.
</simpara>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>Опции</entry>
<entry>&Type;</entry>
<entry>Формат</entry>
<entry>Обязательность</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>"priv_key"</literal></entry>
<entry><type>string</type></entry>
<entry>Ключ PEM</entry>
<entry>нет</entry>
<entry>Закрытый ключ</entry>
</row>
<row>
<entry><literal>"pub_key"</literal></entry>
<entry><type>string</type></entry>
<entry>Ключ PEM</entry>
<entry>нет</entry>
<entry>Открытый ключ</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</listitem>
</itemizedlist>
</para>
</listitem>
</varlistentry>
@@ -58,6 +393,24 @@
</row>
</thead>
<tbody>
<row>
<entry>8.4.0</entry>
<entry>
Добавлена поддержка ключей на основе Curve25519 и Curve448 с добавлением полей
<literal>x25519</literal>, <literal>ed25519</literal>, <literal>x448</literal>
и <literal>ed448</literal>.
</entry>
</row>
<row>
<entry>8.3.0</entry>
<entry>
Добавлена поддержка создания ключей EC с настраиваемыми параметрами EC.
В частности, с введением опций EC:
<literal>p</literal>, <literal>a</literal>, <literal>b</literal>, <literal>seed</literal>,
<literal>generator</literal>, <literal>g_x</literal>, <literal>g_y</literal>,
<literal>cofactor</literal> и <literal>order</literal>.
</entry>
</row>
<row>
<entry>8.0.0</entry>
<entry>
@@ -128,6 +481,54 @@ object(OpenSSLAsymmetricKey)#2 (0) {
]]>
</screen>
</example>
<example xml:id="function.openssl-pkey-new.example.rsa-key">
<title>Создание ключа RSA из параметров</title>
<programlisting role="php">
<![CDATA[
<?php
$nhex = "BBF82F090682CE9C2338AC2B9DA871F7368D07EED41043A440D6B6F07454F51F" .
"B8DFBAAF035C02AB61EA48CEEB6FCD4876ED520D60E1EC4619719D8A5B8B807F" .
"AFB8E0A3DFC737723EE6B4B7D93A2584EE6A649D060953748834B2454598394E" .
"E0AAB12D7B61A51F527A9A41F6C1687FE2537298CA2A8F5946F8E5FD091DBDCB";
$ehex = "11";
$dhex = "A5DAFC5341FAF289C4B988DB30C1CDF83F31251E0668B42784813801579641B2" .
"9410B3C7998D6BC465745E5C392669D6870DA2C082A939E37FDCB82EC93EDAC9" .
"7FF3AD5950ACCFBC111C76F1A9529444E56AAF68C56C092CD38DC3BEF5D20A93" .
"9926ED4F74A13EDDFBE1A1CECC4894AF9428C2B7B8883FE4463A4BC85B1CB3C1";
$phex = "EECFAE81B1B9B3C908810B10A1B5600199EB9F44AEF4FDA493B81A9E3D84F632" .
"124EF0236E5D1E3B7E28FAE7AA040A2D5B252176459D1F397541BA2A58FB6599";
$qhex = "C97FB1F027F453F6341233EAAAD1D9353F6C42D08866B1D05A0F2035028B9D86" .
"9840B41666B42E92EA0DA3B43204B5CFCE3352524D0416A5A441E700AF461503";
$dphex = "11";
$dqhex = "11";
$qinvhex = "b06c4fdabb6301198d265bdbae9423b380f271f73453885093077fcd39e2119f" .
"c98632154f5883b167a967bf402b4e9e2e0f9656e698ea3666edfb25798039f7";
$rsa= openssl_pkey_new([
'rsa' => [
'n' => hex2bin($nhex),
'e' => hex2bin($ehex),
'd' => hex2bin($dhex),
'p' => hex2bin($phex),
'q' => hex2bin($qhex),
'dmp1' => hex2bin($dphex),
'dmq1' => hex2bin($dqhex),
'iqmp' => hex2bin($qinvhex),
],
]);
$details = openssl_pkey_get_details($rsa);
var_dump($details);
?>
]]>
</programlisting>
</example>
</refsect1>
</refentry>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: d1e3ea622e5d4f542cd36eca59a9f22aa0142633 Maintainer: rjhdby Status: ready -->
<!-- EN-Revision: af4e920c7232115ba0fe800b280eefbbed078597 Maintainer: rjhdby Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.openssl-x509-parse" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
@@ -15,7 +15,7 @@
<methodparam choice="opt"><type>bool</type><parameter>short_names</parameter><initializer>&true;</initializer></methodparam>
</methodsynopsis>
<para>
Функция <function>openssl_x509_parse</function> возвращает информацию сертификате
Функция <function>openssl_x509_parse</function> возвращает информацию о сертификате
с идентификатором <parameter>certificate</parameter>, включая такие поля, как
имя субъекта, имя издателя, назначение, даты начала и окончания действия и т. д.
</para>
@@ -67,6 +67,13 @@
</row>
</thead>
<tbody>
<row>
<entry>8.4.0</entry>
<entry>
Разбор сертификата без секунд в UTCTime больше не допускается ни для одной версии OpenSSL.
Это уже было запрещено в OpenSSL 3.3+.
</entry>
</row>
<row>
<entry>8.0.0</entry>
<entry>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: eec6a4a36bf452bf271f116e7b6b9bb09d1181c3 Maintainer: rjhdby Status: ready -->
<!-- EN-Revision: 244c788631898cbbbeae7b291df2ca57fb935b6a Maintainer: rjhdby Status: ready -->
<!-- Reviewed: no -->
<section xml:id="openssl.configuration" xmlns="http://docbook.org/ns/docbook">
&reftitle.runtime;
@@ -29,6 +29,12 @@
<entry><constant>INI_PERDIR</constant></entry>
<entry></entry>
</row>
<row>
<entry>openssl.libctx</entry>
<entry>"custom"</entry>
<entry><constant>INI_PERDIR</constant></entry>
<entry></entry>
</row>
</tbody>
</tgroup>
</table>
@@ -65,6 +71,23 @@
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ini.openssl.libctx">
<term>
<parameter>openssl.libctx</parameter>
<type>string</type>
</term>
<listitem>
<simpara>
Указывает тип контекста библиотеки OpenSSL, который будет использоваться.
Значение по умолчанию, <literal>custom</literal>, создаёт отдельный контекст
библиотеки для каждого рабочего процесса или потока.
Улучшает изоляцию от других библиотек, использующих OpenSSL,
а в сборках ZTS увеличивает разделение между потоками.
Также можно использовать значение <literal>default</literal>,
которое заставляет PHP использовать глобальный контекст библиотеки OpenSSL по умолчанию.
</simpara>
</listitem>
</varlistentry>
</variablelist>
</para>