Post-Quantum-Blockchain

In den letzten Jahren sind Systeme, die auf der so genannten Blockchain basieren, immer beliebter geworden. Sie locken die Nutzer mit einer Reihe von Vorteilen: Dezentralisierung, Unveränderlichkeit der Daten, Transparenz und das Fehlen eines vertrauenswürdigen Zentrums, d. h. eines Vermittlers. Diese Vorteile werden durch zwei der „Wale“ der Blockchain ermöglicht: asymmetrische Verschlüsselung und die Verwendung von Hash-Funktionen.

Quelle: pexels.com

Mit der Entwicklung des Quantencomputers ist die Sicherheit dieser Primitive jedoch gefährdet, so dass neue Ansätze für den Aufbau einer Blockchain gefunden werden müssen, die gegen Angriffe durch einen Quantencomputer resistent ist – die so genannte Post-Quantum-Blockchain. Dieser Artikel zeigt auf, welche Teile der Blockchain am anfälligsten für Quantencomputer-Angriffe sind, wie realistisch diese Bedrohungen sind, welche Ansätze es gibt, um eine Post-Quantum-Blockchain zu bauen, die dagegen resistent ist, und wie anwendbar sich diese Ansätze erweisen.

Erinnern wir uns zunächst daran, was eine Blockchain ist, um zu verstehen, warum sie für Quantencomputer-Angriffe anfällig ist. Im Wesentlichen ist eine Blockchain eine Datenbank, die aus einer Kette von Blöcken besteht, in der jeder Block einen Hash des vorherigen Blocks speichert, so dass zum Ändern oder Löschen eines Blocks in der Mitte der Kette alle nachfolgenden Blöcke neu angeordnet werden müssen. Die Zählung der einzelnen Blöcke ist eine rechenintensive Aufgabe, so dass es fast unmöglich ist, die Blöcke neu zu berechnen, und daher hat die Blockchain die Eigenschaft der Unveränderlichkeit der Daten. Ein Blockchain ist eine verteilte Peer-to-Peer-Datenbank mit strengen Regeln für das Hinzufügen von Daten. Jede Kryptowährung, von der man auf Bitcoin 360 Ai profitieren kann, ist mit einer Blockchain verknüpft.

Eine solche rechnerisch komplexe Aufgabe könnte z. B. das Auffinden einer Hash-Kollision sein: das Auffinden einer Zahl, eines Proof-of-Work, bei der der Hash eines Blocks mit einigen Nullen beginnt, wenn er hinzugefügt wird. Dies ist ein klassisches Computerproblem, das nur mit roher Gewalt gelöst werden kann, so dass die durchschnittliche Zeit, um eine solche Zahl zu finden, exponentiell ansteigt, wenn die Anzahl der erforderlichen Nullen zunimmt. Weitere Einzelheiten finden Sie im Originalartikel von S. Nakamoto, der diese Idee vorgeschlagen hat.

Die Blöcke bestehen aus Transaktionen, die von den Nutzern generiert und von ihnen mit asymmetrischer Kryptographie signiert werden. Jeder Benutzer hat zwei Schlüssel: einen privaten Schlüssel, der nur ihm bekannt ist und mit dem er die Transaktionen signiert, und einen öffentlichen Schlüssel, der allen Benutzern bekannt ist und mit dem jeder die Signatur überprüfen kann. So verwendet Bitcoin zum Beispiel den ECDSA (Elliptic Curve Digital Signature Algorithm) zum Signieren von Transaktionen, der dem DSA (Digital Signature Algorithm) ähnelt, aber in einer Gruppe von elliptischen Kurvenpunkten definiert ist. Die kryptographische Stärke dieses Algorithmus beruht auf der Komplexität des diskreten Logarithmusproblems, das auf einem klassischen Computer in exponentieller Zeit im Verhältnis zur Schlüsselgröße gelöst wird. Ein weiteres rechnerisch schwieriges Problem ist das Problem der Faktorisierung großer Zahlen, auf dem z. B. der RSA-Algorithmus (Rivest-Shamir-Adleman) basiert, der auch die kryptografische Stärke digitaler Signaturen liefert, da das zugrunde liegende Problem in einer Zeit gelöst wird, die exponentiell mit der Größe des Schlüssels zusammenhängt. Solange diese kryptografische Stärke besteht, ist also gewährleistet, dass niemand anderes in ihrem Namen Transaktionen durchführen kann.

Wie bereits erwähnt, ist die Blockchain auf zwei rechnerisch komplexe Aufgaben angewiesen: das Auffinden von Hash-Kollisionen und die Berechnung des diskreten Logarithmus oder die Faktorisierung großer Zahlen. Beide Aufgaben werden auf einem klassischen Computer in exponentieller Zeit gelöst, so dass sie als unlösbar gelten, wenn eine ausreichend komplexe Hash-Funktion oder ein ausreichend langer Schlüssel gewählt wird. Der eigentliche Schocker ist jedoch, dass es Algorithmen gibt, mit denen Quantencomputer diese Probleme um Größenordnungen schneller lösen können.

Während ein klassischer Computer mit Bits arbeitet, die als Einsen oder Nullen dargestellt werden, arbeitet ein Quantencomputer mit Qubits, die in einer Überlagerung verschiedener Zustände existieren können. Einfach ausgedrückt, kann jeder dieser Zustände gleichzeitig verarbeitet werden, was zu einer erheblichen Beschleunigung gegenüber dem klassischen Pendant führt.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht.

Scroll to Top