Storing and Staking Akroma (AKA) Safely using the Ledger Nano S Hardware Wallet
You’ve been mining and trading AKA for some time, and you’ve finally saved up enough to stake a masternode. It’s time to get your wallet ready to send yourself a verification transaction.
After enough searching, you’ve finally found that JSON wallet on your computer. Time to send that transaction… WHAT?!? A PASSWORD?!? You don’t recall setting a password for this wallet! Isn’t the whole public / private key thing enough? No. You also have a password, and you just can’t remember it.
Does this sound like you? It sounds like me. That’s what happened to my first masternode. Oh well. I eventually remembered that password, but I don’t want to find myself in that situation ever again.
I don’t like the idea of storing cryptocurrency in JSON wallets on my dev boxes. They could get hacked. Even if they don’t get hacked, they have passwords that could be forgotten. Instead, I use a hardware wallet to store and stake all of my coins.
What? You don’t see the Akroma app in Ledger Manager? You will soon — give it time. In the meanwhile, you can use my dockerized build system to build and install the Akroma Ledger application from source code and install it to on your device.
In order to install my Akroma app, you will have to remove all other applications from your Ledger, and then make sure to upgrade the firmware to the latest version available. Don’t worry, your wallet IDs will remain the same when you reinstall your applications later on.
You should make sure your system has git
, docker
, python3
and pip3
installed. The steps for installing these vary on each operating system, so use the internet as your resource.
Once you have the dependencies installed, clone the build system repository using the following command:
git clone https://github.com/mkrufky/ledger-app-eth-dockerized.git
Enter the directory of the repository that you just cloned:
cd ledger-app-eth-dockerized
Now, we’re ready to get started. The following commands are going to prepare your system for communications with the ledger device. Before building the Akroma
app, the scripts will build the Ethereum
app / library. This library is required in order for the Akroma
app to function. Ethereum
must always be installed before any other etherea-based application such as Akroma
, and it should always be removed after removing Akroma
.
If you use any other etherea-based applications other than Akroma
, such as Ubiq
or Pirl
, you must also install them using this build system rather than via Ledger Manager. You should never mix and match between versions of the application and libraries.
The command to use is:
make && make ethereum && make akroma
While that’s running, you should expect lots of garbage to dump all over the screen and for your system to beep a lot. Don’t worry — this is how it works, and it’s completely expected.
When it’s done, your ledger will say something like, “This guy is trying to install some bogus app on your ledger — do you want to allow it?”
Say “YES”. Don’t say it aloud — press the button marked appropriately. :-P
It will probably ask you that four times. Say “YES” each time.
If you want to install additional etherea-based applications, you may do so now, but you don’t need to reinstall ethereum
again. To install Ubiq
and Pirl
do:
make && make ubiq && make pirl
You get the idea.
Now that you have the app installed, you can navigate over to w.akroma.io and use your Ledger Nano S just as you would use MyEtherWallet with Ethereum. If you prefer to use MyEtherWallet, Akroma is now fully supported there as well.
Eventually, the Akroma
app will be made officially available in Ledger Manager. When that time comes, you may feel free to remove these applications and reinstall them via the Ledger Manager. Don’t worry — your wallet IDs will always remain the same.
Using my Akroma application on the Ledger Nano S to sign transactions on the Akroma network is now just as safe as any other supported coin on the ledger, such as Ethereum. Happy signing!
Michael Ira Krufky is a Senior Systems Engineer at Vimeo in New York. He has been an active open source developer for years, contributing to projects such as nodejs/nan, video4linux
, linux-dvb
, linux-kernel
, libdvbpsi
and his own digital video capture and streaming middleware solution, dvbtee.