mirror of
https://github.com/php/doc-de.git
synced 2026-03-24 07:12:15 +01:00
108 lines
3.9 KiB
XML
Executable File
108 lines
3.9 KiB
XML
Executable File
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: 0904e1f4db189dfd2873a126bf72fe34fa9c50f8 Maintainer: nikic Status: ready -->
|
|
<book xml:id="book.hash" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
<?phpdoc extension-membership="core" ?>
|
|
<title>HASH Message Digest Framework</title>
|
|
<titleabbrev>Hash</titleabbrev>
|
|
|
|
<!-- {{{ preface -->
|
|
<preface xml:id="intro.hash">
|
|
&reftitle.intro;
|
|
<para>
|
|
Diese Erweiterung bietet Funktionen für die direkte oder inkrementelle
|
|
Verarbeitung von Nachrichten beliebiger Länge unter Verwendung
|
|
verschiedener Hash-Algorithmen. Dazu gehören auch die Erzeugung von
|
|
<acronym>HMAC</acronym>-Werten und Schlüsselableitungen einschließlich
|
|
<acronym>HKDF</acronym> und <acronym>PBKDF2</acronym>.
|
|
</para>
|
|
<para>
|
|
Es gibt im Wesentlichen drei Kategorien von Hash-Algorithmen. Siehe
|
|
<function>hash_algos</function> für eine vollständige Liste.
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<simpara>
|
|
Prüfsummenalgorithmen (&zb; <literal>"crc32b"</literal> oder
|
|
<literal>"adler32"</literal>):
|
|
Diese werden zur Berechnung von Prüfsummen verwendet, was &zb; nützlich
|
|
ist, um Übertragungsfehler zu erkennen. Sie sind in der Regel sehr
|
|
schnell. Da diese Algorithmen oft Werte erzeugen, die leicht zu
|
|
"erraten" sind oder manipuliert werden können, um Kollisionen zu
|
|
erzeugen, sind sie für kryptografische Zwecke völlig ungeeignet.
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
Nicht-kryptografische Algorithmen (&zb; die xxHash-Familie):
|
|
Diese Algorithmen werden häufig zur Berechnung von Hashwerten für
|
|
Hashtabellen verwendet, weil sie darauf ausgelegt sind, eine gute
|
|
Verteilung über beliebige Zeichenketten zu erzeugen. Auch sie sind im
|
|
Allgemeinen schnell, aber ebenfalls nicht für kryptografische Zwecke
|
|
geeignet.
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
Kryptographische Algorithmen (&zb; die SHA-2-Familie):
|
|
Diese Algorithmen wurden entwickelt, um Hashwerte zu erzeugen, die die
|
|
Eingaben darstellen, aber weder erraten werden können noch anfällig für
|
|
Kollisionen sind. Die Leistung ist oft zweitrangig, aber moderne
|
|
Hardware unterstützt oft eine spezielle Handhabung für diese
|
|
Algorithmen, die PHP zu nutzen versucht, wenn sie verfügbar ist.
|
|
</simpara>
|
|
<simpara>
|
|
Das Computer Security Resource Center des <acronym>NIST</acronym> bietet
|
|
eine <link xlink:href="&url.hash.nist-hash-functions;">Beschreibung
|
|
der Algorithmen, die derzeit von den United States Federal Information
|
|
Processing Standards (FIPS) zugelassen sind</link>.
|
|
</simpara>
|
|
<caution>
|
|
<para>
|
|
Einige der frühen kryptographischen Algorithmen wie
|
|
<literal>"md4"</literal>, <literal>"md5"</literal> und
|
|
<literal>"sha1"</literal> haben sich als anfällig für
|
|
Kollisionsangriffe erwiesen und es wird allgemein empfohlen, diese
|
|
nicht mehr für kryptographische Anwendungen zu verwenden.
|
|
</para>
|
|
</caution>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
|
|
<para>
|
|
Siehe auch die
|
|
<link linkend="faq.passwords">FAQ zum sicheren Hashing von Passwörtern</link>
|
|
für Informationen über bewährte Verfahren bei der Verwendung von
|
|
Hash-Funktionen im Umgang mit Passwörtern.
|
|
</para>
|
|
</preface>
|
|
<!-- }}} -->
|
|
|
|
&reference.hash.setup;
|
|
&reference.hash.constants;
|
|
&reference.hash.hashcontext;
|
|
&reference.hash.reference;
|
|
|
|
</book>
|
|
<!-- 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
|
|
-->
|