Zurück zu Beiträgen
Kryptographie 101
14. Januar 2020ArtikelKryptographieBlockchainVerschlüsselungHash

Kryptographie 101

Die Blockchain-Technologie, die mit Bitcoin ihren Ursprung fand, besteht aus einer Kombination bestehender Technologien. Wesentliche Konzepte sind die asymmetrische Verschlüsselung, die digitale Signatur und der Proof-of-Work-Algorithmus sowie das Konzept der Dezentralisierung.

Kryptographie 101

Die Blockchain-Technologie, die mit Bitcoin ihren Ursprung fand, besteht aus einer Kombination bestehender Technologien. Wesentliche Konzepte sind die asymmetrische Verschlüsselung (siehe Merkle, 1980), die digitale Signatur (siehe Haber & Stornetta, 1997), der Proof-of-Work-Algorithmus (siehe Back, 2002) sowie das Konzept der Dezentralisierung, die erstmals von Nakamoto (2008) zu einem reinen Peer-to-Peer-Digital-Cash-System kombiniert wurden. Mit dem Bitcoin-Whitepaper löste Nakamoto das Double-Spending-Problem digitaler Assets, das zuvor nie gelöst worden war. Dabei kommen kryptographische Hash-Funktionen für Anreizdesign, Validierung und Transaktionsverkettung in Blockchain-Systemen zum Einsatz. Darüber hinaus bildet die asymmetrische Verschlüsselung die Grundlage für Transparenz und Privatsphäre innerhalb der Blockchain.

Symmetrische und asymmetrische Verschlüsselung

Die asymmetrische Kryptographie, auch als Public-Key-Kryptographie bekannt, ist eine der Schlüsselkomponenten der Blockchain-Technologie. Diese Form der Kryptographie ermöglicht es jedem, die Integrität von Transaktionen zu überprüfen oder digitale Assets sicher zu speichern. Um die Vorteile der asymmetrischen Verschlüsselung zu verstehen, ist ein Vergleich mit ihrem Gegenstück, der symmetrischen Verschlüsselung, hilfreich.

Wie der Name schon sagt, verwendet die symmetrische Verschlüsselung denselben Schlüssel zum Ver- und Entschlüsseln von Daten. Um eine private Kommunikation zu ermöglichen, müssen alle beteiligten Parteien denselben Schlüssel haben. In der Praxis bedeutet dies, dass der Schlüssel in geheimen Treffen, versiegelten Umschlägen oder vertrauenswürdigen Kanälen mit der anderen Partei geteilt werden muss. Die symmetrische Verschlüsselung ist daher schlecht skalierbar und anfällig für Angriffe bei der Schlüsselübertragung.

Symmetrische Verschlüsselung

Die asymmetrische Verschlüsselung wurde entwickelt, um den Nachteilen der symmetrischen Verschlüsselung entgegenzuwirken und stellt eine wichtige Grundlage der Kryptographie im Blockchain-Kontext dar. Die asymmetrische Kryptographie löst das Koordinationsproblem, das bei der symmetrischen Verschlüsselung bei der Schlüsselübertragung bestand. Anstatt das "Passwort" zum Entschlüsseln einer Nachricht weiterzugeben, wird eine Kombination aus zwei Schlüsseln verwendet - ein öffentlicher Schlüssel und ein privater Schlüssel. Dies wird oft als Private- und Public-Key-Verschlüsselung bezeichnet. Der private Schlüssel ist nur dem Eigentümer bekannt und muss sicher aufbewahrt werden. Der öffentliche Schlüssel hingegen kann ohne Bedenken an jeden weitergegeben werden. Beide Schlüssel sind kryptographisch miteinander verknüpft.

Das folgende Beispiel zeigt, wie eine sichere Nachricht übertragen werden kann, indem die Schlüsselpaare verwendet werden, ohne das Passwort zur Entschlüsselung an den Empfänger senden zu müssen:

  1. Alice teilt ihren öffentlichen Schlüssel mit Bob
  2. Bob verwendet Alice' öffentlichen Schlüssel, um seine Nachricht zu verschlüsseln
  3. Die von Bob gesendete Nachricht kann nun nur von Alice entschlüsselt werden, da nur sie ihren privaten Schlüssel besitzt, der für die Entschlüsselung benötigt wird

Asymmetrische Verschlüsselung

Eine Anwendung der asymmetrischen Kryptographie ist die Speicherung und Übertragung von Kryptowährungen. Der öffentliche Schlüssel ist die Adresse, an der sich die Coins befinden, und kann zum Verschlüsseln von Daten verwendet werden. Der private Schlüssel hingegen entspricht dem Passwort, das zum erneuten Entschlüsseln der Daten benötigt wird. Der private Schlüssel ermöglicht daher den Zugriff auf Ihre eigenen Assets auf der Blockchain und sollte daher in jedem Fall sicher aufbewahrt werden. Neben der sicheren Aufbewahrung von Assets wird die asymmetrische Verschlüsselung auch verwendet, um Transaktionen bezüglich dieser Assets zu signieren.

Hash-Funktionen

Hash-Funktionen sind kryptographische Einweg-Funktionen, die eine Eingabe (Text, Dokumente usw.) in einen längenbegrenzten alphanumerischen Code (Hash) als Ausgabe umwandeln. Heutzutage werden sie verwendet, um E-Mails oder digitale Dokumente zu signieren. Darüber hinaus bilden sie auch die Grundlage für den Proof-of-Work-Algorithmus zur Validierung von Transaktionen auf der Blockchain (Voshmgir & Kalinov, 2018).

Wie in der Abbildung gezeigt, führt selbst eine geringfügige Änderung der Funktionseingabe zu einer völlig anderen Ausgabe. Dennoch erzeugt die Verwendung derselben Eingabe und Hash-Funktion immer dieselbe Ausgabe. Daher ist es einfach zu überprüfen, ob der Hash (Ausgabe) zu einem bestimmten Datensatz (Eingabe) gehört. Der Hash-Wert (Ausgabe) kann jedoch nicht auf den Datensatz (Eingabe) zurückgeführt werden. Daher wird sie als Einweg-Funktion bezeichnet.

Hash-Funktionen

Hash-Funktionen wie SHA256 (Secure Hash Algorithm) sind in der Regel Open Source. Das bedeutet, dass jeder versuchen kann, den Algorithmus zu knacken. Hash-Algorithmen, die schon lange existieren und noch nicht erfolgreich geknackt wurden, können als sicher betrachtet werden.

TIPP: Ein interaktives Tool für ein besseres Verständnis von Hash-Funktionen bietet Anders Brownworth auf der Website https://anders.com/blockchain/hash


Autor: Severin Kranz
Blockchain Enthusiast & Fintech Consultant

Quelle: Medium - Ledgerlabs-li

Dieser Beitrag wurde von unserer Meetup-Gruppe importiert.

Auf Meetup.com ansehen