Ich habe Multi-Signatur-Transaktionen recherchiert und frage mich, wie der Titel schon sagt, warum eine Web-Wallet, die Multi-Signatur-Transaktionen (z. B. 2 von 3) anbietet, wie blockchain.info, überhaupt einen Ihrer privaten Schlüssel benötigen würde . Soweit ich weiß, sieht es so aus, als ob für 2-von-3-Adressen mit mehreren Signaturen drei öffentliche Schlüssel zum Generieren erforderlich sind und über Rohtransaktionen ausgegeben werden.
Warum erlauben Ihnen diese Dienste nicht, alle drei Schlüssel zu behalten?
Gibt es einen Grund, warum einer der Schlüssel vom Wallet-Anbieter aufbewahrt werden muss? Es scheint, dass keiner der Schlüssel in der Brieftasche des Anbieters sein muss, solange er verfügbar ist, um die Rohtransaktion vor dem Senden zu signieren – und theoretisch könnte die Rohtransaktion vom Client im Browser erstellt und übermittelt werden für die Übertragung über senddrawtransaction, ohne den Anbieter in irgendeiner Weise außer der reinen Konnektivität mit dem Netzwerk einzubeziehen.
Was vermisse ich?
Soweit ich weiß, sieht es so aus, als ob für 2-von-3-Adressen mit mehreren Signaturen drei öffentliche Schlüssel zum Generieren erforderlich sind
Gefordert sind private Schlüssel, die öffentlichen Schlüssel sind nun einmal öffentlich: Jeder kennt sie. Ein 2-aus-3-Skript erfordert, dass zwei beliebige der drei erwähnten Schlüssel benötigt werden, und Sie können Variationen davon verwenden, z. B. 2 aus 2, 3 aus 3, 1 aus 3 usw.
werden über Rohtransaktionen ausgegeben
Es ist auch nichts wert, dass „Rohtransaktionen“ nur ein Begriff ist, der in Bitcoin Core verwendet wird, wenn es um etwas geht, das nicht Pay to Pubkey Hash ist, es ist ziemlich bedeutungslos, es sei denn, Sie sprechen über den Client selbst.
Warum erlauben Ihnen diese Dienste nicht, alle drei Schlüssel zu behalten?
Die Absicht bei Multi-Signatur-Wallets ist, dass mehrere Parteien eine Transaktion autorisieren müssen. Bei diesem Modell hätten Sie ein 2-von-2-System, bei dem es zwei Parteien gibt und beide unterschreiben müssen, um die entsprechenden Mittel auszugeben. Diese hat folgende Eigenschaften:
Der Dienst kann dem Benutzer das Geld nicht direkt stehlen, da der Benutzer die Transaktion auch unterschreiben muss.
Dem Benutzer können von Dritten Einschränkungen auferlegt werden, z. B. dass er keine Transaktionen unterzeichnet, die mehr als 10 US-Dollar pro Tag ausgeben, oder ohne dass eine zusätzliche Autorisierung erforderlich ist.
Transaktionen können so erstellt werden, dass, wenn der Dienst sich weigert, Transaktionen zu signieren (den Benutzer zufällig wählt oder das Geschäft aufgibt), nach einer beträchtlichen Zeitspanne die Anforderung auf nur eine einzige Unterschrift des Benutzers reduziert wird.
Mit diesen Eigenschaften können Sie sehr leistungsfähige Systeme mit beliebigen Ausgabenanforderungen erstellen, ohne den Verlust von Geld zu riskieren, indem Sie Ihr gesamtes Geld an andere weitergeben.
Im Fall von Web-Wallets ist dieses System jedoch fast vollständig Schlangenöl-Kryptografie, da der Drittanbieter auch derjenige ist, der den Benutzern den Code zustellt. Sie können dies jederzeit in einen anderen Code ändern, der ihnen nur die privaten Schlüssel zurücksendet, oder jede gewünschte Transaktion blind signieren. Angesichts dieser Eigenschaft gibt es absolut keine Möglichkeit, Web Wallets sicher zu machen.
Warum erlauben Ihnen diese Dienste nicht, alle drei Schlüssel zu behalten?
Dann wäre es sinnlos, Multisignatur-Transaktionen zu haben, bei denen eine Partei alle Schlüssel hält, es würde viel weniger kosten, nur normale Transaktionen zu verwenden. Multisignatur-Skripte haben im Vergleich zu regulären Transaktionen tendenziell deutlich höhere Kosten für die Nutzung.
Nate Simpson
Nate Simpson
Claris
Claris
Nate Simpson
Claris
Nate Simpson