January 22, 2019

Proof-of-Coin For Dummies

This guide helps prospective sellers learn how to prove their bitcoin holdings in a few simple steps.

Proof-of-Coin For Dummies

Disclaimer: the methods described do not cover the topic extensively; the information presented is based on our experience only and is targeted at individuals and organizations looking to simplify and streamline their deal-flow.

Before two strangers perform an OTC transaction, they go through various procedures to ensure authenticity of each other’s claims. Besides identity, it is important to prove that the funds that are going to be exchanged actually exist. Before that happens, doubt and mystery separate the parties like a brick wall, and no amount of conversation will make them see through it.

Traditionally, fiat holdings are proven by presenting a bank statement or a SWIFT MT799 message. This process is commonly referred to as Proof-of-Funds (POF). The bitcoin equivalent circulating among brokers is Proof-of-Coin (POC).

The Twitter thread above goes over a few methods that are commonly used these days to prove bitcoin reserves. These include a screenshot, a small payment and a signed message. The author lists various reasons for avoiding the first two methods (please go through the thread to learn why!) and concludes that signing a message is the best approach. In the present article, we focus on this method of POC.

Tear Down This Wall

In Bitcoin Custody: What You Need To Know we described several ways of storing your bitcoins securely. Among those we identified Electrum as the best software wallet and Trezor as the hardware wallet of choice for many. Luckily, both these wallets come with message signing functionality out of the box, which is another important, yet underrated, reason to choose them. These wallets can be used separately (Trezor comes with its own web interface) or in conjunction (Electrum supports Trezor, among other hardware wallets, and acts as graphical interface).

Sign / Verify with Trezor

Trezor’s web interface comes with the sign/verify features located conveniently on the home screen of your wallet. From your account navigate to Sign & Verify.

If you are a seller and want to prove ownership of bitcoins, perform the following steps:

  1. Use the “Sign message” form.
  2. Type your custom message. It can contain any information relevant to the transaction. Make it unique.
  3. In the Address field paste the bitcoin address, in which you store the funds that you wish to prove. Note: if your funds are scattered across multiple addresses (which happens naturally with most modern deterministic wallets), you may need to consolidate them in a single address or perform this action for each address separately.
  4. Click the Sign button and verify the action on your Trezor device. As a result, the Signature field will populate with a cryptographic signature, that cannot be forged by anybody who does not have access to your wallet.

You are now ready to provide POC to the buyer: simply send all the three parts of the proof: the message, the address and the signature.

Seller McSellerson proves ownership of BTC stored in 38HXSMC7dkUzpT6A17iD6DXC1NEYPRcHLp.

If you are a buyer and want to verify bitcoin reserves, perform the following actions:

  1. Use the “Verify message” form.
  2. Paste the message, address and signature, provided by the seller, in the corresponding form fields.
  3. Click the Verify button and confirm your input on the device.

You can now safely assume that, at the very least, the seller has access to a wallet containing a certain amount of bitcoins.

Buyer O’Buyer verifies that Seller McSellerson owns the BTC stored in 38HXSMC7dkUzpT6A17iD6DXC1NEYPRcHLp.

Sign / Verify with Electrum

Exactly the same functions can be performed in Electrum, whether you use it as a stand-alone software wallet, or as a graphical interface for your hardware wallet. Simply go to Tools -> Sign/verify message and perform the actions described above.

Electrum’s Sign/Verify window.

I Was Blind But Now I see

Congratulations! As a seller, today you learned how to prove your bitcoin reserves to the buyer. As a buyer, you learned how to verify your seller’s claims. And, most importantly, both of you save time, effort and money (no legal fees!).

If you are an OTC desk, make it the first and most important requirement for your clients and avoid wasting your valuable resources.

“Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on.” — Edward Snowden

Technology prevails yet again!