Werden die Kanalsalden in Echtzeit im Lightning Network öffentlich bekannt gegeben?

Wird das Guthaben im Lightning Network in Echtzeit öffentlich bekannt gegeben?

Einerseits sollte es öffentlich sein, da es für den Routing-Mechanismus entscheidend ist.

Aber für den Fall, dass das Guthaben dem Netzwerk einige private Informationen preisgeben könnte.

Ich habe die Antwort in der BOLT-Dokumentation nicht gefunden.

Vielen Dank.

Antworten (2)

Kanäle geben ihr Guthaben aus mehreren offensichtlichen Gründen nicht öffentlich bekannt

  • Es wäre ein großes Datenschutzproblem, wenn Salden live im Netzwerk angezeigt werden könnten. Menschen könnten große Teile des Netzwerks überwachen und Daten darüber sammeln, wie sich Guthaben im Laufe der Zeit ändern, die dann verwendet werden könnten, um Zahlungen über das Netzwerk zu verfolgen und Benutzer zu deanonymisieren.

  • Wenn jede Transaktion durch jeden Knoten eine Übertragung des neuen Kanalsaldos erfordern würde, würde die Bandbreitennutzung extrem groß werden. Das Netzwerk würde aus denselben Gründen nicht skalieren, aus denen Bitcoin keine massiven Blöcke haben kann. Es würde das Betreiben eines Knotens auf einem handelsüblichen Computer und einer Internetverbindung unmöglich machen.

  • Das Übertragen von Kanalabgleich wäre wirklich ziemlich nutzlos, da das Konzept von "Echtzeit" in einem verteilten Netzwerk nicht existiert. Ein Knoten könnte seine Kanalsalden seinen Peers mitteilen, aber bevor irgendein Peer die Möglichkeit hat, auf diese Daten zu reagieren, könnten sich diese Salden geändert haben, wenn sie eine Zahlung für einen anderen Peer weiterleiten. Das System ändert sich ständig, und es gibt keine Möglichkeit, den Saldo eines Kanals atomar zu prüfen und dann eine Zahlung über diesen Kanal zu senden. Es wäre eine schlechte Idee, zu versuchen, solche Sperren hinzuzufügen, da es keinen zentralen Koordinator für sie gibt, und dies dazu führen würde, dass alle Arten von Rennbedingungen auftreten, wie Livelocks und Deadlocks.

Kanäle werben nur mit ihren Kapazitäten, Funktionen, Gebühren, minimalen und maximalen (optionalen) Transaktionswerten. Es gibt keine Garantie dafür, dass eine Zahlung erfolgreich weitergeleitet wird, selbst wenn Sie einen gültigen Betrag zwischen dem Minimum und dem Maximum mit den richtigen Gebühren angegeben haben.

Die Kanalbilanz ist keine öffentliche Information. Wenn Sie sich das channel_announcement-messagein BOLT7 ansehen, sehen Sie, dass die folgenden Informationen des Kanals öffentlich sind:

[64:node_signature_1] [64:node_signature_2] [64:bitcoin_signature_1] [64:bitcoin_signature_2] [2:len] [len:features] [32:chain_hash] [8:short_channel_id] [33:node_id_1] [33:node_id_2] [33:bitcoin_key_1] [33:bitcoin_key_2]

Dort können Sie weder Kapazität noch Saldo sehen, aber die short_channel_id besteht aus der Blockhöhe der Finanzierungstransaktion und dem Index der Transaktion und dem Index der Ausgabe innerhalb der Transaktion, wie hier beschrieben .

Auch von BOLT7 können Sie das folgende Zitat über die nehmen channel_update_message:

Beachten Sie, dass das htlc_maximum_msatFeld im aktuellen Protokoll über die Lebensdauer des Kanals hinweg statisch ist: Es ist nicht dafür ausgelegt, die Kanalkapazität in Echtzeit in jeder Richtung anzuzeigen, was sowohl ein massives Datenleck wäre als auch das Netzwerk nutzlos spammen würde (es dauert durchschnittlich 30 Sekunden für Klatsch, um jeden Hop zu verbreiten).

Ich hoffe, beide Punkte geben Ihnen eine eindeutige Antwort (: