Ist das ein Bailout – oder eine Rettung?

Bild von Dean Hochman via flickr.com. Lizenz: Creative Commons

Ein Bug im Multisig-Vertrag der Ethereum-Wallert Parity hat im November letzten Jahres einen Schaden von rund 300 Millionen Dollar verursacht. Nun diskutiert die Community, ob sie die Coins per Hardfork wiederherstellen soll.

Im November 2017 froren Ether und Token im Wert von hunderten von Millionen Dollar auf der Ethereum-Blockchain ein. Um die Diskussion, die es derzeit um EIP999 gibt, zu verstehen, sollte man sich kurz daran erinnern, was damals genau geschah:

Der Multisig-Contract, den die Ethereum-Wallet Parity über die Benutzerfläche anlegt, benutzte einen anderen Smart Contract auf Ethereum, um eine Library der Skripte zu speichern und aufzurufen. Das ist an sich clever, da es den eigentlichen Code schlanker macht. Allerdings hatte der Library-Contract eine Suizid-Funktion. Nachdem diese mehr oder weniger versehentlich ausgelöst wurde, wurden die Skripte gelöscht – was die Multisig-Wallets, die mit Parity gebildet worden waren, unbrauchbar machte. Alle Guthaben, die in ihnen gespeichert waren, sind seitdem  eingefroren. Dies waren zu dieser Zeit geschätzt 100 bis 250 Millionen Dollar, zum Teil in Token, zum Teil in Ether. Ein sehr großer Teil gehörte der Firma Parity Technologies selbst, bzw. ihrer Polkadot-Ausgründung.

EIP999, um die verlorenen Coins zu retten

Vor kurzem hat nun Afri Schoedon von Parity Technologies mit EIP999 den Vorschlag eingereicht, den Schaden durch eine Hardfork wieder auszumerzen. Der Vorschlag ändert keine Regeln von Ethereum, nimmt aber eine einzige Änderung am “State”, dem Zustand der Blockchain, vor – er ersetzt den sich selbst zerstörten Library-Code, um den Contract so wiederherzustellen, dass er sich nicht mehr selbst zerstören kann. Damit könnte man die in den Multisig-Wallets gespeicherten Guthaben wieder ausgeben.

Der Vorschlag wurde natürlich kontrovers diskutiert, sowohl auf Github, Ethereum-Magicians und Reddit. Dabei scheint ein Großteil der Entwickler und der Community eher skeptisch. Die üblichen Gründe sind, dass ein solcher “Bailout” die Unveränderlichkeit von Ereignissen auf der Blockchain schwächt und er ein Beispiel abgibt, das Schule machen kann, wodurch in Zukunft jeder will, dass seine Fehler rückgängig gemacht werden, und die Entwickler sich daher weniger Mühe geben, sichere Smart Contracts zu schreiben.

Die Bezeichnung “Bailout” ist dabei übrigens irreführend. Denn ein Bailout meint, dass man Steuergelder benutzt, um Firmen – meist Banken – zu retten, nachdem sie Geld verloren haben. EIP999 hingegen macht lediglich ein Ereignis, das zu einem Verlust geführt hat, unwirksam. Man könnte es damit vergleichen, als würde Ihre Bank alles Geld versehentlich löschen, könnte es aber durch eine Festplattenreparatur wieder herstellen. Die Opfer des Bugs gewinnen, und niemand verliert etwas, zumindest nicht direkt.

Gesunde Strenge – oder religiöse Askese?

Allerdings wird nun jedoch befürchtet, dass ein solches Vorgehen die “Immutabilität”, also die Unveränderbarkeit von Ethereum beschädigt, sei es tatsächlich, weil das Beispiel Schule macht, sei es in den Augen der Öffentlichkeit. Es ist nun ein konstitutives Merkmal einer Blockchain, dass Dinge, die auf ihr passieren, endgültig sind, und speziell Ethereum wirbt damit, dass die auf der Blockchain ausgeführten Smart Contracts unwiderruflich sind. Wenn man nun mit dieser Regel bricht, weil die Parity-Entwickler Mist gebaut haben, riskiert man, an dieser wichtigen Säule von Ethereum zu sägen.

Natürlich könnte man einwenden, dass dies ein überzogenes, geradezu religiöses Verständnis von Unveränderbarkeit ist. Praktisch verändert EIP999 ja nichts. Es ändert keine Guthaben, schafft keine neuen Ether und führt weder eine neue Regel ein noch setzt es eine alte außer Kraft. Sollte sich Ethereum wirklich der Option berauben, Unglücke aus der Welt zu schaffen, wenn es die Möglichkeit dazu hat, weil man “aus Prinzip” nichts ändert? Das hört sich an wie eine Askese. Im Kern führt dies zur selben Diskussion, die es schon bei der DAO-Hardfork gab, und in der sich Fundamentalisten und Pragmatiker gegenüberstehen.

Die verheerenden Folgen eines Chainsplits für Token

Allerdings hat sich seit der DAO-Fork einiges geändert. Ethereum ist nicht mehr ganz so beta und experimentell, sondern zur Plattform eines immer größeren Ökosystems von Smart Contracts und Token geworden. Wie der Entwickler Alex Van de Sade erklärt, weiß man heute, dass ein Chain-Split, der durch eine Hardfork ausgelöst werden kann, langfristig bleiben wird. Damals dachte man noch, eine Chain würde rasch absterben. Ethereum Classic hat jedoch gezeigt, dass dies nicht passiert. Wenn es nun zu einem solchen Split kommt, werden auch alle Token splitten müssen. Sie müssen sich entscheiden, auf welcher Seite der Fork sie gültig sind. Beide Seiten sind für viele Token nicht möglich, wenn sie etwas anderes repräsentieren. “Und in jedem einzelnen Fall werden die Entwickler von beiden Seiten aufgefordert, die Chain zu unterstützen, und jedes Mal wird eine weitere Version der Argumente, welche Chain die bessere ist, wiederholt.” Noch schlimmer wird es Börsen ergehen, die ermitteln müssen, welche der Token nun gültig sind. Daher, so de Sade, solle ein Chainsplit um jeden Preis vermieden werden.

Hilfe könnte hier eine Wahl mit Guthaben auf der Blockchain bringen. Per Carbon Vote kann man mit Ether abstimmen. Seit rund 6 Tagen läuft eine Umfrage unter den Stakeholdern, die mittlerweile zu Ende sein wird. Dieser zufolge sind nicht einmal 40 Prozent für die Hardfork, aber mehr als 55 Prozent dagegen. Damit könnte man meinen, das Projekt sei abgeblasen.

Allerdings lässt ein Statement von Afri Schoedon, dem Autor von EIP999, Raum für weitere Interpretation. Gegenüber Trustnodes sagt Schoedon, dass man die Wahl weder begonnen habe, noch sie unterstütze. Man habe auch nicht vor, die Chain zu spalten, sondern werde, wie gewohnt, versuchen, über den EIP-Prozess einen Konsens der Entwickler und der Community herzustellen. Man kann dies so verstehen, dass Parity auch weiterhin für die Bergung der Token und Ether werben wird. Man kann es aber auch so verstehen, dass ein Split als letztes Mittel weiterhin eine Option sein wird. Schließlich weiß man nicht, was für Parity Technologies auf dem Spiel steht.

About Christoph Bergmann (1256 Articles)
Das Bitcoinblog wird von bitcoin.de gesponsort, ist inhaltlich aber unabhängig und gibt die Meinung des Redakteurs Christoph Bergmann wieder. Wenn Ihnen das Blog gefällt, freuen wir uns über Spenden. Sie können Bitcoin oder Bitcoin Cash an die folgende Adresse spenden: 1BvayiASVCmGmg4WUJmyRHoNevWWo5snqC Weitere Adressen (bech32, SegWit, Litecoin, Ethereum) finden Sie HIER. Dort erfahren Sie auch, wie Sie das Bitcoinblog anderweitig unterstützen können, etwa durch Affiliate-Links. Tipps für Stories sind an christoph.bergmann@mailbox.org immer erwünscht. Wer dies privat machen möchte, sollte meinen PGP-Schlüssel verwenden.

7 Comments on Ist das ein Bailout – oder eine Rettung?

  1. Also es ist so: Das ganze Problem basiert auf der Unveränderbarkeit der Blockchain. Ethereum benutzt das Konzept der Blockchain weitesgehend so, wie Satoshi Nakamoto es damals erfunden hat. Wenn man so konservativ ist und sagt, dass die Blockchain unveränderlich sein soll, tendiert man ja anscheinend eher dazu, Nakamotos Ansichten konsequent weiter zu vertreten. Aber Nakamoto hat in seinem Whitepaper damals auch ausdrücklich geschrieben: Das ganze System funktioniert unter der Annahme, dass die Mehrheit der Netzwerk-Teilnehmer nicht böse ist und dass die Mehrheit immer entscheidet. Damit ist Unveränderlichkeit nur scheinbar eine zentrale Eigenschaft einer Blockchain. Eine Blockchain soll unveränderlich sein, solange eine Mehrheit gegen eine Änderun ist. Und das schließt das erfolgreiche Durchführen einer Hard-Fork im Allgemeinen nicht aus, sie erfordert schließlich eine Mehrheit der entsprechenden Community-Teilnehmer (bzw. einer Mehrheit der Miner/Stakeholder und der Akzeptanz der Nodes). Man muss da differenzieren wann eine Hard-Fork sinnvoll ist und wann nicht. Und man übertreibt in meinen Augen kräftig, wenn man sagt, dass man selbst in diesem besonderen Fall die Unveränderlichkeit der Blockchain durchsetzen möchte und gegen die Hard-Fork ist. Keiner hätte Nutzen davon, die eingefrorenen Token nicht wieder zu holen, aber der Schaden wär gewaltig. Und darüber hinaus gibt es nicht nur einen Vertrauensverlust für die Community wenn diese Hard-Fork durchgeführt wird. Der Verlust des Vertrauens der Leute, die ihre Token/Coins durch diesen Bug verloren haben und der weitere Verlust des Vertrauens aufgrund der Signalwirkung dieses Ereignisses sollte nicht unterschätzt werden.

  2. Ich weiß nicht wieso man jetzt keine Hardfork machen sollte. Die “immutable ledger” und “code is law” hat man doch schon mit dem DAO Hardfork faktisch aufgegeben.

    Bitcoin hätte 2013 mit der MtGox Pleite auch hardforken und die Opfer entschädigen können. Das war aber schon 2013 bei Bitcoin undenkbar und ist heute quasi unmöglich.

  3. Damals haben sich mit ETC die “Fundamentalisten” abgespalten. Jetzt müssten doch die “Pragmatiker” auch relativ einig sein, dass man hier forken sollte. Ein weiterer Split scheint daher weniger weniger wahrscheinlich.

    Ich persönlich bin mir nicht sicher, was der beste Weg ist. Ethereum scheint ja keinen Anspruch zu haben, die “Cash Coin” zu werden. Vllt. ist daher absolute Unveränderbarkeit weniger ein Problem. Man nimmt auch ansonsten sehr große Risiken in Kauf wie z.B. den Wechsel zu Proof of Stake.

  4. Das Argument, dass auch alle Tokens forken, ist wohl das stärkste Argument gegen die Änderung. Das Ökosystem ist inzwischen so unübersichtlich geworden, dass man gar nicht beurteilen kann, was einen Token auf die eine oder andere Chain zwingt. Das muss auch gar nichts mit der Chain selbst zu tun haben. Es reicht ja schon wenn ein paar wenige dagegen anstinken. Klar, die meissten würden einfach weitermachen wie bisher. Die wenigen anderen hingegen würden forken und damit fliegt dann die Schei… in den Ventilator.

    • Nix neues….für mich hat BTC schon immer einen Kurs von 1Mio…vorher verkaufe ich nicht 😉

      Nee, mal ernsthaft: Das der Euro wackelt ist nix neues. Ob BTC sechsstellig wird oder nicht kann niemand sagen.
      Um es mal mit der “Old-Economy” zu vergleichen: Niemand seriöses faselt davon, dass der DAX Ende das Jahres auf 20.000Punkte steht. Warum gibt es nur bei den Cryptos immer nur diese selbsternannten Klugschei…..

      Solches Gelaber ist nur Eigenwerbung und soll unbedarfte in dazu bringen in BTC zu gehen. Und wenn es nicht eintrifft redet man in einem Jahr nicht mehr darüber: “Wer war nochmal riedrich und Weik????”

    • Fabian Suhr // 25. April 2018 at 16:23 // Reply

      Das kann durchaus sein, dass der Bitcoin am Ende des Jahres bei 16.500 EUR (20.000 USD) steht, wie die Bestseller-Autor Mark Friedrich das im Interview prophezeit. Dem gebe ich eine Wahrscheinlichkeit von 20%. Meiner Meinung nach ist es aber viel wahrscheinlicher, dass er den ganzen Sommer so um die 8.200 EUR Marke herum pendelt, dann langsam aber stetig zwischen September bis November fällt und am Ende des Jahres bei ca. 5.000 EUR steht. Dem Szenario gebe ich eine Wahrscheinlichkeit von 40%, also doppelt so hoch wie von dem Bestseller-Autor prophezeiten 16.500 EUR. Die ganz hohen Kurse kommen dieses Jahr nicht mehr. Für den Rest des Jahres ist meiner Meinung nach ein laaaanges Bottom-Out / Seitwärtsmarkt angesagt. Diese Phase hat gerade erst angefangen. Das Problem ist: Niemand, kein Experte der Welt weiß wirklich, was passieren wird und kann es gar nicht wissen, auch wenn sie noch so viele tolle Interviews geben. Es kann wirklich alles passieren. Deswegen ist es so spannend 😉

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s