In blockchain technology, two keys are used to control funds on a particular address: open and private. The first is the address where funds are sent, the second is required for signing transactions.
Sometimes you need to confirm that it is you who owns the address and that you own the funds that are on it. This action may be required when you buy something, and the seller wants to make sure of your solvency. Another case might be to confirm that you are the owner of the account when you restore a compromised or lost account. In these situations, it would be logical to use a key by which transactions are signed.
But in the case of Bitcoin, this is strictly forbidden. The private key is secret information, and if an outsider knows it – you risk losing the funds stored on the address.
To solve the conflict (you could have showed the private key, but you cannot show it), you have to use the method called “message signing.“ You have to fill out a special form in your anonymous bitcoin wallet and sign it.
It looks like this.
The result of this procedure is the text located in the Signature field.
Imported addresses
What are the imported addresses? These are Bitcoin-addresses that were not created by the wallet but were added there later.
For example, you have a paper Bitcoin wallet on which you accumulate funds. To check receipts, find out the balance of the address or to send bitcoins from it, you need to import this address into the software purse.
Currently, it is only possible to sign a message with imported purse addresses. In the future, this function will be available for all addresses stored in the wallet.
You can import either an open key, private or both keys together. In this context, keys and addresses are synonymous.
How to sign a message with a Bitcoin address
Signature creation is possible in many Bitcoins-wallets. There may be some differences in them, but in general, everything looks the same. Even if you use bitcoins hardware wallets, the algorithm of actions will be the same.
Let’s describe how the message is signed with Bitcoin-address in the blockchain.info wallet.
There is a Settings section in the menu on the left; it contains the Addresses item. Click on it, you will see a window, as in the screenshot above. Here are two strings: the default wallet address (My Bitcoin Wallet) and Imported Addresses. In the bottom string on the right, click the Manage Addresses button.
A new window appears with a list of addresses that have been imported into the wallet. They are divided into two groups:
- Addresses from which funds can be sent.
- Addresses that are for viewing only.
Since the task is to confirm the possibility to send funds, we are interested in the first group. In the line opposite the address, the relevance of which you need to proof, click the More Options button. Select the item Sign Message in the drop-down menu.
In the window appeared, there are two fields. One specifies the address you want to confirm; the other is a place for a text message. You can type any text, but it should tell something to the person to whom you sent the confirmation. For example, you can write to the seller: “Hi! I buy “Tesla” from you. Account # 1223AS00008″.
To sign a message with a Bitcoin address with your private key, you need to click the Sign button. As a result, an additional field appears at the bottom of the window.
The content of the field is the confirmation that you manage the address. It does not contain your private key; thus, your funds are not at risk.
Checking the signed message
To verify the signed message, you can use your wallet or third-party resources.
In the wallet, you need to activate the More Actions menu and select Verify Message from the list.
If everything is done correctly and the private key belongs to you, a confirmation window will appear.
To check through a third-party resource, and the one who has requested confirmation from you will do exactly that, you can use different services. Here are the two most popular ones according to search engines: https://tools.bitcoin.com/verify-message and https://blockexplorer.com/messages/verify.
You need to fill in all the fields and the resource will display the result.
If the check is not completed, the address will be marked as fraudulent (Scammer).
Conclusion
The compromise solution on the signing of the message with Bitcoin-address allows confirming that the person who generated it is the owner of the secret key of this address. So, he can control bitcoins and make transactions.
At the same time, private information is not disclosed, and the funds stored at the address are not jeopardized.
This feature is implemented in many wallets that support Bitcoin, including hardware ones, and has proven to be reliable.
Reviews
Your comment has been sent successfully.