Ich habe mit der Pycoin-App von Richard Kiss herumgespielt, die verdeutlicht, wie P2PK funktioniert. Ich sehe, dass der hash160 des Werts: (0x04) (x-coordinate) (y-coordinate)
(für einen unkomprimierten privaten Testnet-Schlüssel in diesem Fall) einen hash160-Wert ergibt, der verwendet wird, um den Besitz des privaten Schlüssels nachzuweisen.
Wie ist dies nachteilig für die Wiederverwendung privater Schlüssel, wenn es kein Problem mit PRNGs gibt, die eine niedrige Entropie bereitstellen? Ich verstehe, wie der Android-Fehler ausgenutzt wurde (bis zu einem gewissen Grad wurden "Zufallswerte" wiederverwendet), aber ich verstehe nicht, warum nur das Teilen des Hash160 in einer einzigen Transaktion böswillig ausgenutzt werden kann. Zur Klarstellung: Ich spreche nicht von Datenschutzbedenken bei der Verfolgung von Adressen über die Blockchain.
BEARBEITEN: Die fraglichen Schwachstellen (wie in der Antwort angegeben, beziehen sich auf Quantencomputer- und/oder EDCSA-Schwächen, von denen keine existiert)
Das potenzielle Sicherheitsproblem besteht darin, dass ein öffentlicher EC-Schlüssel eines Tages unter Verwendung von (zum Beispiel) Shors Algorithmus [1] in einen privaten Schlüssel umkehrbar sein könnte . Dies gilt nicht für einen Hash eines öffentlichen Schlüssels (auch bekannt als Adresse).
Da der öffentliche Schlüssel einer Bitcoin-Adresse bei den ersten Transaktionsausgaben von dieser Adresse offenbart wird, wird es daher als schlechte Praxis angesehen, diese Adresse wiederzuverwenden (auch aus Datenschutzgründen).
Wenn Ihre PRNGs gut sind, verlieren Sie keine Sicherheit, wenn Sie dieselbe Adresse beliebig oft verwenden. Einige Websites behaupten, dass Adressen nicht wiederverwendet werden sollten, da dies Ihre Bitcoins anfällig für Quantencomputer und/oder einige neu entdeckte Schwachstellen in ECDSA macht. Allerdings sind diese beiden Szenarien im Moment unrealistisch, und ich denke, wenn sie realistisch werden , wird dies ein so großes Problem für die Kryptographie der Welt sein, dass Sie nicht das erste Opfer sein werden (es sei denn, Sie sind Satoshi Nakamoto).
Nate Eldredge
Zauberer von Ozzie