mirror of
https://github.com/sigmasternchen/php-doc-en
synced 2025-03-20 19:08:54 +00:00

This integrates user note 123319. Cf. <https://github.com/php/doc-en/pull/310#issuecomment-756140676>.
251 lines
6.5 KiB
XML
251 lines
6.5 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- $Revision$ -->
|
|
|
|
<refentry xml:id="function.openssl-get-cipher-methods" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
<refnamediv>
|
|
<refname>openssl_get_cipher_methods</refname>
|
|
<refpurpose>Gets available cipher methods</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsect1 role="description">
|
|
&reftitle.description;
|
|
<methodsynopsis>
|
|
<type>array</type><methodname>openssl_get_cipher_methods</methodname>
|
|
<methodparam choice="opt"><type>bool</type><parameter>aliases</parameter><initializer>&false;</initializer></methodparam>
|
|
</methodsynopsis>
|
|
<para>
|
|
Gets a list of available cipher methods.
|
|
</para>
|
|
|
|
</refsect1>
|
|
|
|
<refsect1 role="parameters">
|
|
&reftitle.parameters;
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><parameter>aliases</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
Set to &true; if cipher aliases should be included within the
|
|
returned <type>array</type>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="returnvalues">
|
|
&reftitle.returnvalues;
|
|
<para>
|
|
An <type>array</type> of available cipher methods.
|
|
Note that prior to OpenSSL 1.1.1, the cipher methods have been returned in
|
|
upper case and lower case spelling; as of OpenSSL 1.1.1 only the lower case
|
|
variants are returned.
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="examples">
|
|
&reftitle.examples;
|
|
<para>
|
|
<example>
|
|
<title><function>openssl_get_cipher_methods</function> example</title>
|
|
<para>
|
|
Shows how the available ciphers might look, and also which aliases
|
|
might be available.
|
|
</para>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
$ciphers = openssl_get_cipher_methods();
|
|
$ciphers_and_aliases = openssl_get_cipher_methods(true);
|
|
$cipher_aliases = array_diff($ciphers_and_aliases, $ciphers);
|
|
|
|
//ECB mode should be avoided
|
|
$ciphers = array_filter( $ciphers, function($n) { return stripos($n,"ecb")===FALSE; } );
|
|
|
|
//At least as early as Aug 2016, Openssl declared the following weak: RC2, RC4, DES, 3DES, MD5 based
|
|
$ciphers = array_filter( $ciphers, function($c) { return stripos($c,"des")===FALSE; } );
|
|
$ciphers = array_filter( $ciphers, function($c) { return stripos($c,"rc2")===FALSE; } );
|
|
$ciphers = array_filter( $ciphers, function($c) { return stripos($c,"rc4")===FALSE; } );
|
|
$ciphers = array_filter( $ciphers, function($c) { return stripos($c,"md5")===FALSE; } );
|
|
$cipher_aliases = array_filter($cipher_aliases,function($c) { return stripos($c,"des")===FALSE; } );
|
|
$cipher_aliases = array_filter($cipher_aliases,function($c) { return stripos($c,"rc2")===FALSE; } );
|
|
|
|
print_r($ciphers);
|
|
print_r($cipher_aliases);
|
|
?>
|
|
]]>
|
|
</programlisting>
|
|
&example.outputs.similar;
|
|
<screen>
|
|
<![CDATA[
|
|
Array
|
|
(
|
|
[0] => aes-128-cbc
|
|
[1] => aes-128-cbc-hmac-sha1
|
|
[2] => aes-128-cbc-hmac-sha256
|
|
[3] => aes-128-ccm
|
|
[4] => aes-128-cfb
|
|
[5] => aes-128-cfb1
|
|
[6] => aes-128-cfb8
|
|
[7] => aes-128-ctr
|
|
[9] => aes-128-gcm
|
|
[10] => aes-128-ocb
|
|
[11] => aes-128-ofb
|
|
[12] => aes-128-xts
|
|
[13] => aes-192-cbc
|
|
[14] => aes-192-ccm
|
|
[15] => aes-192-cfb
|
|
[16] => aes-192-cfb1
|
|
[17] => aes-192-cfb8
|
|
[18] => aes-192-ctr
|
|
[20] => aes-192-gcm
|
|
[21] => aes-192-ocb
|
|
[22] => aes-192-ofb
|
|
[23] => aes-256-cbc
|
|
[24] => aes-256-cbc-hmac-sha1
|
|
[25] => aes-256-cbc-hmac-sha256
|
|
[26] => aes-256-ccm
|
|
[27] => aes-256-cfb
|
|
[28] => aes-256-cfb1
|
|
[29] => aes-256-cfb8
|
|
[30] => aes-256-ctr
|
|
[32] => aes-256-gcm
|
|
[33] => aes-256-ocb
|
|
[34] => aes-256-ofb
|
|
[35] => aes-256-xts
|
|
[36] => aria-128-cbc
|
|
[37] => aria-128-ccm
|
|
[38] => aria-128-cfb
|
|
[39] => aria-128-cfb1
|
|
[40] => aria-128-cfb8
|
|
[41] => aria-128-ctr
|
|
[43] => aria-128-gcm
|
|
[44] => aria-128-ofb
|
|
[45] => aria-192-cbc
|
|
[46] => aria-192-ccm
|
|
[47] => aria-192-cfb
|
|
[48] => aria-192-cfb1
|
|
[49] => aria-192-cfb8
|
|
[50] => aria-192-ctr
|
|
[52] => aria-192-gcm
|
|
[53] => aria-192-ofb
|
|
[54] => aria-256-cbc
|
|
[55] => aria-256-ccm
|
|
[56] => aria-256-cfb
|
|
[57] => aria-256-cfb1
|
|
[58] => aria-256-cfb8
|
|
[59] => aria-256-ctr
|
|
[61] => aria-256-gcm
|
|
[62] => aria-256-ofb
|
|
[63] => bf-cbc
|
|
[64] => bf-cfb
|
|
[66] => bf-ofb
|
|
[67] => camellia-128-cbc
|
|
[68] => camellia-128-cfb
|
|
[69] => camellia-128-cfb1
|
|
[70] => camellia-128-cfb8
|
|
[71] => camellia-128-ctr
|
|
[73] => camellia-128-ofb
|
|
[74] => camellia-192-cbc
|
|
[75] => camellia-192-cfb
|
|
[76] => camellia-192-cfb1
|
|
[77] => camellia-192-cfb8
|
|
[78] => camellia-192-ctr
|
|
[80] => camellia-192-ofb
|
|
[81] => camellia-256-cbc
|
|
[82] => camellia-256-cfb
|
|
[83] => camellia-256-cfb1
|
|
[84] => camellia-256-cfb8
|
|
[85] => camellia-256-ctr
|
|
[87] => camellia-256-ofb
|
|
[88] => cast5-cbc
|
|
[89] => cast5-cfb
|
|
[91] => cast5-ofb
|
|
[92] => chacha20
|
|
[93] => chacha20-poly1305
|
|
[111] => id-aes128-CCM
|
|
[112] => id-aes128-GCM
|
|
[113] => id-aes128-wrap
|
|
[114] => id-aes128-wrap-pad
|
|
[115] => id-aes192-CCM
|
|
[116] => id-aes192-GCM
|
|
[117] => id-aes192-wrap
|
|
[118] => id-aes192-wrap-pad
|
|
[119] => id-aes256-CCM
|
|
[120] => id-aes256-GCM
|
|
[121] => id-aes256-wrap
|
|
[122] => id-aes256-wrap-pad
|
|
[124] => idea-cbc
|
|
[125] => idea-cfb
|
|
[127] => idea-ofb
|
|
[137] => seed-cbc
|
|
[138] => seed-cfb
|
|
[140] => seed-ofb
|
|
[141] => sm4-cbc
|
|
[142] => sm4-cfb
|
|
[143] => sm4-ctr
|
|
[145] => sm4-ofb
|
|
)
|
|
Array
|
|
(
|
|
[36] => aes128
|
|
[37] => aes128-wrap
|
|
[38] => aes192
|
|
[39] => aes192-wrap
|
|
[40] => aes256
|
|
[41] => aes256-wrap
|
|
[69] => aria128
|
|
[70] => aria192
|
|
[71] => aria256
|
|
[72] => bf
|
|
[77] => blowfish
|
|
[99] => camellia128
|
|
[100] => camellia192
|
|
[101] => camellia256
|
|
[102] => cast
|
|
[103] => cast-cbc
|
|
[146] => idea
|
|
[164] => seed
|
|
[169] => sm4
|
|
)
|
|
|
|
]]>
|
|
</screen>
|
|
</example>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="seealso">
|
|
&reftitle.seealso;
|
|
<para>
|
|
<simplelist>
|
|
<member><function>openssl_get_md_methods</function></member>
|
|
</simplelist>
|
|
</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
|
|
-->
|