This story is about how I managed to make it possible to use my Ledger Nano S for EOS blockchain.

But first, a few words about me. Am I an ordinary crypto user? Yes. Am I a software developer? Again, yes. One month ago I was reading about different blockchain consensus algorithms and came across EOS whitepaper. So, since that time I started tracking news about this project as a consequence dug into the source code. Suddenly, I started writing smart-contracts, but I found that at this point, community needs hard wallet support.

In short period of time I’ve created a working prototype with two core functions: public key retrieval and transactions signing. Simply saying, these two actions are mandatory to work with EOS without revealing, memorizing, copy/pasting, etc. your private key.

EOS application running inside my ledger.

The photo above shows how I helped Ledger to tame EOS, LOL. It was not the easiest task, even to draw EOS logo on 16 x 16 pixel sized image. So as a result we have the Internet Explorer logo inside.

Spoiler alert: “Technical paragraph”. Existing implementation communicates with EOS blockchain through custom keosd wallet plugin. As for hard wallet side, it contains core implementation of BIP32 standard https://github.com/bitcoin/bips/blob/master/bip-0032/derivation.png. So, we have kinda HD wallet, where Public/Private key pair is generated on the fly.

All testings have been done on Jungle testnet. Extra shouts to cryptolions.io BP: Jungle testnet is so awesome and easy to use for testing. Its like swiss army knife for core developers, crypto rookies like me and DApp developers.