Cryptocurrency Interfaces and Blockchain Design. Part I

Eugene I.
Shakka Agency
Published in
9 min readMay 21, 2019

Let’s start with defining what service you will work on. How to do it? Start with authorization. If you are a geek, blockchain specialist and love everything secure — probably, the creation of the account in your service will start with rewriting mnemonics onto paper. Congrats, you are doing a decentralized product.

But if you are cunning and want to keep users’ money on your servers under the grounds of “no keys, easy registration through email” — your service is centralized. Which one are you creating?

What’s the difference?

In decentralized services every person possesses his cryptocurrency on his own and directly exchanges it with other members of the net. You download an unusual wallet, write down your key, hide it in a secure place, get an address, share it to your friends, receive coins from them, and enjoy. That’s it, now you are crypto enthusiast. Pay attention, no personal details were asked. You’ve become a user of a new payment system anonymously.

The examples of such services are all clients of the creators: Bitcoin, Ethereum. Additionally, there are services from third party developers: Electrum, MyEtherWallet.

And, of course, there are questionable resources – centralized. On the one hand, they simplify users’ lives: there’s no need to write down keys, it’s easy to restore access to money. On the other hand, everything is bad: all resources are controlled by a third party that can break at any point, scam or something else. Moreover, these services work with regulators (i.e. in the interest of the government), and any operation requires id confirmation. These include cryptocurrency trading platforms: Bitfinex, Coinbase etc. and wallets: Freewallet, Cryptonator etc.

About clients and platforms

Finally we are clear with the basics, so now I’ll tell you about clients existing in this technology. A client is any interface thanks to which you can interact with the net, i.e. create addresses, send and receive transactions (payments). They include web, desktop, mobile and hardware wallets. Further I will only speak about decentralized services, and its comparison to the centralized I will leave for later, other parts. So.

Web

Web-client is an app that works in a browser. As the app is decentralized, it can’t keep your keys. Where does it keep them? More often in a secure storage of your browser — localstorage. While your keys are there, you can safely manage your wallet. Don’t forget to save the back-up: you’ll need it when you clear your browser. You never know. If the wallet’s developer is adequate, he doesn’t see your keys and works with them only in an encrypted form. Web development is always easier and faster. If you are in, start with it!

Mobile

Mobile client are mobile applications for iOS, Android. The thing with storing keys is quite the same as with web. But hacking keys is much harder. Advice: Coinomi, Jaxx.

Desktop

Naturally, it is necessary to place such a client directly on PC or laptop with the help of an installation file. As previous types, this client is fairly safe with its storage.The top is defaulted clients from a developer. Though in order to use them, it’s necessary to download the whole blockchain, and that’s a freaking number of gigabytes.

That’s why “handymen” create light wallets. They downloaded blockchain in advance and support its performance on their server. And you can send requests there directly from the interface when needed, e.g. when you send a transaction. Try: Exodus. Btw, both web and mobile wallets are light. That’s why, you can download them quickly on your smartphones.

Browser Extensions

Comfy when surfing through DApps and it’s necessary to buy something fast.

Extensions, resembling in their format mobile wallets, perfectly fit in browsers. As web, they use localstorage.

When about interfaces?

Here I’ll include a small intro. All these clients have pretty much the same UX. I’ve already written above: download/ install, receive a secret phrase (mnemonic), write it down (otherwise, will loose resources), set a password (to encrypt keys), see your public address and share it with friends, profit. Apart from that, you can send funds yourself and edit commission, view history etc. I’ll tell about everything later. There are also wallets!

Hardware wallets

The safest way to store and use cryptocurrencies among available to a simple user. Keys are generated and stored on a gadget. To manage the wallet, connect it to pc. Sending transactions is only after confirming PIN-code on a gadget. Client is the analogue of a desktop. It’s also light as works on developers’ servers. Use Ledger.

Paper wallet

If paper was eternal, I would use only paper wallet. Nuances. It’s possible to check balance in public block explorers. For sending transactions you’ll have to import a wallet into web, mobile or desktop. It’s even better to collect a transaction offline, but that is not about beauty now.

If accidentally everything got clear, then I had to draw another illustration. Here the list ends. Hope now you can estimate how great variety of products you can project, draw and design.

Estimated? Now let’s get into this hell that happens in the industry. Won’t create anything, everything is with screenshots from the leaders of the market.

What’s going on with interfaces now?

What do you know about money? When you want to use money, you get a card or cash out of your pocket and pay. It is accepted everywhere. That is it.

What do you know about crypto? What do your clients know about crypto? Both you and them will face the same problem — all existing solutions are created by geeks for geeks. And when I was designing my first interface, I couldn’t assume that everything will be so confusing.

First of all, I decided to get a wallet. Back then I heard only about Bitcoin, that’s why I found an official installer and got it started. During the installation I was offered to upload 100 Gb of files, unclear to me, which was beyond the norm for my laptop. Pain. Whatever, I left it. That’s how my familiarity with Bitcoin ended without even being started.

After a while I learned that there are other wallets, so called “light wallets”. They live in web and you can get an address online. As far as I understood, the most popular was Blockchain Wallet. During the registration I was asked an email, a password, and instead of keys I was given some ID, that alerted me. There was no decentralization and anonymity.

It appeared that login is possible only with ID. That is the only login, email doesn’t work anymore. After usual confirmation of email and login with ID we get to the control panel of a wallet where we face the reality of being poor and having 0,0,0,… everywhere. Besides, developers are not in charge of the wallet, so better figure it out yourself, save the login details. Otherwise, you won’t get your money back. It’s not a bank!

As we have zeros, it is time to purchase then. Click “Buy & Sell”. And here you are! Bad news again — you can’t buy anything, because the major part of the country is not supported by a provider. Remember I told in the beginning that you have become a crypto enthusiast? Hm, it’s dead here.

Wallets give everyone an opportunity to register, but already inside don’t meet the demands of all users. That’s why, the majority has to use third party exchangers.

If you have a fiat (dollars, rubles etc.), you can find the one with cryptocurrency (bitcoin, ethereum etc.) and make an exchange. You meet online or f2f. Besides that there are special services. They differ from each other only by the bigger % for exchange + personal details. It looks something like this:

1–3 days is quite a perspective, but there is nothing to choose from. Money will be assigned to your wallet’s address that you created in Blockchain Wallet. Further you use coins as you want. For instance, send them to a friend. And that is the moment to work with long addresses, commissions and so on.

Why are addresses so strange? How to send money to a friend from a contact list? Can I change commission? Can I set commission? How much is better? Reg. 50 priority 74? Wtf?

These are users’ questions. Yes, addresses do really look weird and have a huge format:

1F1tAaz5x1HUXrCNLbtMDqcw6o5GNn4xqX
bitcoincash:qzgy20ljfu24v8v4msnzpnxst5gpm930lcmuekam2q
0xc9c390d82a3eda435B344CbFc983870bc1660217
rf1BiGeXwwQoi8Z2ueFYTEXSwuJYfV2Jpn

You won’t find your friend’s wallet in the net, because address is not linked to a name or any other indicator of its owner. Anonymity as it is.

Better late than never. We send a transaction, and that’s when more questions appear.

First impression after all of this:

“Return me my dollars, your bitcoin doesn’t work!”

And if it seems that I just found a bad example, let’s have a look at a not less popular wallet with another currency. Here MyEtherWallet comes.

At the beginning we are alerted that a wallet is not a bank. It’s just you who is in charge of your money, we won’t restore you anything. If you don’t read all the warnings — you are doomed. Close and look at the header:

Not a friendly meeting, huh? Don’t worry, you were taken care of, just return to the manual:

1. Install extensions EAL, MetaMask, Cryponite or MyEtherWallet for Chrome to block phishing websites.

2. Carefully check the address of the website you are on.

3. The name of our company MYETHERWALLET INC must be highlighted in address bar with green.

4. Don’t trust and check messages or links to Twitter, Reddit, Fb…

5. Use ad blockers for your browser.

6. For better security install offline version of our wallet.

7. Always set two-steps identification.

19. If you accidentally visited a malicious website — immediately delete history and clear cash of your browser.

20. And finally, switch on your brain!

Further we see a field for entering password like we’ve been to the website before. Later it appears that wallets on this website are created in the same way, later the familiar scenario with addresses, commissions and other details repeats.

Ultimately we get confusing interfaces where crypto developers who are trying to help the whole world don’t help at all. Over time you understand that all these geek things are a useful tool for which it’s worth making sacrifices. And if speaking about security and comfort, then comfort is sacrificed. But such a number of technical specs leads to not less important problem – users’ mistakes. I’ll write about this later.

Hope that after a series of my articles developers and designers will ask themselves a question: Will a usual user be able to interact with a system intuitively?

See ya!

--

--