How to recover a 2of3 GreenAddress wallet

GreenAddress currently supports two kinds of multisig wallet, one where 2of2 signatures are necessary and one where 2of3 are and 2 of the 3 keys are held by the user.

The 2of2 wallets can be recovered using Gentle.

For 2of3 we have developed a set of patches that permit recovery via the Electrum wallet. Unfortunately these patches were not merged in Electrum and thus they won’t be available by installing the regular Electrum.

This page will show the procedure to get the Electrum client for 2of3 GreenAddress recovery up and running.

From here on out we will assume Ubuntu 14.04.03 LTS but this should work very similarly on any recent Ubuntu and Debian (or derivatives) distributions.

Once you downloaded and verified Ubuntu (both 32bit and 64bit should work fine)  you can run the ISO file either on you bare metal computer or inside a virtual machine.


For this demonstration we used a virtual machine with 2GB of RAM and recommend to use a Live Ubuntu, just run from a Live by clicking “Try Ubuntu”, this avoids impacting your day to day system with multiple Electrum’s installs and various dependencies.

TryLive


Once it loads you should have a screen like this.

At this point, it is necessary to enable the Universe repository for some dependencies.

search_terminal


We could do this via command line but Ubuntu provides a simpler way to do this so we click on the top left icon resembling a circle (Ubuntu’s logo) and we type without quotes “repository” and hit enter or click on the result “Software & Updates”

software_update


If the second checkbox is unticked please tick it, this will enable the Universe repository. You can click the Close button at the bottom now.

enabled_universe


At this point if it wasn’t enabled it should ask if you want to reload the repository since there are some changes. Click on Reload. It will take a few seconds to finish.

do_reload


Now open a terminal. To do this go back on the search bar by clicking on the Ubuntu logo in the top left corner and then type terminal and hit enter or click on the first result

terminal_searched


Now that we have a terminal we need to run a few command lines to fetch Electrum and its dependencies and then to start it up.

Type one line at the time and hit enter and wait until each step finishes and continue until you finish all the steps with line number 1-3-5-7-9-11-13

terminal_opened



sudo apt-get install -y git python-pip python-slowaes python-socksipy pyqt4-dev-tools

sudo pip install pyasn1 pyasn1-modules pbkdf2 tlslite qrcode mnemonic ecdsa protobuf

sudo pip install https://github.com/trezor/python-mnemonic/archive/d8328653f8247ee6b080870845e8efaadcd4984e.zip

git clone -b greenaddress-2of3-recovery --single-branch https://github.com/greenaddress/electrum.git

cd electrum

pyrcc4 icons.qrc -o gui/qt/icons_rc.py

./electrum


If you do everything correctly with the last step Electrum will start.

Once it starts, select the second choice, “Restore or import a wallet” and select as wallet type “Multi-signature wallet”.

Click Next

Note: if you close by mistake electrum to restart it do the following


rm -fr /home/ubuntu/.electrum

cd electrum

./electrum

select_ga2of3recoveryoptions


At this point you are shown another screen to select the wallet type. Pick “GreenAddress 2of3 recovery”.

Click Next

select_ga_type


You are now shown a form with three fields, one for your regular mnemonic, one for your 2of3 subaccount specific mnemonic and one for the GreenAddress xpub (provided during creation of the subwallet)

electrum_input_keys


We have inserted our own test mnemonics and the Next button is now enabled. Click on it.

inserted_electrum_keys


You will be asked if you want to set a password.

Given we are using a Live session and that we are doing a one off recovery we can skip this step as anyhow once the funds are recovered the wallet won’t be used anymore and this Electrum installation will be gone once the Live session is terminated.

Just click next and leave the fields empty.

insert_password_if_wanted


At this point you are asked if you want to connect to connect automatically or manually select your server. If you don’t know just leave as is and click Next.

server_selection


Now Electrum will generate the relevant keys and connect.

keys


If it doesn’t connect immediately wait a little bit and it will synchronize, otherwise try to manually pick a server.

view


You can check the connection details on the console

console


And once you are connected you can go to the Send tab and recover all your wallet funds by sending them to another wallet of your choice.

nobalance



For any question, integration and or omission please email us at info@greenaddress.it