:DE: Cardano ist sicher gegen ‘Fake-Stake’-Angriffe


This post is a German translation of the blogpost ‘Cardano is secure against fake stake attacks’ by Philipp Kant


Cardano ist sicher gegen ‘Fake-Stake’-Angriffe

Peer-reviewed Design bedeutet auch, dass Ouroboros frei von einem Fehler ist, der viele andere Proof-of-Stake-Blockchains betrifft.


ADA gehört nicht zu den 26 Kryptowährungen, die von US-Forschern letzte Woche als anfällig für ‘Fake Stake’-Angriffe identifiziert wurden. Die Cardano-Blockchain, die ADA zugrunde liegt, basiert auf Proof-of-Stake (PoS), aber ihr Ouroboros-Protokoll verwendet keinen Bitcoin-Code und ist nicht vom PoSv3-Problem ² betroffen. Dies ist nicht nur Glück, sondern eine Folge des gründlichen, formal verifizierten Ansatzes während der Entwicklung von Cardano.

Die Schwachstelle

Die Schwachstelle wird im Originalartikel sehr gut erklärt. Um zu verstehen, warum Cardano davon nicht betroffen ist, werden wir hier das Wesen der Schwachstelle zusammenfassen.

Alle anfälligen Systeme verwenden PoSv3, eine Modifikation des Bitcoin-Codes, die darauf abzielt, die Hashing-Power durch den Stake (finanzieller Einsatz) zu ersetzen, um festzustellen, wer berechtigt ist, einen Block zu erstellen. Im ursprünglichen Bitcoin-Code basiert die Entscheidung, wer den nächsten Block erstellen darf, ausschließlich auf der Hashing-Power: Wer es schafft, eine geeignete Zufallszahl zu finden und damit zuerst einen richtigen Hash zu erhalten, gewinnt. PoSv3 fügt jedoch eine zusätzliche Variable hinzu, um den Faktor des Einsatzes zu simulieren.

In einem PoS-System ist die Wahrscheinlichkeit, einen Block zu erstellen, proportional zu dem, was ein Benutzer an Stake im System hat: Je mehr Stake ein Benutzer hat, desto wahrscheinlicher ist es, dass er den nächsten Block erstellen kann. Um diese Funktionalität nachzuahmen, bietet PoSv3 den Benutzern die Möglichkeit, ihrem Block zusätzliche Informationen in Form einer "Staking-Transaktion" hinzuzufügen. Je mehr Token sie in ihrer Staking-Transaktion verwenden können, desto einfacher wird es für sie, einen korrekten Hash zu erhalten und damit das Recht zu erhalten, den nächsten Block zu erstellen.

PoSv3 bindet zwar erfolgreich Blockerstellungsrechte an diese Beteiligung, erschwert aber auch die Blockvalidierung. Nicht nur der Hash des Blocks selbst muss verifiziert werden (wie bei Bitcoin), sondern auch die Staking-Transaktion eines Benutzers: Das heißt, hat der Benutzer tatsächlich die Token besessen, die er in seiner Staking-Transaktion verwendet hat? Um diese Informationen zu verifizieren, muss ein Blockchain-Knoten auf das Ledger verweisen können, und - wenn ein Block nicht nur die aktuelle Kette verlängert, sondern einen Fork einführt - auch die Historie des Ledgers. Da dies weder gecached noch billig zu berechnen ist, werden Blöcke in PoSv3-Systemen nicht sofort validiert, sondern (zumindest teilweise) im Speicher oder auf der Festplatte gespeichert, wenn sie einige Heuristiken bestehen.

Die im Originalartikel diskutierten Schwachstellen können auf verschiedene Weise ausgenutzt werden, beinhalten aber letztendlich, diese Heuristiken zu täuschen und einem Knoten viele ungültige Blöcke zu präsentieren, so dass der Knoten keinen Speicher mehr hat und abstürzt, bevor er erkennen kann, dass die Blöcke ungültig sind.

Warum Cardano anders ist

Für Cardano ging IOHK einen anderen Weg. Anstatt eine minimale Variation von Bitcoin zu finden, haben wir uns auf weltweit führende Wissenschaftler und Forscher verlassen, um ein neues Protokoll und eine neue Codebasis von Grund auf neu zu entwickeln, mit der Anforderung, dass sie gleichwertige (oder bessere) Sicherheitsgarantien bieten sollte als Bitcoin, sich aber vollständig auf den Stake verlassen sollte. Das Ergebnis ist das Ouroboros-Protokoll ³, das erste nachweislich sichere PoS-Protokoll, auf dem Cardano aufbaut.

Das grundlegende Design von Ouroboros ist bemerkenswert einfach: Die Zeit wird in diskrete Schritte unterteilt, die als Slots bezeichnet werden, und die Slots werden in längere Perioden, sogenannte Epochen, gruppiert. Zu Beginn jeder Epoche bestimmt eine Lotterie, wer für jeden Slot einen Block erstellen darf. Anstatt dass diese Lotterie implizit ist, d.h. wer auch immer einen richtigen Hash zuerst gewinnt, ist die Lotterie explizit: Eine generierte Zufallszahl bestimmt einen Slotführer für jeden Slot, und die Gewinnchancen für einen bestimmten Slot sind proportional zum Einsatz, den man kontrolliert .

In diesem Protokoll ist die Validierung, dass ein Block vom richtigen Stakeholder unterzeichnet wurde, ebenfalls einfach: Es wird nur der Leaderplan für die aktuelle Epoche benötigt (der sich im Falle eines temporären Fork nicht ändert), und die Überprüfung einer Signatur. Dies kann und wird von jedem Knoten getan, sobald er die Block Führung erhält, im Gegensatz zu den PoSv3-Systemen, die anfällig für gefälschte Stake-Angriffe sind.

Kurz gesagt: Cardano ist sicher gegen gefälschte Stakeholder-Angriffe, weil es auf einem grundlegend anderen System basiert. PoSv3-Kryptowährungen laufen auf Proof-of-Work-Systemen (PoW), die modifiziert wurden, um die Beteiligung an der impliziten Leaderwahl zu berücksichtigen, und die fragliche Schwachstelle ist das Ergebnis dieser Modifikation und der damit verbundenen zusätzlichen Komplexität.

Cardano hat nicht nur eine andere Grundlage, sondern diese Grundlage ist das Ergebnis mehrerer peer-reviewed akademischer Arbeiten und einer beispiellosen Zusammenarbeit zwischen Forschern und Entwicklern. Die formalen und semi- formalen Methoden, die bei der Erstellung der bevorstehenden Shelley-Version von Cardano zum Einsatz kommen, stellen sicher, dass der Aufbau auf Code-Ebene offensichtlich dem in den Peer-Review-Forschungspapieren beschriebenen Protokoll entspricht, das Zuverlässigkeit und Sicherheit durch Design aufbaut - und die Probleme von PoSv3 vermeidet, die durch die Änderung eines bestehenden Protokolls entstanden sind, anstatt ein durch und durch bewährtes, maßgeschneidertes Protokoll wie Ouroboros zu erstellen.

3 Likes

Available in French.
Disponible en Français.

2 Likes