Most people who decide to self-custody their assets use light wallets. This also applies to those who use hardware wallets such as Trezor and Ledger. These wallets connect to a full node operated by a third party. Users choose not only light wallets but also a third party that they must trust. In this article, we will explain how these user-favorite wallets work.
Installation of Light Wallets
You can install the wallet as an application on your computer. A more popular method is to add an extension to your browser. You can start using Cardano wallets like Yoroi, Lace, Nami, Eternl, Flint, and others as a browser extension. This is the fastest and probably the most secure way to get a wallet.
Always double-check that you are getting your wallet from a secure source. Fraudsters sometimes manage to smuggle their fraudulent wallet with the same name into the web store.
There are light wallets that work as a web service. You must enter the URL of the service and log in. If you decide to use this type of wallet, create a bookmark in your browser to avoid entering the URL manually. Scammers often create a fraudulent wallet on a very similar URL.
Light wallets have the advantage that they work immediately after installation, as it is not necessary to download the entire history of the blockchain to your device.
Every time you open the wallet, you have up-to-date information about your funds and you can immediately submit a new transaction.
Full Node Is Operated By A Third Party
Each light wallet connects to a remote server that also runs a full node. This infrastructure is operated by a third party, which is usually the same team that is responsible for the development of the wallet.
In the picture below you can see two users using light wallets. Alice uses a Yoroi wallet that connects to Emurgo's infrastructure. Bob uses the Lace wallet and has his private keys stored in a Trezor hardware wallet for added security. The Lace wallet connects to infrastructure from the IOG team.
People sometimes complain that light wallets are slow. This is reflected in the fact that users have to wait a long time before I restore their balance, or that it takes a long time to send a transaction.
It is important to note that these delays can only occur between the wallet and the remote server regardless of the state of the blockchain.
Users send requests to the server which is connected to the databases and the Cardano full node. As soon as the server gets the necessary information, it sends it back to the wallet.
If users submit transactions, they are sent to the server, which then forwards them to the full node. The full node validates transactions and diffuses them to other peer nodes.
The Cardano network may be overwhelmed with transactions. In such a case, it may happen that the full node is not able to submit the transaction to the network. This can result in a long wait on the part of the user waiting for confirmation.
In the picture below, you can see that a large number of users connect to one server (and a full node) through light wallets. The infrastructure may not be able to handle all requests quickly.
In this case, the problem may be on the infrastructure side. The team should address the issue. Maybe it will be needed to add another server or full node.
Wallets Should Be Open-source
All blockchain wallets should be open-source. Users should be able to verify how seed (passphrase) and private keys are handled. Everyone should make sure that there is no fatal flaw or backdoor in the wallet that would allow the team to steal user funds.
The Cardano ecosystem has never had a problem with a fatal flaw in the wallet software. However, serious problems have already occurred in the crypto ecosystem.
One wallet, for example, mistakenly sent a passphrase in open form for language validation. The team used a third-party library and did not notice this behavior. Another wallet accidentally stored passphrases in the cloud.
This is why it’s crucial to only use wallets from trusted, reputable sources. Open-source software is generally considered more secure because its code can be reviewed by anyone, which makes it harder for malicious code to go unnoticed.
Passphase and private keys must never leave the wallet. The team must not learn the cryptographic secret that allows you and only you to spend funds.
Remember that neither the passphrase nor the private keys should ever leave the wallet. Once the team or anyone else learns the cryptographic secret, they can steal your funds.
In the picture, you can see how the cryptographic secret was sent from the wallet to the server operated by the team. The team can create and sign a transaction that will be valid. By doing this, the team practically steals your funds.
If the wallet is not open-source, users fully trust the team. This should be the less preferred option. In such a case, it is good to know the identity of the team members.
It is advantageous to use hardware wallets like Trezor and Ledger, as it is not necessary to use a light wallet to generate a passphrase and store private keys. The private keys are always stored securely on the hardware wallet and never leave it.
In this case, the light wallet is used only to create and submit the transaction to the network. However, the crucial step of signing the transaction, which authorizes the transfer of funds, is done securely within the hardware wallet. The private keys, which are needed for this signing, never leave the hardware wallet.
The image below shows that the security of funds is dependent only on the passphrase carefully stored by Alice in a secure place and the private keys that never leave the hardware wallet. The light wallet is only used as an interface between the user and the blockchain (or a third-party server connected to the blockchain).
People don't want and probably never will want to run their full node. All cryptocurrencies are largely dependent on a centralized infrastructure. Self-custody of funds through a hardware wallet should be a must for every crypto user. Users should be more concerned about what infrastructure they use and who they trust. This applies not only to wallets but also to DeFi applications. Open-source software should be the preferred choice.People should realize that the blockchain is open-source, but they access it through wallets that may not be from the same team that launched the blockchain and that may not be open-source. People do trust the blockchain, but first and foremost they should trust the wallet they use to access the blockchain.