This guide explains Bitcoin Core signmessage RPC in plain English. It shows what the command does, what its result means and what it cannot prove.
TL;DR
- What it is: Bitcoin Core 0.16.0 signmessage used the private key for a wallet address to sign exact message bytes and returned a base64-encoded signature. The wallet might require temporary unlock.
- Why it matters: signmessage provides a narrow proof of address-key control over exact bytes. Safe authentication needs readable domain-separated challenges, minimal wallet unlock, independent verification and explicit limits on what the proof means.
- Current position: Require a second reviewer and explicit rollback or expiry, and pause payments, signing or network-dependent services until post-change evidence is complete.
Bitcoin Core signmessage RPC in simple English
Bitcoin Core signmessage RPC: Key control does not prove a person’s name, company authority, current balance or ownership history. Combine it with appropriate contractual and identity checks.
Simple example
A miner is checking Bitcoin Core signmessage RPC. Verify the address belongs to the intended wallet and supported signing form. Test wrong address, expired nonce, changed encoding and restored wallet on disposable keys.
Key terms in plain English
- Bitcoin Core:
- Widely used software that validates Bitcoin and can provide wallet, network and operator tools.
- RPC:
- A command that software sends to a node to request information or a local action.
- Node:
- A computer running Bitcoin software that checks data and communicates with other peers.
Address and key scope
Verify the address belongs to the intended wallet and supported signing form. The method is tied to an address private key and does not automatically cover multisig, scripts, hardware policies or every modern address type.
Exact message bytes
Whitespace, line endings, encoding and punctuation affect the signature. Define UTF-8 canonical bytes and show the signer exactly what is authorised. Never sign opaque hashes or attacker-supplied text without domain context.
Wallet unlock
Unlock only for the shortest required time, restrict RPC callers and relock immediately. A message-signing request exercises private-key authority even though it creates no transaction.
Signature transport
The result is base64 text. Preserve it without rewrapping or character substitution and validate size and alphabet. A signature can be public, but related addresses and challenge context may be privacy-sensitive.
How specialists test it
Operators test the command on a non-production node first. They check a normal reply, an invalid request, a timeout and a restart. This shows what the response means and prevents one local result from being mistaken for a network-wide outcome.
Replay and domain separation
Include purpose, relying party, unique nonce and expiry in the human-readable challenge. Without them, a valid signature can be replayed in another context. Never use a standing generic message as permanent authentication.
Identity limits
Key control does not prove a person’s name, company authority, current balance or ownership history. Combine it with appropriate contractual and identity checks. Test wrong address, expired nonce, changed encoding and restored wallet on disposable keys.
Frequently asked questions
What is the main point of Bitcoin Core signmessage RPC?
Bitcoin Core signmessage RPC: Key control does not prove a person’s name, company authority, current balance or ownership history.
For Bitcoin Core signmessage RPC, what should a beginner know about address and key scope?
Verify the address belongs to the intended wallet and supported signing form.
For Bitcoin Core signmessage RPC, what should a beginner know about exact message bytes?
Whitespace, line endings, encoding and punctuation affect the signature. Define UTF-8 canonical bytes and show the signer exactly what is authorised.
For Bitcoin Core signmessage RPC, what should a beginner know about wallet unlock?
Unlock only for the shortest required time, restrict RPC callers and relock immediately.
Conclusion
signmessage provides a narrow proof of address-key control over exact bytes. Safe authentication needs readable domain-separated challenges, minimal wallet unlock, independent verification and explicit limits on what the proof means.
Primary sources
Check the current specification status and the documentation for the exact implementation you operate before moving production funds or changing a mining node.
Join the ASIC Mining Discussion
Members can read and join the discussion
Log in to read comments from other miners. Create a free account if you would like to ask a question or share your experience.
Membership helps us protect the discussion from spam and keep answers useful.