{sign|verify}message replacement

Posted by Karl Johan Alm

Mar 14, 2018/08:09 UTC

A proposal for a new structure called SignatureProof, which is a simple scriptSig & witnessProgram container that can be serialized, has been introduced to replace the broken message signing tools for all but the legacy 1xx addresses. The approach was suggested by Pieter Wuille and does not require much effort for implementation in Bitcoin Core. The new structure is passed out from/into the signer/verifier. The system includes RPC commands such as "sign" and "verify." The "sign" command generates a signature proof using the same method that would be used to spend coins sent to the specified address. On the other hand, the "verify" command deserializes and executes the proof using a custom signature checker whose sighash is derived from the specified address. The scriptPubKey is derived directly from the same address. If verify returns true, the check succeeds; otherwise, it returns false. Feedback is welcome, according to Kalle's proposal. It is suggested that VerifyScript with a new signature checker class can be used, and if sign is true, then the sighash is derived from the specified address, otherwise, it uses sha256d(message).

Link to Raw Post
Bitcoin Logo

TLDR

Join Our Newsletter

We’ll email you summaries of the latest discussions from authoritative bitcoin sources, like bitcoin-dev, lightning-dev, and Delving Bitcoin.

Explore all Products

ChatBTC imageBitcoin searchBitcoin TranscriptsSaving SatoshiBitcoin Transcripts Review
Built with 🧡 by the Bitcoin Dev Project
View our public visitor count

We'd love to hear your feedback on this project?

Give Feedback