Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
96 changes: 96 additions & 0 deletions reference/openssl/functions/openssl-cipher-iv-length.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: d1e3ea622e5d4f542cd36eca59a9f22aa0142633 Maintainer: lacatoire Status: ready -->
<refentry xml:id="function.openssl-cipher-iv-length" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>openssl_cipher_iv_length</refname>
<refpurpose>Ermittelt die Länge des Initialisierungsvektors einer Verschlüsselungsmethode</refpurpose>
</refnamediv>

<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>int</type><type>false</type></type><methodname>openssl_cipher_iv_length</methodname>
<methodparam><type>string</type><parameter>cipher_algo</parameter></methodparam>
</methodsynopsis>
<para>
Ermittelt die Länge des Initialisierungsvektors (IV) einer
Verschlüsselungsmethode.
</para>
</refsect1>

<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>cipher_algo</parameter></term>
<listitem>
<para>
Die Verschlüsselungsmethode; <function>openssl_get_cipher_methods</function>
liefert eine Liste der möglichen Werte.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>

<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Gibt bei Erfolg die Länge des Initialisierungsvektors zurück, im Fehlerfall
&false;.
</para>
</refsect1>

<refsect1 role="errors">
&reftitle.errors;
<para>
Gibt einen Fehler der Stufe <constant>E_WARNING</constant> aus, wenn die
Verschlüsselungsmethode unbekannt ist.
</para>
</refsect1>

<refsect1 role="examples">
&reftitle.examples;
<example xml:id="openssl-cipher-iv-length.example.basic">
<title>Beispiel für <function>openssl_cipher_iv_length</function></title>
<programlisting role="php">
<![CDATA[
<?php
$method = 'AES-128-CBC';
$ivlen = openssl_cipher_iv_length($method);

echo $ivlen;
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
16
]]>
</screen>
</example>
</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
-->
93 changes: 93 additions & 0 deletions reference/openssl/functions/openssl-cipher-key-length.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: a68a0b2da0e304128cf04016300ebcb31f761385 Maintainer: lacatoire Status: ready -->
<refentry xml:id="function.openssl-cipher-key-length" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>openssl_cipher_key_length</refname>
<refpurpose>Ermittelt die Schlüssellänge einer Verschlüsselungsmethode</refpurpose>
</refnamediv>

<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>int</type><type>false</type></type><methodname>openssl_cipher_key_length</methodname>
<methodparam><type>string</type><parameter>cipher_algo</parameter></methodparam>
</methodsynopsis>
<para>
Ermittelt die Schlüssellänge einer Verschlüsselungsmethode.
</para>
</refsect1>

<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>cipher_algo</parameter></term>
<listitem>
<para>
Die Verschlüsselungsmethode; <function>openssl_get_cipher_methods</function>
liefert eine Liste der möglichen Werte.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>

<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Gibt bei Erfolg die Schlüssellänge zurück. &return.falseforfailure;
</para>
</refsect1>

<refsect1 role="errors">
&reftitle.errors;
<para>
Gibt einen Fehler der Stufe <constant>E_WARNING</constant> aus, wenn die
Verschlüsselungsmethode unbekannt ist.
</para>
</refsect1>

<refsect1 role="examples">
&reftitle.examples;
<example>
<title>Beispiel für <function>openssl_cipher_key_length</function></title>
<programlisting role="php">
<![CDATA[
<?php
$method = 'AES-128-CBC';

var_dump(openssl_cipher_key_length($method));
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
int(16)
]]>
</screen>
</example>
</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
-->
206 changes: 206 additions & 0 deletions reference/openssl/functions/openssl-decrypt.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,206 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: e5ab2937efd9b1d7184993e0fdfa957893f7f827 Maintainer: lacatoire Status: ready -->
<refentry xml:id="function.openssl-decrypt" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>openssl_decrypt</refname>
<refpurpose>Entschlüsselt Daten</refpurpose>
</refnamediv>

<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>string</type><type>false</type></type><methodname>openssl_decrypt</methodname>
<methodparam><type>string</type><parameter>data</parameter></methodparam>
<methodparam><type>string</type><parameter>cipher_algo</parameter></methodparam>
<methodparam><modifier role="attribute">#[\SensitiveParameter]</modifier><type>string</type><parameter>passphrase</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>options</parameter><initializer>0</initializer></methodparam>
<methodparam choice="opt"><type>string</type><parameter>iv</parameter><initializer>""</initializer></methodparam>
<methodparam choice="opt"><type class="union"><type>string</type><type>null</type></type><parameter>tag</parameter><initializer>&null;</initializer></methodparam>
<methodparam choice="opt"><type>string</type><parameter>aad</parameter><initializer>""</initializer></methodparam>
</methodsynopsis>
<para>
Entschlüsselt eine unbearbeitete oder base64-kodierte Zeichenkette mit der
angegebenen Methode und der angegebenen Passphrase.
</para>

</refsect1>

<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Die zu entschlüsselnde verschlüsselte Nachricht.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>cipher_algo</parameter></term>
<listitem>
<para>
Die Verschlüsselungsmethode.
<function>openssl_get_cipher_methods</function> liefert eine Liste der
verfügbaren Verschlüsselungsmethoden.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>passphrase</parameter></term>
<listitem>
<para>
Die Passphrase. Ist die Passphrase kürzer als erwartet, wird sie
stillschweigend mit <literal>NUL</literal>-Zeichen aufgefüllt; ist die
Passphrase länger als erwartet, wird sie stillschweigend abgeschnitten.
</para>
<caution>
<simpara>
Für <parameter>passphrase</parameter> wird keine Funktion zur Ableitung
eines Schlüssels verwendet, wie der Name vielleicht vermuten lässt.
Die einzige Operation, die verwendet wird, ist das Auffüllen mit
<literal>NUL</literal>-Zeichen oder das Abschneiden, wenn die Länge
anders ist als erwartet.
</simpara>
</caution>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>options</parameter></term>
<listitem>
<para>
<parameter>options</parameter> kann einer der Werte
<constant>OPENSSL_RAW_DATA</constant>,
<constant>OPENSSL_ZERO_PADDING</constant>
oder <constant>OPENSSL_DONT_ZERO_PAD_KEY</constant> sein.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>iv</parameter></term>
<listitem>
<para>
Der Initialisierungsvektor (darf nicht &null; sein). Ist der IV kürzer
als erwartet, wird er mit <literal>NUL</literal>-Zeichen aufgefüllt und
eine Warnung ausgegeben; ist die Passphrase länger als erwartet, wird
sie abgeschnitten und eine Warnung ausgegeben.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>tag</parameter></term>
<listitem>
<para>
Das Authentifizierungskennzeichen im AEAD-Verschlüsselungsmodus. Ist es
falsch, schlägt die Authentifizierung fehl und die Funktion gibt
&false; zurück.
</para>
<caution>
<simpara>
Die Länge des Parameters <parameter>tag</parameter> wird von der
Funktion nicht überprüft. Es liegt in der Verantwortung des Aufrufers
sicherzustellen, dass die Länge des Kennzeichens mit der Länge des
Kennzeichens übereinstimmt, das beim Aufruf von
<function>openssl_encrypt</function> zurückgegeben wurde. Andernfalls
kann die Entschlüsselung auch dann erfolgreich sein, wenn das
übergebene Kennzeichen nur dem Anfang des korrekten Kennzeichens
entspricht.
</simpara>
</caution>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>aad</parameter></term>
<listitem>
<para>
Zusätzliche authentifizierte Daten.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>

<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Gibt bei Erfolg die entschlüsselte Zeichenkette zurück,
&return.falseforfailure;.
</para>
</refsect1>

<refsect1 role="errors">
&reftitle.errors;
<para>
Gibt einen Fehler der Stufe <constant>E_WARNING</constant> aus, wenn eine
unbekannte Verschlüsselungsmethode über den Parameter
<parameter>cipher_algo</parameter> übergeben wird.
</para>
<para>
Gibt einen Fehler der Stufe <constant>E_WARNING</constant> aus, wenn eine
leere Zeichenkette über den Parameter <parameter>iv</parameter> übergeben
wird.
</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.1.0</entry>
<entry>
Der Parameter <parameter>tag</parameter> ist nun nullable.
</entry>
</row>
<row>
<entry>7.1.0</entry>
<entry>
Die Parameter <parameter>tag</parameter> und <parameter>aad</parameter>
wurden hinzugefügt.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>

<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>openssl_encrypt</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
-->
Loading
Loading