Die Vertrauensmaschine - Teil1: Sybil-Schutz

02. Jun'21

Übersetzung des Blogartikel von Autor Hans Moog, IOTA Foundation.


Entwurf einer geisteswissenschaftlichen Vertrauensschicht für die digitale Welt


Dies ist der erste einer Reihe von Blog-Beiträgen, die nach und nach die Konzepte und Ideen hinter einer neuartigen DLT-Architektur vorstellen werden, die darauf abzielt, alle bestehenden Ineffizienzen heutiger DLTs zu lösen.

Das aktuelle Bestreben der IOTA Foundation ist es, das Netzwerk auf eine sichere Art und Weise dezentralisiert zu machen, daher haben wir uns zunächst auf geprüfte Prinzipien konzentriert. Mit Nectar (IOTA 2.0 DevNet) um der Ecke werden wir endlich die Zeit haben, jeden einzelnen Baustein anzuschauen und Schlüsselelemente zu verbessern oder zu vereinfachen.

Ich glaube, dass der sichere Weg definitiv die beste Option für ein Projekt von der Größe IOTAs ist, aber ich glaube auch, dass Coordicide nicht das Ende des Weges ist, sondern erst der Anfang.


Alle Konzepte und Ideen, die ich beschreiben werde, sind sehr radikal und nicht durch umfangreiche Simulationen oder Forschung untermauert. Sie sind stark inspiriert von Gesprächen mit den frühen Entwicklern von IOTA wie Paul Handy oder Come from Beyond, daher wird dies ein Versuch sein, eine vollständige und klare Spezifikation meiner Vision der "ultimativen" Version von IOTA zu entwickeln.


Der Grund, warum IOTA so lange gebraucht hat, um dezentralisiert zu werden, ist, dass wir keine Abkürzungen nehmen wollten. Das Netzwerk, das wir entwerfen werden, wird nicht nur schneller und einfacher sein, sondern auch effizienter, sicherer, robuster, dezentraler und skalierbarer als jede bestehende Technologie.

Der erste Teil dieser Serie behandelt das Problem des Sybillenschutzes, das derzeit von den meisten Projekten noch nicht einmal als tatsächliches Problem wahrgenommen wird und das ich für den Grund halte, warum die heutigen DLTs so schwer zu skalieren sind.



Die Gesellschaft ist das erste dezentralisierte Netzwerk

Wenn wir Menschen als Nodes sehen, die miteinander transagieren und über Klatsch und Tratsch kommunizieren, dann wurde das Skalierbarkeits-Trilemma bereits vor zehntausenden von Jahren mit dem Aufkommen der ersten Gesellschaften gelöst.

Die Gesellschaft skaliert, weil sie einen Weg gefunden hat, ehrliche und böswillige Akteure zu unterscheiden. Sie verwendet einen Mechanismus namens Vertrauen, was ein lustiger Name für:

"Ich denke, dass jemand besser dran ist, wenn er ehrlich ist, als wenn er mich betrügt, denn er würde entweder seinen Ruf verlieren, mit rechtlichen Konsequenzen rechnen müssen oder auf die guten Dinge verzichten, die ich bereit wäre, für ihn zu tun."

Diese intuitive Wahrnehmung der Spieltheorie der realen Welt in Kombination mit der Zeit bildet die Grundlage für ein Reputationssystem (Vertrauen), das uns erlaubt, komplexe Gesellschaften aufzubauen, obwohl unsere Fähigkeit, andere Individuen kennenzulernen, begrenzt ist.

Es erfasst alle Arten von menschlichen Beziehungen, von Familie und Freunden bis hin zu Beziehungen zwischen Unternehmen, Konzernen und Nationalstaaten.


Schauen wir uns ein Beispiel an:

Wenn Audi die Autos, die die Leute kaufen, nicht liefern würde und stattdessen einfach ihr Geld klaut, dann könnten sie nicht mehr lange Autos verkaufen und würden sehr schnell das Vertrauen verlieren. Es ist also in ihrem eigenen Interesse, ehrlich zu sein und ihr Geschäft weiterzuführen.


Virtuelles Vertrauen in der digitalen Welt

Bitcoin und der dazugehörige Proof of Work schaffen es, einen ähnlichen Mechanismus in der digitalen Welt zu imitieren. Ein Miner, der Zugang zu einer bestimmten Menge an Hash-Power hat, ist immer besser dran, das Netzwerk zu sichern, als es anzugreifen.

Bitcoin ist äquivalent zu einer Gesellschaft, die sich auf eine Regel geeinigt hat, die besagt, dass, wann immer jemand eine wirtschaftliche Tätigkeit ausüben will, er zuerst eine Firma finden muss, die bereit ist, ein Loch zu graben, in das er seine Quittung legen wird.

Da das Graben ein lukratives Geschäft ist, konkurrieren die Grabungsfirmen darum, immer größere Löcher zu graben, was zu Problemen für die Umwelt führt.


Proof of Stake versucht, diese Ineffizienzen zu lösen, indem es stattdessen reiche Leute dafür bezahlt, Transaktionen zu bestätigen. Das ist in der Tat energieeffizienter, aber es bringt seine eigenen Kompromisse und Auswirkungen auf das entstehende System mit sich:

  • Die Reichen werden immer reicher.
  • Wenn die Reichen jemals beschließen, jemanden zu zensieren oder die Geschichte zurückzudrehen, dann haben wir nicht mehr die ausgehobenen Löcher, um die Menschen von der Wahrheit zu überzeugen.

Niemand würde aus offensichtlichen Gründen eine Gesellschaft in der realen Welt nach diesen Prinzipien aufbauen, aber wenn es darum geht, eine offene und erlaubnisfreie DLT zu sichern, gilt der Nachweis des Zugangs zu einer knappen Ressource als das Beste vom Besten.

Diese Art des Angriffsschutzes ist aber nicht nur sehr umständlich und ineffizient, sondern hat auch noch einige andere Probleme:


1. Es ist schwer zu sharden.

Da die Verarbeitungskapazitäten der Nodes durch ihre Hardware begrenzt sind, ist die einzige Möglichkeit, ein DLT zuverlässig zu skalieren, das Sharding.

Beim Sharding verteilen die Nodes die Gesamtmenge der Arbeit auf alle Netzwerkteilnehmer, so dass jeder Node nur eine Teilmenge aller Transaktionen verarbeiten muss.

Nur eine Teilmenge aller Transaktionen zu sehen, bedeutet automatisch: nur eine Teilmenge der Aussagen der Validierer zu sehen. Wenn Hash-Power oder gestackte Token wie eine Mauer gesehen werden können, die das DLT schützt, dann bedeutet Sharding, dass man diese Mauer in viele kleinere Stücke aufteilen muss, die dann zum Aufbau der Mauern der zusätzlichen Shards verwendet werden.

Wenn die Menge der Shards sehr groß wird, dann wird die Mauer irgendwann so klein, dass sie praktisch nicht mehr existiert. Dieses Problem ist als das Skalierbarkeits-Trilemma bekannt.

Zeitgenössische DLTs versuchen, dieses Problem zu umgehen, indem sie die Validatoren in regelmäßigen Abständen zufällig zwischen den Shards hin- und her teleportieren lassen, was es schwieriger macht, einen Angriff zu planen.

Dies verkompliziert nicht nur die Protokolle erheblich, sondern löst auch nicht wirklich das zugrundeliegende Problem. Sharding kann nur dann zuverlässig bis zu einer beliebigen Größe funktionieren, wenn das Erzeugen neuer Shards die Höhe der Mauer nicht verringert.


2. Sie schließen eine Menge ehrlicher Akteure aus

Wenn die Teilnahme als Prüfer auf den Zugang zu einer knappen Ressource beschränkt ist, dann schließen Sie automatisch eine Menge Prüfer aus, die einfach zu arm, aber ansonsten vollkommen ehrlich sind.


3. Größenvorteile führen zu zunehmender Zentralisierung

Alles, was auf einer knappen Ressource basiert, begünstigt automatisch Akteure, die einen besseren oder billigeren Zugang zu der zugrunde liegenden Ressource haben.

Dieser Kostenvorteil für den Betrieb eines Validators führt zu einer Zentralisierung der Macht um die Akteure mit dem billigsten Zugang zu der zugrunde liegenden Ressource.


4. Die Spieltheorie ist nicht immer gültig

Menschen sind nicht immer rationale Spieler (im Kontext der Spieltheorie), was bedeutet, dass es Situationen geben kann, in denen sie von dem erwarteten Verhalten abweichen.

Beliebte Beispiele sind das übliche "Pistole auf den Kopf" sowie das "Ich will die Welt brennen sehen"-Szenario, bei dem sehr mächtige Akteure "unerwartet" einen Anreiz haben, das Protokoll zu brechen.

Je zentralisierter das System ist, desto schlimmer werden diese Probleme.


5. Das Netzwerk ist von außen angreifbar

Da es möglich ist, die Ressource, die als Sybil-Schutzmechanismus verwendet wird, im Geheimen zu erwerben, könnte ein sehr mächtiger Angreifer in der Lage sein, das System zu brechen, wenn er bereit ist, genug Geld auszugeben (z. B. vor einem Krieg). Das Netzwerk würde dadurch komplett unbrauchbar gemacht werden.



Reales Vertrauen in der digitalen Welt

Wir haben die Probleme des virtuellen Vertrauens in der digitalen Welt diskutiert, aber was ist mit dem realen Vertrauen?

Vertrauen ist nicht auf die reale Welt beschränkt. Tatsächlich vertrauen wir jedes Mal, wenn wir etwas online kaufen, dem Händler, dass er die Ware liefert. Darüber hinaus ist Vertrauen nicht nur auf eine 1 zu 1 Beziehung zwischen zwei Gleichgestellten beschränkt. Es kann auch komplexe Netzwerke bilden.

Lassen Sie mich ein Beispiel nennen: Ich hatte einmal die Gelegenheit, mit einem der Gründer von AirBNB zu speisen (lange bevor es groß war). Und zufälligerweise saß am gleichen Tisch wie wir ein Typ, dem eine große Hotelmarke in den USA gehörte.

Als wir über die Ideen hinter AirBNB diskutierten, sagte er, dass er sich zu 100% sicher sei, dass ein solches System niemals funktionieren würde. Er betreibt seit Jahrzehnten Hotels und konnte uns aus erster Hand berichten, dass Gäste dazu neigen, schrecklich zu sein. Sie klauen regelmäßig Geräte oder zerstören sogar Hotelzimmer.

Wie sich herausstellte, lag er falsch und die Einführung eines Reputationssystems, das ehrliches Verhalten mit so etwas Einfachem wie gelben Sternen honoriert, reichte aus, um das dem Untergang geweihte Unternehmen in eine Goldmine zu verwandeln.

Was die gelben Sterne bewirken, ist, dass sie es zwei Menschen, die sich sonst nicht kennen, ermöglichen, eine Vertrauensbeziehung aufzubauen, die auf den vergangenen Erfahrungen anderer Mitglieder der gleichen Plattform basiert. AirBNB wird zum Mittelsmann für den Aufbau dieser Vertrauensbeziehung.


Verteiltes Vertrauen als Mittelsmann

DLTs funktionieren ganz ähnlich - sie fungieren als Mittelsmann zwischen Parteien, die sich nicht kennen, aber eine Transaktion durchführen wollen. Im Gegensatz zu AirBNB vertrauen wir jedoch nicht einer einzelnen Entität, sondern wir vertrauen dem Protokoll und verteilen das Vertrauen auf die Validierer.

Das Schöne an der Verwendung eines solchen Protokolls ist, dass es viel schwieriger ist, Vertrauen zu missbrauchen. In der realen Welt haben wir regelmäßig Dinge wie Korruption, wo Menschen das Vertrauen, das andere in sie setzen, missbrauchen, um schlechte Dinge zu tun, aber das ist nur eine Folge von zu wenig Überwachung durch die Gesellschaft.

Gute Beispiele sind Wirecard oder Enron. Wenn deren Bücher offen und für jeden zugänglich gewesen wären, hätten sie keine Chance gehabt, damit durchzukommen. Es ist diese Tatsache, dass die Dinge in einer DLT "out in the open" passieren, die sie so sicher macht.

Akteure handeln nur dann böswillig, wenn es eine Chance gibt, dass sie damit durchkommen. Je mehr Validatoren es gibt, desto schwieriger wird es, damit durchzukommen und desto unwahrscheinlicher wird es, dass Akteure versuchen, böswillig zu sein, oder mit anderen Worten: Gelegenheit macht den Diebe! Mehr Dezentralisierung ist gut für die Sicherheit.


Vertrauen direkt in die DLT integrieren

Wenn Vertrauen also nicht auf die reale Welt beschränkt ist, warum hat dann noch niemand versucht, ein System zu bauen, das Vertrauen als Sybil-Schutzmechanismus nutzt?

Die Antwort ist einfach: Wir haben derzeit keine Technologie, die leistungsfähig genug wäre, um dies auf eine offene und erlaubnisfreie Weise zu tun. Vertrauen ist zu subjektiv, unscharf und asymmetrisch, als dass wir es ohne weiteres nutzen könnten, um einen Konsens in einer Blockchain zu erreichen.


Die Vorteile eines solchen Systems wären jedoch so riesig, dass ich das sogar sagen würde:

Die erste DLT, die es schafft, reale Weltidentitäten und Vertrauen auf eine offene und erlaubnisfreie Weise als Sybillenschutz zu integrieren, wird alle anderen Kryptowährungen obsolet machen.


Sie wäre nicht nur um Größenordnungen dezentraler, sondern auch um Größenordnungen effizienter und sicherer. Jeder könnte ein Validator sein, auch ohne irgendwelche Token oder teure Hardware zu besitzen.

Das Einzige, was nötig wäre, um ein Validierer zu werden, wäre, eine dezentrale Identität (ein Public/Private-Key-Paar) zu erstellen und den Public Key zu veröffentlichen, damit die Leute wissen, dass diese Identität zum Herausgeber gehört (ganz ähnlich, wie man seine Telefonnummer mitteilt).

Node-Betreiber können dann Public Keys von Akteuren, denen sie vertrauen, zu einer lokalen Liste von vertrauenswürdigen Entitäten hinzufügen. Diese Liste ist völlig subjektiv und in ihrer Größe nicht begrenzt. Sie kann alles enthalten, von Familie und Freunden, über Kollegen und lokale Unternehmen bis hin zu Akteuren wie Regierungen und internationalen Organisationen. Es liegt ganz im Ermessen des Node-Betreibers zu entscheiden, wen er für vertrauenswürdig hält.

Um das Protokoll zu brechen, müsste ein Angreifer mehr als 50 % aller vertrauenswürdigen Akteure eines Nodes korrumpieren. Je mehr Leute anfangen, IOTA zu benutzen und ihre dezentrale Identität veröffentlichen, desto mehr Möglichkeiten gibt es, vertrauenswürdige Akteure auszuwählen und desto sicherer wird das Netzwerk.

Aber selbst eine Situation, in der es jemand schafft, mehr als 50% der vertrauenswürdigen Nodes zu korrumpieren, ist nicht wirklich ein Problem, weil es möglich ist, die Liste zu bearbeiten und den Angriff zu ignorieren. Dies macht das Netzwerk praktisch unangreifbar. Da IOTA eine Datenstruktur verwendet, die über jede einzelne Transaktion individuell abstimmt, ist es sogar möglich, einzelne Entscheidungen rückgängig zu machen, ohne andere Transaktionen zu beeinflussen (wenn es einen sozialen Konsens gibt, dass dies getan werden soll).

Dies ist ein sehr mächtiges Konzept, weil es die kaltherzigen "Code is law"-Prinzipien zu einem "Code is law" mit sozialer Kontrolle abschwächt.

Stellen Sie sich vor, ein Smart Contract wird gehackt, der die Rentenfonds eines ganzen Landes verwaltet. Mit IOTA und einem vertrauensbasierten Modell könnte die Gesellschaft als Ganzes entscheiden, einfach eine zweite Ausgabe der gleichen Gelder zurück an den Smart Contract zu geben, und dann genehmigt jeder nur diese Ausgabe stattdessen. Alle anderen Transaktionen sind davon völlig unbeeinflusst.

Es ist wichtig zu beachten, dass Node-Betreiber, die mit dem Rollback nicht einverstanden sind, die Validierer, die ihn durchgeführt haben, einfach aus ihrer Liste entfernen können. Die daraus resultierenden zwei Fraktionen des Netzwerks, die unterschiedliche Auffassungen bezüglich der fraglichen Gelder haben, können immer noch bei allen anderen Zahlungen zusammenarbeiten und müssen nicht das gesamte System hardforken. Stattdessen würden sie einfach gegenseitig keine Zahlungen akzeptieren, die von dem fraglichen Vorfall stammen. Es ist vernünftig anzunehmen, dass die Gesellschaft einen sozialen Konsens finden wird, wie mit der Situation umzugehen ist.

Es ist auch vernünftig anzunehmen, dass die Gesellschaft eine Liste von kollektiv vertrauenswürdigen Entitäten (wie Firmen, Regierungen und so weiter) pflegen würde, so dass auch Node-Betreiber, die nicht zu viel Aufwand in die Pflege dieser Liste stecken wollen, bequem einen Node einrichten könnten.

Wenn wir ein System aufbauen wollen, das reales Vertrauen nutzt, dann glaube ich, dass eine solche subjektiv gepflegte Liste anderer selbsternannter dezentraler Identitäten der einfachste und geradlinigste Weg ist, das Vertrauensnetzwerk auf eine offene und erlaubnisfreie Weise zu modellieren.



Fazit

Wir haben eine "neue" Form des Sybil-Schutzes diskutiert, die das Vertrauen in Identitäten der realen Welt gegen potentielle Angreifer einsetzt.

Durch diesen unkonventionellen Schritt schaffen wir nicht nur ein Netzwerk mit überlegenen Eigenschaften, sondern wir schaffen auch ein mächtiges Werkzeug für die Gesellschaft, um ihre finanzielle Wahrheit in Zeiten der Katastrophe zu verwalten und die digitale Welt zu einer natürlichen Erweiterung der realen zu machen.