Warum Ethereum-Stil Blockchains nicht wirklich dezentralisieren

Ethereum und ähnliche Plattformen beabsichtigen, die Bitcoin-Technologie zu verallgemeinern, indem dem Stapel eine vollständige Turing-Sprache hinzugefügt wird. Die Idee ist, eine mächtige Sprache zur Hand zu haben, mit der alle Arten von Anwendungen implementiert werden können - Bitcoin ist nur die erste App, die wahre Technologie ist die unveränderliche Blockchain und der Konsens über ein verteiltes System.

Bitcoin hingegen unterstützt absichtlich eine sehr spärliche, unvollständige Skriptsprache, um Angriffsvektoren zu vermeiden. Bitcoin ist eine Plattform, die Transaktionen ermöglicht, und die Verallgemeinerung auf eine Anwendungsplattform kann viele interessante Innovationen rund um sogenannte Smart Contracts ermöglichen.

Ironischerweise wird dadurch der Zweck der Dezentralisierung verfehlt, da Anwendungsdaten und -logik auf der Blockchain zentralisiert werden.

Intelligente Verträge mit Code, der unter allen Teilnehmern geteilt wird und nicht geändert werden kann - es sei denn, es gibt einen harten Weg, der die Zustimmung der Community erfordert - und Daten in einem unveränderlichen Hauptbuch können sehr mächtig sein Plattform für bestimmte Anwendungsfälle.

Oft können dies rechtlich relevante Kontexte sein - Verträge, die sich aufgrund von Eingaben durchsetzen (ein Orakel von der Außenwelt, das zum Beispiel eine bestimmte Temperatur an einem bestimmten Ort oder eine erhaltene Zahlung beansprucht) und ein Effekt - wie die Regelung der Energieversorgung oder die Freigabe eines Schlüssels für eine Wohnung. Ursache und Wirkung brauchen keinen Vermittler, keinen Agenten oder ein anderes Rechtssystem als den Smart-Vertrag.

Diese führen nur & ldquo; unaufhaltsam & rdquo; - Wie ein Automat: Legen Sie eine Münze ein und die Mechaniker sorgen dafür, dass Sie Ihre Flasche bekommen und Sie brauchen keinen Laden dazwischen.

Zu ​​untersuchen, wie weit wir diese Idee vorantreiben können, verspricht ein faszinierendes Unterfangen. Beachten Sie, dass dies ein wichtiger, aber eher begrenzter Satz von Anwendungsfällen ist, die wir bisher nicht zufriedenstellend umgesetzt haben, hauptsächlich weil wir keine Plattform haben, die sie ermöglicht. Der Austausch von Daten und Regeln in einer offenen Plattform ist für diesen Anwendungsfall unerlässlich - Regeln und Aktionen müssen überprüfbar sein, während Daten und Code fälschungssicher sein müssen.

Anwendung aktiviert Blockchains zentralisieren Technologie

Dies ist jedoch bei der überwiegenden Anzahl von Anwendungsfällen nicht der Fall. Es ist eine Trivialität, weil wir alle Arten von Anwendungsfällen implementieren, ohne Blockchain-Smart-Contract-Plattformen zu haben. Tatsächlich behaupten wir sogar, dass, wenn wir solche Plattformen haben, es keinen Grund gibt, im Gegenteil alle Anwendungsfälle und Anwendungen auf ihnen zu implementieren, es sei denn, sie haben die sehr spezifischen Eigenschaften, die intelligente Verträge abdecken. Stell dir vor, du entscheidest dich & ldquo; wirklich brauchen & rdquo; einige der Segnungen der verteilten Technologie.Ja, Sie möchten intelligente Verträge, Sie möchten Code, der nach der Bereitstellung nicht geändert werden kann, Sie benötigen eine Krypto-Zahlung, und Sie glauben, dass dies die Zukunft ist.

Weg zu gehen

Sie sind alle bereit für die Dezentralisierung - es klingt wie eine neue und kostenlose und bessere Tech-Utopie für Sie. Aber dann wird dir klar, dass du vielleicht nicht so frei bist, wie du gerne wärst. Denn während Sie in Ihrer eigenen Box jede Sprache, die Sie mögen, jede Datenbank, die Sie mögen, und jedes UI-Framework, das Sie mögen - einige sind seit Jahren bewährt und für einige Ihrer Bedürfnisse spezialisiert - haben, sind Sie in einer dezentralen Plattform fest Solidität, die jemand als Teil einer Gemeinschaft als das & ldquo; Weg zu gehen. & rdquo; Alles schön und respektabel, aber riecht es nicht viel schlechter als eine schlechtere Wahl als zum Beispiel die Wahl einer Amazon-Plattform, bei der man sich zumindest über die Serverzeit entscheiden kann, die man kauft? Die radikalste Form der Dezentralisierung scheint sich nur auf den eigenen Barebone-Server zu stürzen und alles zu schmeißen, was für Sie am besten ist.

Das ist klar, warum brauchen Sie dann eine solche dezentrale Plattform? Die Antwort ist meiner bescheidenen Meinung nach offensichtlich. Wenn Sie den Kontext untersuchen, für den die Plattform mit Bitcoin erfunden wurde:

& ldquo; Ein dezentrales & ldquo; Bitcoin-Stil & rdquo; Plattform ist interessant, wenn und nur wenn Sie Transaktionen mit einem anderen Akteur im Netzwerk machen möchten. & rdquo;

Es macht keinen Sinn, Ihre Daten zu teilen, da keine fälschungssicheren Daten oder Code erforderlich sind, es sei denn, Sie führen Transaktionen mit einem anderen Spieler durch. Eine ganze Menge Ihrer Anwendungsfälle kann vollständig für Sie selbst, Ihre Organisation, sein. Es gibt keinen Grund sie auf eine Blockchain zu legen. Nur Daten, die für mindestens zwei Spieler in einem Netzwerk relevant sind, sollten sogar für eine solche Plattform in Betracht gezogen werden, und Sie beabsichtigen, etwas mit den intelligenten Verträgen zu tun. Um von Beispielen zu sprechen, wenn Sie eine Bestellung von einem Webshop an einen Lieferanten senden - e. G. eine große logistische Party - dann könnte diese Reihenfolge auf einer unveränderlichen Blockchain laufen, die von mehreren Spielern geteilt wird.

Daten sollten unveränderlich sein und es könnte Smart Contracts im Sinne von Code geben, der automatisch ausgeführt wird, wie wenn Sie das Buch, das Sie bestellt haben, aus dem Regal nehmen, sobald eine Zahlung eingegangen ist.

Anwendung aktiviert Blockchains zentralisieren Daten und Logik

Betrachten Sie nun diesen Ansatz, wie eine dezentrale Handelsplattform aussehen würde. Sie nehmen eBay und implementieren es auf einer anwendungsfähigen Plattform neu. Sie entscheiden sich also dafür, sich den Technologie-Patterns zu unterstellen, die diese Plattform befürwortet, weil Sie unveränderliche Transaktionen wünschen und dieses wundervolle DAO-Konzept wollen - keine Ironie, wir beziehen uns auf den ursprünglichen Sinn, in dem Bitcoin eine dezentralisierte autonome Organisation ist, nicht die Ethereum DAO - wiederverwendeter einen demokratischeren und transparenteren und weniger monopolistischen und zentralisierten Ansatz für den Handel.

Es scheint ein offensichtliches Problem und eine offensichtliche Lösung - Blockchains, zumindest in ihrer ursprünglichen Form, teilen Daten, obwohl sie es verschlüsseln können und wir können kluge Entscheidungen treffen, was zu teilen ist und was jeder in der Blockchain herunterladen können sollte .Aber warum sollten Sie Ihre Einkäufe auf einer eBay Blockchain haben, die möglicherweise mit der Welt geteilt wird? Das solltest du nicht, also solltest du hier offensichtlich keine gemeinsame Plattform benutzen. Ist Ihre gesamte Anwendungslogik für den Rest der Welt relevant? Absolut nicht, ein Teil der Transaktionen kann für die Freigabe in einem halböffentlichen Buch zur Verifizierung nützlich sein, aber sicherlich ist dies nur ein kleiner Teil Ihrer Anwendung und all Ihrer anderen Logik - was angeboten wird, wie dem Kunden das nächstbeste angeboten wird Produkt, wie man Kreditkartenzahlungen leistet - hat wirklich keinen Wert auf ein öffentliches Hauptbuch. Mit anderen Worten, wenn Sie Ihre gesamte Anwendung in einer Blockchain platzieren, erstellen Sie einen "Honeypot" von Daten auf einer gemeinsamen Plattform und gleichzeitig belasten Sie die Blockchain mit Daten und Logik, die für niemanden im Netzwerk relevant ist.

Der erste Teil der Plattform - Sie geben zu viele sensible Daten auf einer Blockchain aus - wird oft mit dem Konzept eines & ldquo; Genehmigtes Hauptbuch. & rdquo; Das ist ein Hauptbuch, das nur einem Konsortium zugänglich ist, aber niemand außerhalb dieses illustren Kreises. Obwohl & ldquo; Unveränderlichkeit & rdquo; - weniger Hashing-Power, wenn der Konsens-Mechanismus Arbeitsbeweis ist - könnte & ldquo; weniger unveränderlich, & rdquo; Es kann Fälle geben, in denen dieses Szenario nützlich ist. Manche mögen in der Realität argumentieren, dass man eine gemeinsam genutzte Datenbank mit fortgeschrittenen Auditing- und Logging-Funktionen nutzen könnte, um Fälschungen zu vermeiden. Ich glaube, wir könnten noch einen Schritt weiter gehen und sagen, wenn Sie Daten haben, die Sie nicht teilen wollen, dann verwenden Sie einfach kein verteiltes System. Egal wie schlau und ausgeklügelt Ihre Kryptographie auch sein mag, in einem verteilten System gibt es am Ende des Tages eine Form der gemeinsamen Nutzung von Daten, und wenn Sie nicht wollen, sollten Sie kein verteiltes Hauptbuch verwenden. Anders ausgedrückt sollten Sie Ihre Daten genau mit denen teilen, für die eine Transaktion relevant ist (Ausführen oder Verifizieren), und Sie sollten nur Daten und Logik teilen, die für mehr als einen Akteur im Netzwerk relevant sind. Wenn Sie Ihre gesamte Anwendung auf ein gemeinsam genutztes verteiltes Hauptbuch setzen, verstößt dies fast immer gegen dieses Prinzip und ist daher keine angemessene Architektur. Es kann nützlich sein, ein genehmigtes verteiltes Hauptbuch zu verwenden, einschließlich intelligenter Verträge für Transaktionen zwischen Teilnehmern im Netzwerk, so dass Sie steuern können, wer was mit teilweiser Freigabe sieht - z. G. Hash-Fingerabdruck einer Transaktion - und erweiterte Kryptographie.

Eine dezentrale Vision

Wenn Sie das alles nicht überzeugen könnte und Sie glauben, Blockchain ist irgendwie das & ldquo; nur & rdquo; gehen Sie auf die Prämisse, dass es so neunzig ist und Sie können sich nicht ernsthaft für die Unterstützung zentralisierter Clouds wie Amazon Web Services einsetzen, bedenken Sie diesen Punkt:

& ldquo; Wäre es für ein dezentrales Paradigma nicht selbstverständlich, so viele unterschiedliche Technologie- und Governance-Ansätze wie möglich zuzulassen? & rdquo;

Eine dezentralisierte Vision sollte so viele unterschiedliche Technologie- und Governance-Ansätze zulassen, wie sie existieren.

Wenn jemand seinen COBOL vor Ort oder auf seiner Amazon Cloud-Plattform bevorzugt, sollte es nicht die dezentralisierte Wahl dieser Person sein, sie zu verwenden, unabhängig davon, ob diese Anwendung vollständig mit ihm zentralisiert ist? Es mag perfekte Gründe geben wie: "Ich muss die meisten meiner Daten hinter meiner Firewall behalten" oder "Python auf Heroku ist einfach das Beste - zumindest unser Team brilliert auf dieser Plattform" oder "Ich mag Solidität als Sprache nicht , diese anmaßende Metapher von Ethereum "Weltcomputer", "dieses DAO-Drama, usw."

Ich denke, dass die Antwort aus einer Dezentralisierungsperspektive nur "ldquo" sein kann. JA! NA SICHER! & rdquo; Wir sollten so viele technologische Paradigmen wie möglich haben und diese sollten für verschiedene Kontexte konkurrieren, und verschiedene Stapel werden nützlich sein.

Datenformat Problem

Anwendung aktiviert Blockchains bewältigen kaum das & ldquo; Datenformatproblem & rdquo; - Aber sie sollten!

Wenn Sie dieses Urteil akzeptieren und Sie sollten, verschiebt sich der Fokus und das "echte" Problem der Dezentralisierung ist ein bekanntes Problem, das normalerweise als "ldquo" bezeichnet wird. Integration. & rdquo; Im Kern geht es darum, das Problem zu lösen, dass verschiedene Anwendungen oft sprechen, die oft dasselbe betreffen - i. e. ein Client, eine Bestellung - aber unterschiedliche Datenformate, unterschiedliche Nachrichtenformate und unterschiedliche APIs, um diese beim Informationsaustausch anzugehen. Es gibt keinen automatisierten Weg diese zu übersetzen - normalerweise müssen Menschen & ldquo; Code hoch & rdquo; eine Lösung, die langweilig sein kann und es ist tatsächlich die Basis einer großen Industrie, die großen Unternehmen mit Produkten wie & ldquo; hilft; Middleware & rdquo; oder & ldquo; Enterprise Services Bus. & rdquo;

Das Dezentralisierungs-Ökosystem betrachtet dieses Problem aus irgendeinem Grund nicht einmal. Angeblich könnte dies aufgrund eines falschen Gefühls von & ldquo; wir dezentralisieren genug! & rdquo; Das von Bitcoin verliehene Konzept der Minenarbeiter, der Konsens und ein verteiltes System können dazu beitragen, dass Code fälschungssicher und unveränderbar gemacht wird und das Governance-Konzept einer dezentralen Autonomen Organisation entsteht - was sonst?

Dies ist jedoch wirklich nur & ldquo; Dezentralisierung von innen & rdquo; - Es ist, als ob Google beschlossen hätte, auf die positive Seite zu gehen und ihre internen Abteilungen demokratisch und konsensorientiert zu reorganisieren und Nutzer und Kunden mehr nach ihren Meinungen zu fragen.

Es wäre eine gute Sache, aber es bedeutet wirklich nicht so viel für den Benutzer einer Plattform - wenn das Ethereum-Ökosystem sich dafür entschieden hat, zivilisiert zu sein und entschieden hat, ob wir eine harte Abzweigung machen oder was wir sind gehen zu Sprache & ldquo; xyz & rdquo; jetzt und aus unseren Fehlern der Festigkeit lernen, dann ist das gut zu wissen, aber von der & ldquo; draußen & rdquo; Es spielt keine Rolle, ob einige führende CIOs beschlossen haben, einige Wachstums- und Umsatzzahlen zu erfüllen.

Was Sie stattdessen möchten, ist die völlige Autonomie Ihrer Anwendung, Governance und Ihres Transaktionsmodells. Sie wählen die Plattform, die Sie mögen, und um den Transaktionsteil zu erleichtern, sollten Sie ein verteiltes Hauptbuch verwenden, das so nahtlos ist und so viele Vorteile bietet - i.e. Unveränderbarkeit, fälschungssichere, reiche und sichere Sprache, um intelligente Verträge zu schreiben - so gut wie möglich. Hier besteht für die Transaktionsabwicklung eine Abhängigkeit vom Ökosystem. Vielleicht bevorzugen Sie Ihre & ldquo; freundlich, & rdquo; dezentralisierte autonome Organisation über ein & ldquo; Hai CEO & rdquo; - aber Sie könnten immer noch überstimmt werden, also benutzen Sie das nicht zu oft! Die gute Nachricht ist, dass es sich wirklich nur um diesen kleinen, wenn auch sehr wichtigen Teil Ihrer Bewerbung handelt, bei dem Sie mit anderen zusammenarbeiten.

Verallgemeinern von Bitcoin

Vor diesem Hintergrund könnte man Bitcoin als eine Transaktionsplattform im Gegensatz zu einer Anwendungsplattform betrachten und versuchen zu verallgemeinern, welche Informationen zwischen Endpunkten übertragen werden können - wir würden es nicht tun Mich interessiert nicht die Frage, welche Anwendungslogik auf der Blockchain laufen könnte, sondern welche Informationen wir über eine dezentrale Plattform zwischen Endpunkten austauschen können. Solche Szenarien können für den Handel zwischen Parteien nützlich sein.

Tatsächlich dient die Schwierigkeit, Transaktionen im Internet zwischen Parteien auszuführen, als ein & ldquo; Eingangstür & rdquo; für viele zentrale Plattformen.

Stellen Sie sich eine Welt vor, in der Anwendungen nahtlos miteinander kommunizieren können, da wäre etwas Magie & ldquo; Babelfish & rdquo; Übersetzen von Nachrichten zwischen Systemen - wie einfache Websites von Einzelpersonen anbieten und verkaufen - zuverlässig und wir könnten sogar Transaktionen tätigen - Ich bestelle Ihr Zimmer für Nächte xyz zum Preis abc von Ihnen - in einem unveränderlichen Transaktionslog, wo einige intelligente Verträge - der Schlüssel zu meinem Flat wird aktiviert, nachdem ich einen X-Betrag erhalten habe - führt seine Magie aus.

Würden wir Airbnb immer noch in dieser Welt benutzen? Oder brauchst du eBay? Vielleicht nicht, vielleicht würden wir es tun.

Aber zweifellos, die Notwendigkeit, Airbnb oder eBay oder Uber als einen virtuellen Ort zu verwenden, wo Leute & ldquo; virtuell treffen & rdquo; und Geschäfte wären viel weniger dringend. Plattformen wie Airbnb - oder Uber oder eBay oder Facebook - haben eine ähnliche Position wie Banken, indem sie Menschen die Kommunikation und Transaktion ermöglichen und über diese Position als Mittelsmann ein ganzes Ökosystem dominieren, vermutlich auch zu "rapid". groß von einem Schnitt & rdquo; der Transaktion.

In jüngster Zeit gibt es Bemühungen von Konsortien und Gremien wie dem W3C, die Interkommunikationsformate zu standardisieren, um die Kommunikation zwischen Blockchains und Anwendungen zu standardisieren. Der Ansatz besteht darin, zwischen Menschen zu vereinbaren, mit welchen Datenformaten interoperiert werden soll. Dieser Ansatz ist der Standardansatz - es ist im Grunde der einzige Ansatz zu & ldquo; Machen Sie Anwendungen sprechen & rdquo; und wird intern in jedem großen Unternehmen verwendet, um verschiedene Anwendungen zu verbinden. Versuche, die Kommunikation mit offenen Standards zu standardisieren, sind lobenswert, haben aber den bedauerlichen Nebeneffekt, dass sie mit ihren Boards und Prozessen Innovationen ersticken. Wenn es keinen akzeptierten Standard gibt, wie SMTP oder HTTP, aber der Markt ist lukrativ genug - teilen Sie Ihre Wohnung oder bieten Sie eine Autofahrt an - Sie sehen große Monopole, die Standards auf ihren Plattformen etablieren und Teilnehmer nach ihren Regeln zwingen.

Das ist das andere Dezentralisierungsproblem - wie können wir Anwendungen so nahtlos und zuverlässig miteinander kommunizieren lassen, dass es kein & ldquo; übersetzen Vermittler & rdquo; erforderlich. Dezentrale Bücher können zu dieser Architektur beitragen.


Folge uns auf Facebook


  • Ethereum News
  • Dezentralisierung