Hashfunktion: Unterschied zwischen den Versionen
(4 dazwischenliegende Versionen von einem Benutzer werden nicht angezeigt) | |||
Zeile 2: | Zeile 2: | ||
===Hashfunktion=== | ===Hashfunktion=== | ||
<br> | <br> | ||
− | Bei Hashfunktionen handelt es sich um [[Benutzer:Deininger_Matthias/Facharbeit/Einwegfunktion| Einwegfunktionen]], was bedeutet, | + | Bei Hashfunktionen handelt es sich um [[Benutzer:Deininger_Matthias/Facharbeit/Einwegfunktion| Einwegfunktionen]], was bedeutet, dass es uneffizient und praktisch unmöglich ist, zu gegebenem Hashwert h ein Urbild M zu finden, für das gilt:<br> |
<math>H(M) = h\ =\ h(M)</math><br> | <math>H(M) = h\ =\ h(M)</math><br> | ||
− | Für Hashfunktionen, die in der | + | Für Hashfunktionen, die in der Kryptographie Anwendung finden sollen, ist überdies auch wichtig, dass starke Kollisionsfreiheit gegeben ist. Eine Hashfunktion die das erfüllt, wird als „collision resistant function“<ref name="W2">[12, S.89]</ref> bezeichnet. Dies trifft zu „[...], wenn es berechnungsmäßig praktisch unmöglich ist, Nachrichten M und M’ mit M ≠ M’ und h(M) = h(M’) zu finden"<ref name="W2"/>, also zwei voneinander verschiedene Klartexte, die denselben Hashwert bilden.<br> |
<br> | <br> | ||
Neben der Hashfunktion MD5 (Message Digest 5), die aus MD4 hervorging, gibt es heute noch zahlreiche andere kryptographische Hashfunktionen, darunter auch SHA (Secure Hash Algorithm).<br> | Neben der Hashfunktion MD5 (Message Digest 5), die aus MD4 hervorging, gibt es heute noch zahlreiche andere kryptographische Hashfunktionen, darunter auch SHA (Secure Hash Algorithm).<br> | ||
<br> | <br> | ||
− | SHA wurde 1999 vom National Institute of Standards and Technology (NIST) in Zusammenarbeit | + | SHA wurde 1999 vom National Institute of Standards and Technology (NIST) in Zusammenarbeit mit der National Security Agency (NSA) entwickelt, wobei SHA der Algorithmus ist, welcher dem Secure Hash Standard (SHS) folgt.<br> |
− | + | Zurzeit gibt es SHA-1 mit 160 Bit und SHA-2 mit 224 Bit, 256 Bit, 384 Bit und 512 Bit. Der SHA-3 Standard wird gerade durch einen Wettbewerb ermittelt. Die beste eingereichte Hashfunktion wird als SHA-3 Standard festgelegt. <br> | |
<br> | <br> | ||
− | Die Wahrscheinlichkeit dafür, dass zwei Dokumente denselben SHA-1 Hashwert besitzen, liegt bei 1 zu <math>2^{160}</math> also bei <math>p = 10^{-65}</math>, was die vorhin beschriebene starke Kollisionsfreiheit unterstützt. Anwendungsgebiete für SHA sind unter anderem PGP, SSL und S/MIME.<br> | + | Die Wahrscheinlichkeit dafür, dass zwei Dokumente denselben SHA-1 Hashwert besitzen, liegt bei 1 zu <math>2^{160}</math> also bei <math>p = 10^{-65}</math>, was die vorhin beschriebene starke Kollisionsfreiheit unterstützt. Anwendungsgebiete für SHA sind unter anderem [[Benutzer:Deininger_Matthias/Facharbeit/PGP | PGP]], [[Benutzer:Deininger_Matthias/Facharbeit/SSL| SSL]] und [[Benutzer:Deininger_Matthias/Facharbeit/S/MIME_und_OpenPGP| S/MIME]].<br> |
<br> | <br> | ||
Wie bereits erwähnt, sollte jeder Nutzer zwei Schlüsselpaare erzeugen, eines zum Verschlüsseln und das andere zum Signieren.<br> | Wie bereits erwähnt, sollte jeder Nutzer zwei Schlüsselpaare erzeugen, eines zum Verschlüsseln und das andere zum Signieren.<br> | ||
Zeile 17: | Zeile 17: | ||
Wenn Alice an Bob eine Nachricht signiert und <math>n_A< n_B</math> gilt, so erhält Bob die richtige Nachricht zurück. Gilt jedoch <math>n_A> n_B</math> , so liefert die Dechiffrierung mit großer Wahrscheinlichkeit eine falsche Nachricht.<br> | Wenn Alice an Bob eine Nachricht signiert und <math>n_A< n_B</math> gilt, so erhält Bob die richtige Nachricht zurück. Gilt jedoch <math>n_A> n_B</math> , so liefert die Dechiffrierung mit großer Wahrscheinlichkeit eine falsche Nachricht.<br> | ||
<br> | <br> | ||
− | Die kryptographische Hashfunktion hat in der Literatur viele Bezeichnungen.Hier eine Übersicht:<ref name="S8">Die Bezeichnungen wurden größtenteils [8, S.210] entnommen.</ref><br> | + | Die kryptographische Hashfunktion hat in der Literatur viele Bezeichnungen. Hier folgt eine Übersicht:<ref name="S8">Die Bezeichnungen wurden größtenteils [8, S.210] entnommen.</ref><br> |
<br> | <br> | ||
*Fälschungssichere Hashfunktion<br> | *Fälschungssichere Hashfunktion<br> |
Aktuelle Version vom 23. Dezember 2010, 03:40 Uhr
Hashfunktion
Bei Hashfunktionen handelt es sich um Einwegfunktionen, was bedeutet, dass es uneffizient und praktisch unmöglich ist, zu gegebenem Hashwert h ein Urbild M zu finden, für das gilt:
Für Hashfunktionen, die in der Kryptographie Anwendung finden sollen, ist überdies auch wichtig, dass starke Kollisionsfreiheit gegeben ist. Eine Hashfunktion die das erfüllt, wird als „collision resistant function“[1] bezeichnet. Dies trifft zu „[...], wenn es berechnungsmäßig praktisch unmöglich ist, Nachrichten M und M’ mit M ≠ M’ und h(M) = h(M’) zu finden"[1], also zwei voneinander verschiedene Klartexte, die denselben Hashwert bilden.
Neben der Hashfunktion MD5 (Message Digest 5), die aus MD4 hervorging, gibt es heute noch zahlreiche andere kryptographische Hashfunktionen, darunter auch SHA (Secure Hash Algorithm).
SHA wurde 1999 vom National Institute of Standards and Technology (NIST) in Zusammenarbeit mit der National Security Agency (NSA) entwickelt, wobei SHA der Algorithmus ist, welcher dem Secure Hash Standard (SHS) folgt.
Zurzeit gibt es SHA-1 mit 160 Bit und SHA-2 mit 224 Bit, 256 Bit, 384 Bit und 512 Bit. Der SHA-3 Standard wird gerade durch einen Wettbewerb ermittelt. Die beste eingereichte Hashfunktion wird als SHA-3 Standard festgelegt.
Die Wahrscheinlichkeit dafür, dass zwei Dokumente denselben SHA-1 Hashwert besitzen, liegt bei 1 zu also bei , was die vorhin beschriebene starke Kollisionsfreiheit unterstützt. Anwendungsgebiete für SHA sind unter anderem PGP, SSL und S/MIME.
Wie bereits erwähnt, sollte jeder Nutzer zwei Schlüsselpaare erzeugen, eines zum Verschlüsseln und das andere zum Signieren.
Wenn Alice an Bob eine Nachricht signiert und gilt, so erhält Bob die richtige Nachricht zurück. Gilt jedoch , so liefert die Dechiffrierung mit großer Wahrscheinlichkeit eine falsche Nachricht.
Die kryptographische Hashfunktion hat in der Literatur viele Bezeichnungen. Hier folgt eine Übersicht:[2]
- Fälschungssichere Hashfunktion
- Footprint-Funktion
- Manipulation Detection Code (MDC) (= Erkennung von Manipulationen)
- Message Integrity Code (MIC) (= Integrationsprüfung von Nachrichten)
- Sichere Hashfunktion
Der Hashwert wird auch bezeichnet als:[2]
- Digitaler Fingerabdruck
- Fingerabdruck einer Datei
- Fingerprint
- Footprint
- Kryptographische Prüfsumme
- Message Digest (MD)
zurück zum Lernpfad
zurück zur Übersicht