Die Erstellung eines CVE-Eintrags (Kennung CVE-2023-50428) für das Ordinals-Protokoll sorgt in der Bitcoin-Community derzeit für viel Aufsehen und Kritik.

Der offizielle CVE-Eintrag auf der Seite des NIST | Quelle: nvd.nist.gov

Hintergrund

Bevor wir uns mit dem CVE selbst befassen, ist es wichtig, die Vorgeschichte zu verstehen. Die jüngste Kontroverse, die zur Erstellung des CVE-2023-50428 führte, hat ihren Ursprung in den Entscheidungen und Handlungen des neu gegründeten Mining-Pools "OCEAN". Dieser Pool, unter der Leitung von Luke Dashjr, einem der wohl bekanntesten Bitcoin-Entwickler, setzt eine äußerst kontroverse Mining-Politik durch. OCEAN begann nämlich, bestimmte Bitcoin-Transaktionen, die OP_RETURN Felder über einer bestimmten Größe nutzen, aus seinen Block-Templates auszuschließen – Blocktrainer.de berichtete. Diese Felder erlauben es, zusätzliche Daten in Bitcoin-Transaktionen einzubetten, und sind im Falle von OP_RETURN teilweise sogar wichtiger Bestandteil von Bitcoin-Anwendungen. Mittlerweile wurde diese Einschränkung auch auf Inscriptions im Rahmen des Ordinals-Protokolls ausgeweitet.

Das Ordinals-Protokoll selbst ist eine relativ neuartige Form der Nutzung der Bitcoin-Blockchain, die es unter anderem ermöglicht, beliebige Informationen – sogenannte "Inscriptions" – direkt auf der Bitcoin-Blockchain zu speichern. Diese Inscriptions können verschiedene Formen von Daten enthalten, von einfachen Texten bis hin zu komplexen digitalen Bildern oder Videos. Solche Inscriptions haben eine lebhafte Diskussion über die Grenzen und Möglichkeiten der Bitcoin-Blockchain ausgelöst, insbesondere in Bezug auf die Speicherung von "Nicht-Finanzdaten".

Die Entscheidung des OCEAN-Pools, Transaktionen mit Inscriptions und OP_RETURN Feldern zu filtern, wurde von Luke Dashjr stets mit der Begründung verteidigt, dass solche Transaktionen als "Spam" angesehen werden könnten und eine Ausnutzung eines "Bugs" in der Bitcoin-Software darstellen. Diese Sichtweise hat in der Bitcoin-Community für zahlreiche Debatten gesorgt, da sie grundlegende Fragen über die Rolle von Minern, die Natur von Transaktionen und die Funktionsweise von Bitcoin aufwirft.

Die Kontroverse wurde noch verstärkt, als bekannt wurde, dass diese Filterpolitik nicht nur "belanglose" Bilder und Texte betraf, sondern auch andere wichtige Anwendungen wie z.B. sogenannte CoinJoin-Transaktionen der Samourai Whirlpool Implementierung und Benachrichtigungs-Transaktionen im Rahmen von BIP-47. Diese Entwicklung führte zu einer breiten Debatte über Zensur und die Autonomie von Bitcoin-Minern, ihre Transaktionen nach eigenem Ermessen zu gestalten.

Lese-Tipp | Anhaltende Kontroverse um OCEAN-Pool: Auch CoinJoins werden gefiltert!

In diesem Kontext erscheint die Erstellung eines CVE für das Ordinals-Protokoll als ein weiterer Schritt in einer anhaltenden Diskussion über die Grenzen der Nutzung der Bitcoin-Blockchain. Während einige die Einführung von Ordinals als eine innovative und legitime Nutzung der Blockchain-Technologie ansehen, die sich offen und ehrlich am Gebühren-Markt beteiligt, betrachten andere sie als eine unangemessene Ausnutzung oder sogar als Gefährdung der Netzwerkintegrität. Diese polarisierenden Ansichten bilden den Hintergrund für die aktuelle Diskussion um den CVE-2023-50428 und es ist wichtig, diese zu verstehen.

Was ist CVE?

CVE, kurz für "Common Vulnerabilities and Exposures", ist ein international anerkanntes System zur Identifizierung und Katalogisierung von Sicherheitslücken in Software und Hardware. Dieses System spielt eine entscheidende Rolle in der Welt der IT-Sicherheit, indem es eine standardisierte Methode zur Referenzierung spezifischer Schwachstellen bietet. Jeder CVE-Eintrag erhält eine eindeutige Kennnummer, die es Sicherheitsexperten, Entwicklern und Endnutzern ermöglicht, spezifische Sicherheitsprobleme eindeutig zu identifizieren und darüber zu kommunizieren.

Ein CVE-Eintrag enthält in der Regel eine Beschreibung der Sicherheitslücke, Informationen darüber, welche Soft- oder Hardware betroffen ist, und, wenn verfügbar, Referenzen zu weiterführenden Informationen wie Sicherheitsberichten oder Patches. Die CVE-Nummer selbst folgt einem standardisierten Format, das das Jahr der Identifizierung und eine laufende Nummer enthält, z.B. ganz aktuell CVE-2023-50428.

Liegt wirklich ein Fehler vor?

Die Erstellung eines CVE für das Ordinals-Protokoll auf Bitcoin ist in vielerlei Hinsicht problematisch. Erstens sind Inscriptions keine "Bugs" oder Schwachstellen im traditionellen Sinne. Sie sind vielmehr eine kreative Nutzung der gegebenen Möglichkeiten von Bitcoin, die sich an alle geltenden Konsensregeln im Netzwerk halten. Das Anlegen eines CVE für eine solche Funktion scheint daher unangebracht und wird von Teilen der Community zurecht als Versuch interpretiert, die Natur von Bitcoin und seiner Nutzung zu regulieren.

In Bitcoin Core bis Version 26.0 und Bitcoin Knots vor Version 25.1.knots20231115 können die Größenbeschränkungen für Datenträger umgangen werden, indem Daten als Code verschleiert werden (z. B. mit OP_FALSE OP_IF), wie dies in freier Wildbahn von Inscriptions in den Jahren 2022 und 2023 ausgenutzt wurde.

Auszug aus der Fehlerbeschreibung des CVE-Eintrags

Die Idee, dass die Nutzung der Blockchain für Inscriptions als Sicherheitslücke angesehen werden soll, widerspricht dem Grundprinzip von Bitcoin: Einer dezentralisierten, unzensierbaren und offenen Plattform. Bitcoin wurde entwickelt, um Nutzern Freiheit und Flexibilität in der Art und Weise zu bieten, wie sie die Technologie nutzen. Das Anlegen eines CVE für eine solche Nutzung ist daher nicht nur unangemessen, sondern auch ein Missverständnis darüber, was Bitcoin ausmacht.

Der freie Markt

Natürlich haben Miner grundsätzlich die Freiheit, nur solche Transaktionen in ihre Blöcke aufzunehmen, die sie möchten. Diese Entscheidungsfreiheit ist ein wesentlicher Bestandteil der dezentralisierten Natur von Bitcoin. Der "freie Markt" incentiviert Miner eigentlich von alleine, Inscriptions mit in ihre Blöcke aufzunehmen, da diese schließlich auch entsprechende Gebühren bezahlen. Solche Transaktionen auf Dauer auszuschließen, ergibt rein ökonomisch betrachtet nur wenig Sinn.

Standard #Bitcoin Core Block-Template vs. @ocean_mining Block-Template.

-0.15 BTC / -$6600 / -17% weniger Gebühren für Ocean Pool Nutzer.

Wirtschaftlich irrationales Verhalten geht nicht gut in freien Marktumgebungen.

@aeonBTC

Die Einführung eines CVE für eine bestimmte Art von Transaktion kann dennoch als Eingriff in diese Autonomie der Miner und als Versuch der zentralisierten Kontrolle interpretiert werden.

Fazit

Während es wichtig ist, echte Sicherheitsrisiken der Bitcoin-Software zu identifizieren und zu adressieren, ist die Kennzeichnung von Ordinals/Inscriptions als CVE ein Schritt in die falsche Richtung. Es stellt einen unangebrachten Versuch dar, die Nutzung von Bitcoin zu regulieren und untergräbt die Prinzipien der Offenheit und Dezentralisierung, die Bitcoin so einzigartig machen. In der Welt von Bitcoin sollten Innovation und kreative Nutzung gefördert und nicht durch unpassende Sicherheitslabels eingeschränkt werden, dessen einziger Zweck ist, die eigenen Argumente zu untermauern.

Ganz allgemein ist es ohnehin ein seltsamer Schritt, eine gar nicht zu verhindernde Eigenschaft von Bitcoin, nämlich das Speichern von beliebigen Daten in Bitcoin-Transaktionen, als "Schwachstelle" zu deklarieren und bekämpfen zu wollen. Denn auch mit einem eingeschränkten Limit für OP_RETURN und selbst einem gänzlichen Verbot von Inscriptions, können weiterhin Daten auf kreative und teilweise sogar ineffizientere Weise in der Bitcoin-Blockchain verewigt werden. Letzteres, also ein Verbot von Inscriptions, wäre außerdem nur mit einer kontroversen Änderung der Konsensregeln, in diesem Fall eine Soft Fork, umsetzbar und ist damit von vorneherein extrem unwahrscheinlich.