Address tools

Verify a signed message

Confirm that a message was really signed by the owner of a Bitcoin address. Enter the address, message and signature, and you are done. Everything runs locally, and you do not need any private keys.

Why signed messages are useful

Whoever holds the private key to an address can sign any message with it without sending a single transaction. That is exactly what makes the signature a proof of ownership: only the key holder can create it, and anyone can verify it with this tool. Exchanges, for instance, often ask for such a proof during account recovery.

Key properties

  • Proves control: only the private-key holder can sign validly.
  • Tamper-proof: change one character of the message and the signature becomes invalid.
  • No risk to coins: signing and verifying never move any Bitcoin.
Limits: the tool verifies signatures from single-key addresses (P2PKH, P2SH-SegWit, native SegWit/bech32). It cannot check complex conditions such as multisig, timelocks or general scripts.

Frequently asked questions

01What does this tool do?

It checks whether a message was signed with the private key of a specific Bitcoin address. You enter the address, message and signature. If all three match, the proof holds.

02Do I need a private key?

No. Verification only needs the public key, which the tool reconstructs from the signature. It never touches your coins or your private keys.

03What is this useful for?

To prove ownership of an address without sending anything. A common case: during account recovery an exchange asks you to sign a message with "your" address. That proves you control the address.

04Which signature formats are supported?

The common Base64 signatures from Bitcoin Core and Electrum (BIP-137). We derive every possible address form from the signature (legacy, P2SH-SegWit, native SegWit) and compare them with the given address.

05Does the check run locally?

Yes. The entire signature verification happens in your browser (secp256k1). The tool sends nothing to any server.