Dezentrale Technologien bzw. Distributed-Ledger-Technologien zeichnen sich dadurch aus, dass im Netzwerk keine zentrale Entität Kontrolle ausüben kann. Dennoch gibt es bestimmte Szenarien, die einer Blockchain beziehungsweise den Netzwerkteilnehmern schaden können. Einer dieser Gefahren besteht durch sogenannte “Double Spending-Angriffe”(z. dt. Doppelte Ausgaben).

Was sind Double-Spending-Angriffe?

Stell dir vor, du gehst einkaufen und bezahlst mit einem 50 Euro-Schein. Anschließend besuchst du ein zweites Mal das Geschäft und klaust denselben 50 Euro-Schein.

Jetzt kannst du mit diesem Schein ein zweites Mal bezahlen, obwohl du ihn ursprünglich schon ausgegeben hattest. So ähnlich kannst du dir einen Double-Spending-Angriff auf einer Blockchain vorstellen.

Nur ist es im digitalen Raum wesentlich einfacher eine Fälschung zu erstellen. Während du in der analogen Welt für einen physischen Geldschein spezielles Papier, Materialien und Geräte benötigst, um eine gute Kopie zu erzeugen, kannst du digitale Daten einfach replizieren, da diese im Endeffekt nur aus Bits bestehen.

Du kannst dir das in etwa so vorstellen: Ein Angreifer besitzt einen Bitcoin. Würde er diesen einen Bitcoin mehrmals an unterschiedliche Parteien versenden, betrügt er das Netzwerk, weil er diesen Bitcoin (wäre er nicht digital) nur 1x verschicken könnte. Oder auch Hacker könnten sich Coins aus kompromittierten Transaktionen einfach kopieren und selbst auszahlen. In folgender Darstellung haben wir das Szenario visualisiert:

Aus diesem Grund war die Erstellung eines digitalen Geldes eine besondere Herausforderung. Satoshi gelang es jedoch letzten Endes das Problem mit den doppelten Ausgaben zu lösen. Das Bitcoin-Protokoll erlaubt es nicht, Daten einfach zu duplizieren. Jeder Bitcoin ist somit einzigartig. Dennoch muss das Netzwerk sich davor schützen, dass eine Entität einen Bitcoin mehrmals ausgeben kann.

Wie schützt dich das Netzwerk vor doppelten Ausgaben?

Damit Bitcoins nicht doppelt ausgegeben werden können, überprüft das Netzwerk, ob dieser Bitcoin in der Vergangenheit bereits ausgegeben wurde. Dazu muss sichergestellt werden, dass die vergangenen Daten nicht verändert werden können. Anderenfalls können die Daten so manipuliert werden, dass das Netzwerk eine doppelte Ausgabe als gültig erkennen würde.

Wie macht das Netzwerk das?

Eine Möglichkeit, Angreifer davon abzuhalten, die Vergangenheit einer Blockchain einfach zu ändern ist der Proof-of-Work (kurz PoW). Hierbei werden durch einen sehr energieaufwendigen Prozess, der auch als Mining bezeichnet wird, Blöcke einer Blockchain verifiziert. Möchte man Daten in der Vergangenheit ändern, muss mindestens so viel Energie aufgebracht werden, wie ab dem Zeitpunkt des Eintragens dieser Daten in die Blockchain geflossen ist. Dies macht eine rückwirkende Änderung äußerst unrentabel und extrem schwierig. Mehr zu Mining erfährst du in folgendem Blocktrainer-1×1-Artikel.

Eine andere Möglichkeit die Vergangenheit einer Blockchain zu schützen ist durch Proof-of-Stake (kurz PoS). Hier sind die Blockproduzenten durch ihren Stake vordefiniert. Um die Chance zu bekommen, ein Blockproduzent zu werden, muss viel der internen Währung ausgegeben werden. Das macht eine doppelte Ausgabe sehr teuer.

PoW und PoS sind keine Konsensprotokolle

Im Internet werden PoW und PoS fälschlicherweise als Konsensprotokolle bezeichnet, was nicht ganz korrekt ist. Sie machen das Netzwerk sicher und schützen so vor diversen Angriffen, wie Double-Spending-Attacken und Sybil-Angriffen.

_______________________________________________________________________

Jetzt bist du dran! Wusstest du bereits, dass PoW und PoS das Netzwerk vor Double-Spending-Angriffen schützt? Schreib deine Meinung doch gerne ins Blocktrainer-Forum.

Autor