Bitcoin message signing lets you prove that you control the private key of a Bitcoin address without sending funds or creating a blockchain transaction.

This can be useful when a broker, exchange, or other service asks you to prove that a Bitcoin address belongs to you. Instead of sending a small test transaction, you can sign a custom message with the address.

The signed message can then be verified by another party. If the verification is successful, it proves that the message was signed by the private key connected to that Bitcoin address.

Security note
Signing a Bitcoin message does not reveal your private keys, recovery words, or wallet backup. Your private keys stay securely protected by your BitBox02.

 

When message signing is useful

You may be asked to sign a Bitcoin message when you need to:

  • prove ownership of a Bitcoin address
  • verify a withdrawal or deposit address
  • complete a broker or exchange verification request
  • support an account recovery or compliance process
  • demonstrate control of a Bitcoin address for personal or educational purposes

For example, an exchange may ask you to sign a message before processing a Bitcoin withdrawal. This helps them confirm that the withdrawal address is controlled by you.


Some services use test transactions, also called Satoshi Tests, for address ownership verification. Message signing can be a more convenient alternative because it does not require sending bitcoin, paying transaction fees, or waiting for blockchain confirmations.

You can learn more about this topic in our blog article about Satoshi Tests and the Address Ownership Proof Protocol (AOPP).


Before you sign a Bitcoin message

To sign a Bitcoin message, you need:

  • the latest version of the BitBoxApp
  • a set up BitBox02
  • access to the Bitcoin account you want to use
  • the Bitcoin address you need to prove ownership of
  • the exact message you want to sign

Before you begin
Sign the exact message requested by the exchange, broker, or service. Even small changes, such as an added space or different punctuation, create a different signature.

 

Address format requirement
The BitBoxApp currently supports Bitcoin message signing only with native SegWit addresses. These addresses start with bc1q. Make sure the service requesting the proof of ownership supports this address format.

 

How message signing works in the BitBoxApp

The BitBoxApp prepares the message signing request. Your BitBox02 then displays the details and creates the signature only after you confirm the request directly on the device.

This means that the signing process is protected by your BitBox02. The BitBoxApp cannot create the signature without your confirmation on the device.


How to sign a Bitcoin message

  1. Open the BitBoxApp.
  2. Select the Bitcoin account you want to use.
  3. Open Account information.
  1. Select Sign message.

  1. Select the Bitcoin address you want to use for signing.
  2. Enter the message you want to sign.

Example:

Verify ownership of this Bitcoin address
  1. Click Sign on device.
  2. Connect and unlock your BitBox02, if it is not already connected.
  3. Review the signing request on your BitBox02.
  4. Confirm the request on your BitBox02.
  1. Copy the generated signature.

Verification details
Your BitBox02 shows the details of the signing request before the signature is created. Review the coin, address, and message carefully before confirming.

 

Which Bitcoin address should you use?

Use the Bitcoin address that you were asked to prove ownership of.

When you open the message signing feature, the BitBoxApp automatically selects the next unused Bitcoin address. This is usually the best choice if you are registering a new address.

If you need to prove ownership of an address that was already used before, you can select it from the used addresses section.

[Insert internal link: How to view and sign messages with used Bitcoin addresses]

Address selection note
A signed message only proves ownership of the address used for signing. If you sign with a different address, the proof of ownership will not match the requested address.

 

What happens after the message is signed?

After confirming the request on your BitBox02, the BitBoxApp displays the signed message result.

You can then copy the generated signature and share it together with the Bitcoin address and original message.

Example signature:

IN0KYWaf983XgHweToQ3Z0j0+77Kns6+1to58ZTyVP71S9BWlgQ3CHnUuX1ABKpn6gL69S4DF+IhH8g5PgI/L8A=

Message signed successfully
Once the signature is created, you can share the Bitcoin address, original message, and signature with the party that needs to verify address ownership.

 

How to verify a signed message

This article focuses on signing Bitcoin messages in the BitBoxApp.

To verify a signed message, you need a wallet or tool that supports Bitcoin message verification, such as Sparrow Wallet or Electrum. The verifier needs the following three pieces of information:

  • the Bitcoin address
  • the original message
  • the signature

[Insert internal link: Sparrow Wallet: how to verify a signed Bitcoin message]
[Insert internal link: Electrum: how to verify a signed Bitcoin message]

Verification note
The original message must match exactly. If the message contains different spacing, capitalization, or punctuation, the signature verification may fail.

 

Security considerations

Only sign messages from a trustworthy exchange, broker, service, or person. A signed message proves that you control a specific Bitcoin address, so you should understand why the message is being requested before confirming it.

A signed message does not authorize a Bitcoin transaction. However, it may still be used as proof that you control a specific Bitcoin address.

Security warning
Never sign a message that you do not understand. If someone pressures you to sign a message urgently or asks for your recovery words, it may be a phishing attempt.

 

Your BitBox02 will never ask you to enter your recovery words in the BitBoxApp, on a website, or on a computer.


FAQ

Does signing a Bitcoin message send a transaction?

No. Signing a Bitcoin message does not send funds and does not create a transaction on the blockchain.


Does message signing expose my private key?

No. Your private key remains protected by your BitBox02. The signature proves that the private key was used, but it does not reveal the private key itself.


Why would an exchange or broker ask me to sign a message?

Some exchanges or brokers ask for a signed message to confirm that a Bitcoin address belongs to you before processing a withdrawal, deposit, or verification request.


Can I sign any message?

Yes. You can enter a custom message, but if an exchange, broker, or service provides a specific message, copy it exactly.


Which Bitcoin address formats are supported?

The BitBoxApp currently supports Bitcoin message signing only with native SegWit addresses. These addresses start with bc1q.


Why does verification fail?

Verification can fail if the Bitcoin address, message, or signature is incorrect. It can also fail if the verification tool does not support native SegWit bc1q addresses or the signing format used.


Can I verify a signed message in the BitBoxApp?

The BitBoxApp feature described in this article is for signing Bitcoin messages. To verify a signed message, use a compatible external wallet or verification tool, such as Sparrow Wallet or Electrum.


Which address should I use for signing?

Use the address requested by the exchange, broker, or service. If no specific address is requested, you can use the automatically selected unused address in the BitBoxApp.


Can I sign a message with an address I already used?

Yes, if the address is available in the BitBoxApp’s used addresses section. This can be useful when you need to prove ownership of a specific address that was already used before.

[Insert internal link: How to view and sign messages with used Bitcoin addresses]