Restoring The KeepKey Hardware Wallet To Software Wallets
Restoring The KeepKey Hardware Wallet To Software Wallets

Restoring The KeepKey Hardware Wallet To Software Wallets

By Smoljanović | Smoljanovic | 24 Jul 2020


Restoring The KeepKey Hardware Wallet To Software Wallets

Introduction

My biggest concern after initializing the KeepKey wallet was the actual recovery process in case of disaster.  I wanted to be certain that my newly created wallet could be restored to a software wallet if the hardware wallet was no longer an option.

Creating The Wallet

I initially enabled BIP39 passphrase and chose a 24 word BIP39 mnemonic recovery phrase for my newly acquired KeepKey hardware wallet.

There was no step offering validation of the mnemonic recovery and passphrase when setting up the hardware wallet during initialization.

Wiping the device and doing an actual recovery would at least prove information was correct and intact but I needed assurance that it could be restored on a software wallet in case the hardware became extinct like the Dodo bird.

Dodo bird

It became apparent that software wallets widely range in standards and methods when looking for a wallet to test a recovery.

Most wallets handle only a 12 word recovery without a BIP39 passphrase. Some can handle 12, 18 and 24 word with the extra BIP39 passphrase but there are not many. The software wallet I tested the recovery process failed to show one or two coin balances.  Problems existed for both Bitcoin (BTC) and Bitcoin Cash (BCH) with many of the wallets.

I wiped the device and chose a simple 12 word mnemonic without passphrase to see which software wallets will display all asset balances.

It was quickly clear that none of the wallets including the hardware KeepKey follow any conformity. The derived wallet addresses vary because of the optional derived paths the software wallets choose to use.

Some wallets offer settings to choose when adding coins but are probably a little difficult to use for new users. Coinomi was one of the wallets with the most tweakabilty I found among the lot but even that one didn't serve my purposes.

It was necessary to determine all private keys, public keys and BIP32 derived paths for me to be comfortable even using the hardware wallet. I also wanted to document the account extended Private and public keys as well as the BIP32 Extended private and public keys.

All the documentation I needed was easily obtained using an open source mnemonic code converter.


 

STEP 1


Add the 12, 18 or 24 word mnemonic to be processed

The 12 word mnemonic I am using is "debate tip tube caught write rice consider club fish betray hood bitter". You may use this mnemonic to follow along in the example. The 12 word recovery phrase is entered in the BIP39 Mnemonic field.

Add mnemonic

The KeepKey hardware wallet info is obtained be clicking receive and selecting the coin to view the receive wallet info. The ETH wallet address and path for this example is:

m/44'/60'/0'/0/0
0x63AC2d40c15a7624Df428972dD19331B72992E9d


 

STEP 2

Select ETH in the drop-down box to determine addresses.

Select Coin


STEP 3

Select BIP44 in the tabs because the hardware wallet path is m/44. Coin 60 refers to ETHER and account can be useful if another instance of ETH is added to the hardware wallet.

BIP44 TAB


 

Note the generated keys and BIP32 Derivation Path for the ETHER coin in the pic below.


 

The first address corresponds to the derived address shown on the KeepKey hardware wallet and is highlighted below.

I generated the QR code by hovering the cursor over the address that corresponds to the information that matches the KeepKey ETH wallet address info.

Info for all the other coins is just as easy to obtain by entering the appropriate coin or token in the drop down box in STEP 2


Notes:

It is not a good idea to compromise the hardware wallet security by also restoring to an external software wallet. I restored to the Exodus and Trust wallets to test and compare and even execute a transaction or 2 when my PC and KeepKey is not in close proximity or otherwise unavailable.

There are other ways to transfer assets including the use of private case without doing an actual restore.  Watch only wallets can also be made using keys for the purpose of monitoring hardware wallets decreasing chances of a compromise when using more than one wallet or device.

See KeepKey Hardware Wallet In An Aluminum Nut Shell  and Hardware Wallets Should Be Called Hardware Passphrase Managers for more info about hardware wallets.

The QR codes generated by the mnemonic converter look different than what is shown using the ShapeShift app but contain the exact wallet information.


Conclusion

Software and hardware wallets should adopt some standards to make using them a little easier. The two apps that came close to meeting the recovery challenge is the Exodus and Trust wallets.

Both of the wallets even show my FOX tokens although the Trust wallet is unable to display my DGB coin. I couldn't put all my trust in that one.

I will keep the Trust wallet active but will mainly use the Exodus wallet in the future. Both software wallets have some great features.

NOTE: It is not a good idea to compromise the hardware wallet security by also restoring to an external software wallet. I restored to the Exodus and Trust wallets to test and compare and even execute a transaction or 2 when my PC and KeepKey is not in close proximity or otherwise unavailable.

There are other ways to transfer assets including the use of private case without doing an actual restore.  Watch only wallets can also be made using keys for the purpose of monitoring hardware wallets decreasing chances of a compromise when using more than one wallet or device.

Official Links

Members can contact support@publish0x.com when requiring assistance or offering feedback.  Response time for email inquiries can vary but is usually 24 hours.

General help can also be obtained in the Publish0x Telegram group.  Please refrain from sending direct messages to admins and other members without prior permission or risk being banned and reported for spam.

Publish0x articles can be posted to the Telegram groups only once per post for a little extra exposure.  Failure to comply to rules may result in a banned account.

P0x Ambassadors Community is also available to all users. 

Group members can generally help newcomers with many issues.  Account issues are never handled in the Telegram group and should be directed to support via email


Convenient Links

Sign up to Become an author.

Visit your personal Dashboard at Publish0x.

Access your Settings.

Register an account with Publish0x.

Publish0x User Account Reference Guide provides details about Publish0x.

just a line

Comments are welcome and thanks for reading!

Feel free to add your Publish0x articles on Post Your Publish0x Articles Group and the new Facebook page Publish0x Articles.

Here is the Publish0x User Account Reference Guide.

You can follow me at Twitter and Publish0x.


Smoljanović
Smoljanović Official Team Member

Publish0x Team Member and Canadian Expatriate from Sarajevo living in Sweden.


Smoljanovic
Smoljanovic

The blog Smoljanovic is intended to contain articles about cryptocurrency, trading, programming and other technical or non-technical stuff.

Send a $0.01 microtip in crypto to the author, and earn yourself as you read!

20% to author / 80% to me.
We pay the tips from our rewards pool.