Bin gerade auf eine Sicherheitskorrektur auf niedriger Ebene bei Bitcoin-Wallets gestoßen – wer Hardware-Wallets, Multisig oder Offline-Signaturen nutzt, sollte aufmerksam sein 👀
Laut CryptoSlate und Bitcoin Optech hat Bitcoin Core am 25. September einen neuen Schutz in den Entwicklungszweig übernommen: Er soll verhindern, dass in einer PSBT (teilweise signierten Transaktion) Signaturen erstellt werden, die nicht an eine Empfangsadresse gebunden sind.
Das Problem betrifft den Signaturmodus SIGHASH_SINGLE: Gibt es an der entsprechenden Position in der Transaktion keinen Output, ist die Signatur trotzdem gültig. Unter bestimmten Bedingungen kann jedoch der Empfänger geändert werden. Der private Schlüssel wird dabei nicht offengelegt. Das Risiko besteht vielmehr darin, dass du Adresse A bestätigst, die Signatur A aber nicht festschreibt. Solche Signaturen mit klassischen Legacy-Inputs könnten sogar für andere Coins wiederverwendet werden, die von demselben Schlüssel kontrolliert werden. Bei SegWit v0 ist es etwas besser: Die Signatur bindet die ausgegebenen Coins und ihren Betrag ein, aber nicht den Empfangs-Output.
Die Schnittstelle von Bitcoin Core zum Signieren von Raw-Transaktionen hat solche Fälle bereits zuvor abgewiesen. Über den PSBT-Pfad (zum Beispiel walletprocesspsbt) konnten Signaturen jedoch weiterhin erstellt werden. Mit dieser Änderung wird die Prüfung in die gemeinsame Signaturlogik verlagert.
Wichtig: Bis zum 4. Oktober ist noch keine offizielle Version mit dieser Korrektur veröffentlicht worden. Wallets und Anbieter von Hardware-Signierlösungen müssen daher vorerst selbst prüfen, wie sie Anfragen mit SIGHASH_SINGLE behandeln.
Eine gültige Signatur und ein sicherer privater Schlüssel bedeuten nicht automatisch, dass das Geld auch dort landet, wo du es bestätigt hast. Das sollte man im Hinterkopf behalten.
$BTC #比特币 #钱包安全 #BitcoinCore
Laut CryptoSlate und Bitcoin Optech hat Bitcoin Core am 25. September einen neuen Schutz in den Entwicklungszweig übernommen: Er soll verhindern, dass in einer PSBT (teilweise signierten Transaktion) Signaturen erstellt werden, die nicht an eine Empfangsadresse gebunden sind.
Das Problem betrifft den Signaturmodus SIGHASH_SINGLE: Gibt es an der entsprechenden Position in der Transaktion keinen Output, ist die Signatur trotzdem gültig. Unter bestimmten Bedingungen kann jedoch der Empfänger geändert werden. Der private Schlüssel wird dabei nicht offengelegt. Das Risiko besteht vielmehr darin, dass du Adresse A bestätigst, die Signatur A aber nicht festschreibt. Solche Signaturen mit klassischen Legacy-Inputs könnten sogar für andere Coins wiederverwendet werden, die von demselben Schlüssel kontrolliert werden. Bei SegWit v0 ist es etwas besser: Die Signatur bindet die ausgegebenen Coins und ihren Betrag ein, aber nicht den Empfangs-Output.
Die Schnittstelle von Bitcoin Core zum Signieren von Raw-Transaktionen hat solche Fälle bereits zuvor abgewiesen. Über den PSBT-Pfad (zum Beispiel walletprocesspsbt) konnten Signaturen jedoch weiterhin erstellt werden. Mit dieser Änderung wird die Prüfung in die gemeinsame Signaturlogik verlagert.
Wichtig: Bis zum 4. Oktober ist noch keine offizielle Version mit dieser Korrektur veröffentlicht worden. Wallets und Anbieter von Hardware-Signierlösungen müssen daher vorerst selbst prüfen, wie sie Anfragen mit SIGHASH_SINGLE behandeln.
Eine gültige Signatur und ein sicherer privater Schlüssel bedeuten nicht automatisch, dass das Geld auch dort landet, wo du es bestätigt hast. Das sollte man im Hinterkopf behalten.
$BTC #比特币 #钱包安全 #BitcoinCore
