Wie setzen bestehende Anwendungen auf der Ethereum-Blockchain die Vertraulichkeit von Daten durch?

Wie setzen aktuelle Anwendungen auf der Ethereum-Blockchain die Vertraulichkeit von Daten durch?

Ich weiß, dass der Status eines Vertrags für jeden Knoten im Netzwerk sichtbar ist. Bedeutet dies, dass es keine Möglichkeit gibt, vertrauliche Daten auf der Blockchain zu speichern und durchzusetzen?

Ist die einzige Möglichkeit, wie Anwendungen vertrauliche Daten speichern und übermitteln können, diese unter dem öffentlichen Schlüssel des Empfängers zu verschlüsseln?

Antworten (1)

Sie haben Recht, dass der Status jeder Adresse und jedes Vertrags für alle Knoten im Netzwerk verfügbar ist. Und Sie folgern zu Recht, dass es keine Möglichkeit gibt, vertrauliche Daten auf der Blockchain zu speichern oder durchzusetzen.

Da die Blockchain frei zwischen allen Ethereum-Knoten geteilt wird, besteht die einzige Möglichkeit, Informationen in der Blockchain privat zu halten, zwangsläufig darin, sie zu verschlüsseln (oder sie nicht in die Blockchain aufzunehmen).

Abgesehen davon ist die Blockchain wirklich nicht die effizienteste Art, Daten um der Daten willen zu kommunizieren – da eine historische Aufzeichnung der Blockchain auf jedem Ethereum-Knoten gespeichert wird, ist der Platz knapp. Ab 2016 betrugen die Kosten für die Speicherung von Daten in der Ethereum-Blockchain etwa 76.000 $/GB .

Um kleine Informationsmengen zu kommunizieren, können DApps das kommende Ethereum Whisper-Protokoll verwenden , oder um große Informationsmengen zu hosten, können sie das Ethereum Swarm-Netzwerk verwenden , wobei sie möglicherweise Daten mit dem Schlüssel des Empfängers verschlüsseln, wenn sie privat sein müssen.

Aber unterschätzen Sie niemals den Nutzen, wenn Benutzer nur auf die altmodische Art und Weise Peer-to-Peer kommunizieren, vielleicht mit einem Zustandskanal, wenn sie sich vertrauenslos über den Zustand von etwas einigen müssen.

Danke für deine Antwort! Das sieht interessant aus. Würden Sie kommentieren, ob es möglich ist, ein System als ethereum.stackexchange.com/q/25570/18287 zu implementieren ?
@Shuzheng Bitte überprüfen Sie meine Antwort auf diese Frage , wo ich näher darauf eingehe.
Mit "Adresse und Vertrag" meinen Sie jedes Benutzerkonto und jeden Vertrag, richtig? Weil ein Vertrag auch eine Adresse hat?
@Shuzheng Ja, du hast Recht. Ich meine jedes Konto und jeden Vertrag.