How to sign message with your BTC private key manually and securelysteemCreated with Sketch.

in #crypto7 years ago (edited)

Dear Steemers,

Sometimes you'll need to claim some Bitcoin YXZ by signing a message like we have seen with the Bitcoin Rhodium... (In fact, I was originally writing this article for it, but they closed the second airdrop earlier... ouch)


This article is for you if your wallet doesn't allow you to sign a message [1][2]

(cough) Exodus wallet (cough)


[1] Signing a message (provided by the new coin's website) with your BTC address (holding your funds) and private key, proves that you are the legit owner of those BTC.

[2] Sure, you can send your BTC to another wallet that does it, that would be much more convenient, however, convenience doesn't come with security (especially after seeing recent releases of Electrum wallets).

Let's begin


After exhausting searches on Google, I haven't found much... except an 7 months old article from Steemit, yay!

Basically, it demonstrates how to sign a message with an (HTML, JS, CSS) open source signature tool.

(developer mode activated)

Capture d’écran 2018-01-08 à 15.57.55.png

1 issue reported...

0 pull request...

3 watches...

6 stars...

277 forks...

m'okay, that must be a rock solid project...

Kidding...

When talking about your BTC private keys...

You should not trust!

You should not trust!

You should not trust!


Being a developer, I tried to go through the sources, you know, m'okay...

The truth is it's a waste of time! Too many scripts, they may obfuscate code or I might simply miss something etc...

Solution; run it in an isolated environment; a virtual machine that has never been connected to the internet!

Let's (really) begin


1/ Download and install VirtualBox that virtualizes guest operating system
Optionally or not really optional, compare the checksum to make sure what you got is really what they published. You should always do that!

2/ Download your preferred Operating System to run
In my case, I choose Ubuntu Linux.
Again, compare checksum!

3/ Download bitcoin-signature-tool

4/ Create a new virtual machine

Capture d’écran 2018-01-08 à 19.18.07.png

5/ Configure it so it won't have access to the internet. Don't miss that step!!!

Capture d’écran 2018-01-08 à 19.24.06.png

6/ Configure your OS that is gonna be used.

Capture d’écran 2018-01-08 à 19.28.29.png

7/ Start your virtual machine and proceed installation!

Capture d’écran 2018-01-08 à 19.31.04.png

8/ Install VirtualBox "Guest Additions".
In order to access copy/paste, drag and drop or shared folders features, you will need it. More details can find at the official documentation

guess_additions.png

9/ Restart your guest machine

10/ Enable copy/past and drag and drop.
Try to move the bitcoin-signature-tool folder... If you did not succeed, no worries... I haven't myself... I was just curious... Otherwise, jump to point 11.

cp_dnd.png

11/ Last option left is via shared folders.

shared_folders.jpg

Additionally for Linux, I had to run the following commands in the terminal:

sudo usermod -G vboxsf -a <yourUsername>
sudo adduser <yourUsername> vboxsf


After a restart, you can access the content of the folder at /media/

12/ So now you can open the index.html file and sign your message, yihaaa!
Because it is nicely explained there... and I won't reinvent the wheel... and I am lazy... please refer to our beloved 7-month-old article.

Capture d’écran 2018-01-08 à 18.49.16.png

13/ Don't forget to remove the virtual machine

Voila! You're ready for upcoming BTC forks/airdrops!


Credits:


Seb.