© Wit Olszewski/Shutterstock.com
Bitcoin-Sicherheit durch Verschlüsselung?

Das Ammenmärchen der Verschlüsselung


Immer wieder liest man, wie stark die Verschlüsselung von Bitcoin und wie sicher dadurch die Nutzung der Kryptowährung sei. Aber was ist denn nun in Bitcoin tatsächlich verschlüsselt? Dieser Artikel soll etwas Licht ins Dunkel bringen.

Machen wir uns zunächst mit einigen Grundlagen der kryptografischen Verfahren vertraut. Zentral ist hier der Unterschied zwischen symmetrischer und asymmetrischer Kryptografie.

Symmetrische vs. asymmetrische Kryptografie

Bei der symmetrischen Kryptografie [1] gibt es meist nur einen Schlüssel. Mit diesem wird sowohl verschlüsselt als auch entschlüsselt. Bei einigen symmetrischen Verfahren können die Schlüssel zwar auch verschieden sein, sind aber einfach voneinander berechenbar, und das in beide Richtungen.

Bitcoin basiert hingegen auf asymmetrischer Kryptografie [2]. Hier existieren zwei verschiedene Schlüssel: einer, um etwas zu verschlüsseln und ein zweiter, um etwas zu entschlüsseln. Dieses Verfahren wird auch oft als Public-Key-Verfahren bezeichnet. Der Name weist darauf hin, dass Person A mit Hilfe eines öffentlichen Schlüssels etwas für Person B verschlüsseln kann. Zum Entschlüsseln ist dann nur Person B mit ihrem privaten Schlüssel in der Lage. Den privaten Schlüssel darf man also niemals öffentlich machen, den öffentlichen Schlüssel schon. Damit das Verschlüsseln mit dem einen Schlüssel und das Entschlüsseln mit dem anderen funktioniert, gibt es zwischen den beiden Schlüsseln eine mathematische Beziehung. Bei Bitcoin wird hier die Elliptische-Kurven-Kryptografie [3] angewendet. Eine solche Beziehung wird auch als Einwegfunktion oder „Trapdoor Function“ bezeichnet.

Es ist leicht und effizient, von einem Wert A einen Wert B zu berechnen. Aber mit heute zur Verfügung stehender Rechenleistung ist es unmöglich, in einem angemessenen Zeitrahmen von Wert B auf Wert A zu schließen. Das wird auch als Problem des diskreten Logarithmus bezeichnet, und man hofft in der Kryptografie, dass es für dieses Problem nie eine Lösung geben wird.

Problem des diskreten Logarithmus

Um das Problem des diskreten Logarithmus [4] zu verstehen, betrachten wir die folgende Gleichung: gx mod p = S. Dabei soll eine Lösung für x gefunden werden. p ist eine Primzahl (zum Beispiel 11) und g ein Generator (zum Beispiel 2). Die Variablen g, p und S sind alles natürliche Zahlen. In der Kryptografie wäre S der öffentliche Schlüssel und x der private Schlüssel. Versucht man in dieser Gleichung x zu berechnen, wenn S gegeben ist (zum Beispiel 10), dann kann man das nur mit Probieren erreichen. Unsere Gleichung mit eingesetzten Zahlen sieht nun so aus: 2x mod 11 = 10. Tabelle 1 zeigt eine Reihe von Versuchen, Werte für x herauszufinden, die ein S von 10 ergeben.

x

0

1

2

3

4

5

6

7

8

9

10

S

1

2

4

8

5

10

9

7

3

6

1

Tabelle 1: Reihe von Versuchen zum Problem des diskreten Logarithmus

Wenn man für x also 5 einsetzt, kommt man auf 10. Folglich wäre der private Schlüssel 5. Bei x = 10 sieht man, dass S wieder 1 ist, was wir bei x = 0 auch hatten. Die Werte von S sind zyklisch und beginnen wieder von vorne. Es gibt also mehrere Werte für x, die einen Wert von 10 für S ergeben.

Durch Ausprobieren haben wir nun eine Lösung gefunden. Das mag mit kleinen Zahlen funktionieren, mit sehr großen Zahlen ist das aber unmöglich oder würde sehr lange dauern. Anwendungsbeispiele, die auf dem diskreten Logarithmus basieren, sind Diffie-Hellman-Schlüsselaustausch, Elgamal-Signaturverfahren, DSA-Verfahren oder das Elliptische-Kurven-Kryptosystem, das bei Bitcoin verwendet wird.

Public-Key-Verfahren bei Bitcoin

Bitcoin verwendet die elliptische Kurve, um den öffentlichen Schlüssel aus dem privaten Schlüssel zu erzeugen. Eine andere Möglichkeit wäre RSA gewesen. Ein privater Schlüssel aus 256 Bits bei einer elliptischen Kurve ist jedoch so sicher wie ein 3 072 Bi...

Neugierig geworden? Wir haben diese Angebote für dich:

Angebote für Gewinner-Teams

Wir bieten Lizenz-Lösungen für Teams jeder Größe: Finden Sie heraus, welche Lösung am besten zu Ihnen passt.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang