Was ist das genaue Konsensprotokoll, das Ripple verwendet? [abgeschlossen]

Ripple nimmt angeblich Transaktionen mithilfe eines Konsensprotokolls in das Ledger auf. Ich habe überall nach einer klaren, formalen und präzisen Spezifikation des Protokolls gesucht und konnte keine finden.

Mehrere verwandte Fragen, z.

Was sind die Vor- und Nachteile von Ripples Konsens im Vergleich zu Bitcoins Proof-of-Work?

und

Wie löst Ripple das Double-Spend-Problem?

Geben Sie nur eine vage Beschreibung an. Genauer gesagt versuche ich, die Essenz des Konsenses zu verstehen: Was passiert, wenn das Ripple-Netzwerk in zwei Hälften geteilt wird (zum Beispiel wenn alle Kommunikationsleitungen zwischen Europa und den USA plötzlich nicht mehr funktionieren) und jede Hälfte des Netzwerks ein Hauptbuch genehmigt mit einer widersprüchlichen Transaktion. Was passiert, wenn das Netzwerk wieder verbunden wird? Wie werden die widersprüchlichen Ledger gelöst?

Antworten (1)

Wenn sich das Ripple-Netzwerk in zwei Hälften aufteilt, validiert jede Hälfte die Ledger unabhängig voneinander, möglicherweise mit widersprüchlichen Transaktionen. Wenn alle Server richtig konfiguriert sind, werden sie keines dieser Ledger als vollständig validiert akzeptieren, da keines von ihnen ausreichende Validierungen haben wird. Es ist möglich, dass beide Seiten denken, dass sie in der Minderheit sind (wenn die Aufteilung nahe bei 50/50 liegt).

Dies spiegelt ein grundlegendes Ripple-Designprinzip wider – sagen Sie den Leuten nicht, dass sie sich auf Ergebnisse verlassen können, wenn die Ergebnisse unzuverlässig sind. Wenn die Bedingungen einen zuverlässigen Betrieb unmöglich machen, ist es besser, nicht zu operieren, als Menschen Ergebnisse zu liefern, auf die sie sich nicht verlassen können. Ripple wurde entwickelt, um diese Art von Bedingungen zu erkennen.

Wenn das Netzwerk wieder beitritt, sehen die Server die andere Ledger-Kette. Sie werden nach und nach mit mehr Validierungen in die Kette stürzen, bis die eine oder andere Kette eine übergroße Mehrheit an vertrauenswürdigen Validierern hat. Dann ist sich das Netzwerk wieder einig und alle können sich wieder auf die Ergebnisse der Transaktionen verlassen.

Bedeutet dies, dass bei einer 80-20-Spaltung, dass die 20%-Seite weiß, dass sie in der Minderheit sind, und effektiv aufhören wird zu funktionieren (wird nicht behaupten, dass sie zuverlässige Hauptbücher haben), bis sie wieder zusammenkommen, während die 80%-Seite funktionieren wird wie normal? So ist eine Aufteilung von fast 50-50 schlecht, weil entweder (bei richtiger Konfiguration) beide Seiten denken, dass sie in der Minderheit sind und das gesamte Netzwerk stoppt, oder (bei falscher Konfiguration) beide Seiten denken, dass sie in der Mehrheit sind und versuchen, normal weiterzumachen, was Kummer verursacht wann wieder beigetreten?
@dchapes Genau. Wenn ein zuverlässiger Betrieb nicht möglich ist, ist kein Betrieb besser als ein unzuverlässiger Betrieb. Wenn Sie nicht wissen, dass Sie in der Mehrheit sind, können Sie nicht zuverlässig arbeiten. Es ist schwer vorstellbar, was eine Aufteilung von fast 50:50 (Naturkatastrophe?) verursachen würde, aber ja, das würde sicherlich eine zuverlässige Lösung des Problems der doppelten Ausgaben unmöglich machen.
Zwei Kommentare / Fragen: 1. Ihre Antwort legt nahe, dass Dinge, die zuvor als im Ledger betrachtet wurden, nach einiger Zeit (nach einem Netzwerkbeitritt) entfernt werden können (ähnlich wie bei Bitcoin). Habe ich recht? Gibt es einen Punkt, an dem man sagen kann, dass dies mit geringer Wahrscheinlichkeit passieren wird, ohne den vollständigen Zustand des Netzwerks zu beobachten? 2. Kann der Vertrauensgraph nicht so sein, dass beide Seiten glauben, dass sie in der Mehrheit sind, und so die Inkonsistenz aufrechterhalten?
1. Ja. Wenn man einen repräsentativen Satz von Validierern auf seiner UNL hat, hat eine Supermajority von Validatoren auf Ihrer UNL dieses Ledger validiert, und eine Supermajority von Validatoren auf Ihrer UNL hat erklärt, dass sie auch eine Supermajority (der Knoten auf ihren UNLs) sehen, die dies bestätigen gleiches Hauptbuch. 2. Nur wenn der Vertrauensgraph sehr kaputt ist. Es braucht nur sehr wenig Überlappung, um sicherzustellen, dass dies nicht passiert, und noch weniger, um zu wissen, wann Sie gefährdet sind. (Sie können eine Frage dazu stellen, wie wir dies vermeiden wollen, und ich kann in einer Antwort weitere Einzelheiten nennen.)