ETFFIN Finance >> Finanzbildung >  >> Kryptowährung >> Blockchain

Kryptografische Hash-Funktionen

Was sind kryptografische Hash-Funktionen?

Eine kryptografische Hash-Funktion ist eine mathematische Funktion, die in der Kryptografie verwendet wird. Typische Hashfunktionen verwenden Eingaben variabler Länge, um Ausgaben einer festen Länge zurückzugeben.

Eine kryptografische Hash-Funktion kombiniert die Message-Passing-Fähigkeiten von Hash-Funktionen mit Sicherheitseigenschaften.

Die zentralen Thesen

  • Hash-Funktionen sind mathematische Funktionen, die einen bestimmten Datensatz in eine Bitfolge fester Größe umwandeln oder "abbilden". auch als "Hashwert" bekannt.
  • Hash-Funktionen werden in der Kryptographie verwendet und haben unterschiedliche Komplexitäts- und Schwierigkeitsgrade.
  • Hash-Funktionen werden für Kryptowährung verwendet, Passwortsicherheit, und Nachrichtensicherheit.

Wie kryptografische Hash-Funktionen funktionieren

Hash-Funktionen sind häufig verwendete Datenstrukturen in Computersystemen für Aufgaben, B. die Integrität von Nachrichten überprüfen und Informationen authentifizieren. Während sie kryptographisch als "schwach" gelten, weil sie in polynomieller Zeit gelöst werden können, sie sind nicht leicht zu entziffern.

Kryptografische Hash-Funktionen fügen typischen Hash-Funktionen Sicherheitsmerkmale hinzu, erschweren das Erkennen des Inhalts einer Nachricht oder Informationen über Empfänger und Absender.

Bestimmtes, kryptografische Hashfunktionen weisen diese drei Eigenschaften auf:

  • Sie sind „kollisionsfrei“. Dies bedeutet, dass keine zwei Eingabe-Hashes auf denselben Ausgabe-Hash abgebildet werden sollten.
  • Sie können ausgeblendet werden. Es sollte schwierig sein, den Eingabewert für eine Hashfunktion anhand ihrer Ausgabe zu erraten.
  • Sie sollten rätselfreundlich sein. Es sollte schwierig sein, einen Eingang auszuwählen, der einen vordefinierten Ausgang bereitstellt. Daher, die Eingabe sollte aus einer möglichst breiten Verteilung ausgewählt werden.

Die drei oben skizzierten Eigenschaften sind wünschenswert, aber in der Praxis nicht immer umsetzbar. Zum Beispiel, die Ungleichheit der Sample-Spaces für Input-Hashes und Outputs stellt sicher, dass Kollisionen möglich sind. Zum Beispiel, im Jahr 2017, Die MIT Digital Currency Initiative hat eine Kollisionslücke in IOTA gefunden.

Beispiele für kryptografische Hash-Funktionen

Kryptografische Hash-Funktionen werden in Kryptowährungen häufig verwendet, um Transaktionsinformationen anonym weiterzugeben. Zum Beispiel, Bitcoin, die ursprüngliche und größte Kryptowährung, verwendet in seinem Algorithmus die kryptografische Hash-Funktion SHA-256. Ähnlich, JOTA, eine Plattform für das Internet der Dinge, hat eine eigene kryptografische Hash-Funktion, Locken genannt.

Jedoch, Hashes haben andere Anwendungen in der realen Welt. Dies sind einige der gebräuchlichsten kryptografischen Anwendungen:

Kennwortüberprüfung

Das Speichern von Passwörtern in einer normalen Textdatei ist gefährlich, Daher speichern fast alle Websites Passwörter als Hashes. Wenn ein Benutzer sein Passwort eingibt, es wird gehasht und das Ergebnis mit der Liste der Hashwerte verglichen, die auf den Servern des Unternehmens gespeichert sind. Dies ist keine narrensichere Praxis, jedoch, als Sammlung Nr. 1 von 21 Millionen gestohlenen Passwörtern, 2019 entdeckt, demonstriert.

Signaturerstellung und -verifizierung

Die Überprüfung von Signaturen ist ein mathematischer Prozess, der verwendet wird, um die Authentizität von digitalen Dokumenten oder Nachrichten zu überprüfen. Eine gültige digitale Signatur, wenn die Voraussetzungen erfüllt sind, gibt seinem Empfänger einen starken Beweis dafür, dass die Nachricht von einem bekannten Absender erstellt wurde und dass die Nachricht während der Übertragung nicht verändert wurde. Ein digitales Signaturschema besteht typischerweise aus drei Algorithmen:einem Schlüsselerzeugungsalgorithmus; ein Signaturalgorithmus, der eine Nachricht und einen privaten Schlüssel erhalten, erzeugt eine Signatur; und einen Signaturverifizierungsalgorithmus. Merkle-Bäume, eine Technologie, die in Kryptowährungen verwendet wird, ist eine Art digitale Signatur.

Überprüfen der Datei- und Nachrichtenintegrität

Hashes können verwendet werden, um sicherzustellen, dass Nachrichten und Dateien, die vom Sender zum Empfänger übertragen werden, während der Übertragung nicht manipuliert werden. Die Praxis baut eine "Vertrauenskette" auf. Zum Beispiel, Ein Benutzer kann eine Hash-Version seiner Daten und des Schlüssels veröffentlichen, damit die Empfänger den von ihnen berechneten Hash-Wert mit dem veröffentlichten Wert vergleichen können, um sicherzustellen, dass sie übereinstimmen.