Crypto

Introducing project AdaLite, a Cardano in-browser wallet

Michal Petro
17.4.2019
5 min read

The community around Cardano platform has been crying for many months for a more convenient way to interact with the Cardano blockchain: to store and transfer Cardano’s ADA cryptocurrency. Before AdaLite, the only option was the official Daedalus heavy wallet. It’s inconvenient to install because it requires to download and synchronise a copy of blockchain initially and during each startup.

In 2018, we at Vacuumlabs, as big fans and holders of Cardano cryptocurrency, have decided to help the Cardano ecosystem by developing a light, secure multi-platform wallet that users can access easily with a web-browser without the need to download anything. Our inspiration for this project was a favourite Ethereum web-based wallet MyEtherWallet. We code-named the project CardanoLite but later renamed it to AdaLite to better reflect the currency for the wallet.

Early in the project, we encountered many difficulties arising from the fact that Cardano was still a young project and it missed more in-depth technical specification and documentation. To proceed with our project, we had to reverse engineer Daedalus.

Initially, we decided to provide 2 types of access to the wallet by seed phrase and encrypted .JSON. Both these accesses are insecure because they require the handling of sensitive data in an insecure way and are vulnerable to different types of potential attacks. They also require that the user trusts that AdaLite website won’t steal their sensitive data. Therefore, from the beginning, we developed the wallet keeping in mind that our product is complete and acceptable for users only once we provide the possibility of trustless secure access through a trusted hardware wallet.

We are happy that we managed to achieve this and together with Trezor we provide the Cardano community with a new secure way to manage their ADA cryptocurrency. This way, the user always stores their private key on the Trezor hardware wallet. It isn’t necessary for the user to trust us when accessing their wallet through AdaLite website.

You can use the wallet on any browser and operating system without the need to download anything. It takes just a few seconds to generate new or access an existing wallet, and it is straightforward to use. We don’t store any sensitive data about you, and your private key never leaves your computer, the signing of transactions completes in your browser (or, in case you are using Trezor, they complete it on their end). On top of it, AdaLite works with smartphones so you can access your funds from anywhere anytime. As far as we know, we are the only mobile friendly wallet currently on the market.

AdaLite wallet currently has one limitation compared to Daedalus. It is limited to 10 pre-defined (sequentially derived) addresses per wallet. This implementation implies that wallets created on Daedalus client won’t correctly work on AdaLite. The reason is that after each transaction, Daedalus randomly derives new address, therefore when checking for wallet balance, Daedalus scans the whole blockchain for possible addresses that belong to given wallet’s private key. Mimicking it would be complicated to do for multiple users on a server every time they try to access their wallet. Therefore, we decided for this limitation as we believe most of the users are fine with a single address per wallet (and we provide them with 9 extra, should they need more). Imported Daedalus wallets do work, but will most likely show 0 balance (as we aren’t monitoring the randomly generated addresses), unless you are keeping your funds on the first address that was generated by Daedalus that is identical with first AdaLite address. It is worth to note that AdaLite wallets are fully compatible and you can import them to Daedalus.

We don’t want to stop with just Trezor integration. We have some bold plans. We want to integrate with Nano Ledger once it supports Cardano. We plan to maintain compatibility and interoperability with all future official Cardano releases. This way we can guarantee a possibility to fall back to the official wallet for any reason. We also want to support interaction with smart contracts once released and provide an interface for staking delegation and much more. Right now, we are listening to the community and working to implement features deemed most useful.

Code for AdaLite wallet is publicly auditable and easy to review on GitHub. This project is developed by Vacuumlabs, a centre of excellence for digital design and engineering.

Follow us on our Twitter or join our Telegram channel to be notified when the new Trezor firmware is released.

Michal Petro

Project Manager
Share

Let’s build your digital product together