Cardano Wallets 101
Everything you need to know and understand to have the necessary knowledge about how your wallet works and the wallet differences on the market
REMEMBER
Your Seed Phrase is the ONE SINGLE THING
you need to store and protect.
If you lose this it, you will lose the contents of your wallet, it CAN NOT be recovered
Never give your Seed Phrase to ANYONE
Introduction
During my time in Crypto, and more specifically NFTs, I have seen a lot of confusion over wallets, not just in Cardano, but in general.
So, I wanted to set a few things straight for people new to the space.
Why do I need a wallet?
That’s the easiest question to answer… if you want to hold crypto or buy NFTs, you need a wallet!
What type of wallet do I need?
First, it is necessary to understand that there are two types of wallets
custodial and non-custodial
custodial wallets are wallets where the "seed phrase" is on the side of whoever provides the wallet for you, where you DO NOT HAVE ACCESS TO YOUR KEYS, they are useful in services of temporary use, such as paper wallets, exchanges, etc. Never use custodial wallets to STORE any crypto you have.
non-custodial is the inverse of custodial, they are wallets that stay on the blockchain and you have access to the seed phrase, being able to restore it in any interface that accepts this type of wallet, always seek to have control of your funds and use non-custodial wallets.
In crypto, we have a saying, “not your keys, not your crypto”. What this means is that when you convert your hard-earned cash (aka FIAT) into crypto via an exchange, that crypto is not technically owned by you as you do not have the keys to your account. If the exchange goes bust or locks you out of your account, you cannot get to your crypto.
Secondly, if you wish to buy NFTs, an exchange wouldn’t be able to receive them to your account.
So the first thing we suggest is transferring it to your own wallet.
There are a few options when it comes to wallets. You can use software-based wallets/apps (hot) and hardware-based wallets (cold). The very important difference is discussed later!
When is a wallet not a wallet?
Easy. These…
Nami
Eternl
Yoroi
Flint
Gero
Typhon
Begin
Daedalus
… are NOT wallets. They are interfaces, like a wallet applications / extensions. These applications basically just retrieve transactions stored on the blockchain for your address and present them to you in a readable list, plus give you the ability to send and view coins and NFTs’s etc.
Also, as mentioned previously, an Exchange account is NOT a custodial wallet.
How those application wallets can send transactions with the blockchain?
There are full-node wallets and light-weight wallets, full node wallets need to download and synchronize the entire blockchain history, while light-weight wallets use services that have nodes available for use (such as blockfrost)
every transaction needs to be sent by a node and each wallet has ONE or a series of nodes of its own to send transactions.
All transactions, when sent, are allocated in the node's mempool, it's a limited memory that works like a queue or a highway.
Imagine a highway that enters and leaves cars, every time a car enters (a transaction sent) it needs to leave at some point (transaction leaving the mempool and syncing with all nodes) if your highway is always crowded, your transaction will always take time.
Every time someone sends a transaction from a light wallet, they are, along with all the other users, sending the transaction through a third-party node (like blockfrost for example) and if that mempool gets full, your transaction goes into a queue to reach the blockchain, which can take minutes or hours depending on network congestion.
Full node wallets such as Daedalus can send transactions almost instantly due to the mempool being used only by you. Wallets like the nami wallet use the blockfrost api, a service provider for Cardano that is basically used by 90% of all the dApps we have on the network, making your transaction slow.
Other wallets such as typhon, flint or yoroi that use other nodes may end up having a transaction speed advantage.
It is also possible through the nami wallet to configure an external node, where you can have a light wallet that connects to the blockchain through its own or community node that is not from blockfrost.
How do I create a wallet?
Any one of the above applications can create a wallet for you. In doing so, they will create a private key, and give you a Seed Phrase that you will use to restore that wallet, or load it into any other wallet app you choose to use. You will be able to click the ‘receive’ button to see your new address. On Cardano, this will start with addr, and be a long string of numbers and letters.
The SINGLE MOST IMPORTANT thing to remember!
The Seed Phrase provided in the step above is the ONE SINGLE THING you need to store and protect. If you lose this phrase, you will lose the contents of your wallet. It cannot be recovered.
You must protect it at all costs. If anyone else gets hold of it, they can restore your wallet and transfer the contents. Consider the effects of fire and water damage when storing this safely.
Things to note:
Do not take a photo or write this seed phrase in a note on your desktop. If a hacker, malware etc gains access to your computer, they have the phrase, they therefore have your money!
If you plan to invest a reasonable amount in Crypto, consider buying a Hardware Device for additional security
Consider buying a Billfodl or Cryptosteel Capsule type device that lets you store your seed phrase in a waterproof, fireproof way for additional security.
Remember.. DO NOT GIVE THIS SEED PHRASE TO ANYONE!! And I mean, ANYONE. No wallet-app support person ever needs it. Literally, NO ONE but YOU should know it.
I created my wallet in XXX app, but I like XXX better…
No problem at all. As I said earlier, your wallet is stored on the blockchain, it is NOT the app that you use. You can simply restore your seed phrase to any other wallet app and away you go.
Did you mention Hardware Devices?
The two main Hardware Devices are Ledger and Trezor. These add an additional level of security that is unattainable in software wallets and extensions.
Basically, when you use a software wallet, or a browser extension, to restore your seed phrase, they create a file on the computer that contains the private key. This key is encrypted with the password that you specify when you restore/create the wallet. Malware is capable of accessing this file and intercepting your password to unlock the key. With the private key unlocked, they have access to the contents of your wallet.
Because a Hardware Device is just a method of protection, your wallet is still just a bunch of transactions on the blockchain. You could, although you would never want to unless in an emergency, restore your seed phrase to any other software wallet and interact with it. This of course leaves the wallet open to the very same malware attack mentioned above. So don’t ever do it!!
Instead, you use the apps/extensions above (most support Hardware Devices) to “Pair” your Hardware protected wallet to the app. You will be prompted to connect your HW Device and unlock it. The App will talk to the device, load the account, and ask for your permission to do so.
Once the wallet is connected, you can interact with it exactly the same way you would with any other software-based app, with one key difference: When submitting a transaction, instead of entering your password, you will be using the HW Device to “sign” the transaction.
A paired HW Device NEVER stores the private key on any computer, anywhere. So it is never at risk of a malware attack. Even if your computer was stolen, your wallet is safe (assuming you didn’t leave the HW Device plugged in and your pin code written down somewhere! :-D)
If you destroy your HW Device, or it is stolen, you can simply buy another, and restore the wallet accounts using the Seed Phrase you so carefully saved safely away!!
Is there anything else I need to know?
Well, yes, there are a few things..
1) Single Address vs Multiple Addresses
Firstly, some of the apps handle wallet addresses in slightly different ways. Nami, for example, only allows for a single address. Eternl, on the other hand, allows multiple addresses, allowing unique addresses for transactions. The trouble is, if you create a wallet in Eternl, do some transactions, and then load it into Nami, things will not work as you think they should.
Best practice is to either a) stick to Eternl, and most of the time this is ok, or b) go to the Eternl Settings, and enable SAM, Single Address Mode. Doing so will mean you can use your wallet in both apps / extensions.
For example, I have an NFT wallet that I use with both Eternl and Nami because some project sites work with one or the other. By setting this wallet to Single Address Mode in Eternl, I can safely load it into Nami and use the same wallet just about everywhere.
2) UTXO’s
This is a difficult one to cover in depth here, and probably not something a newbie to the space would encounter immediately, so I will cover this another time. Suffice to say, if you run into transaction problems when purchasing NFT’s, it’s likely it’s a UTXO issue.
3) Fees
You will no doubt have heard of Gas Fees on the Ethereum Network, and how they can be hideously expensive. We have transaction fees on Cardano too, it’s referred to as ‘dust’. Every transaction requires you pay dust, however, the good news is that it’s usually only a matter of .1 to .4 ADA.
5) NFTs
If you own any NFTs, you may notice there is an amount of ADA locked in your wallet. Similarly, when sending, or receiving, NFT’s, a small amount of ADA is always included in the transactions. This is due to the Cardano network requiring you to lock away some ADA for every token and NFT your wallet holds. The amount of ADA locked away for each FT or NFT is not a fixed amount and may change depending on how many tokens you hold.
6) Collateral
If you are buying NFT’s via jpg.store, then you will need to allocate Collateral. This is usually 5ADA, and only needs to be done once on a wallet. So if you restore that wallet to another app, you don’t need to do it again.
7) Stakepools
Wallets can be “staked” to a stake pool to earn ADA on your crypto. Some stake pools offer other rewards, either by claiming them on their site (such as DEMON pool from npdemons.com) or by dripping from dripdropz or taptools. It costs a small amount to stake your wallet, so if you only have a few ADA in it, it may not be worth it. I can only suggest you DYOR in regards to which pools to stake too. Look at the smaller ones to keep Cardano decentralized!
8) Everyone is a hacker who wants your crypto
Be wary of anyone and everyone. If they ask for your seed phrase, they are 100% fraudulent. If it sounds too good to be true, it probably is. I have fallen for a few of the scams, fortunately not losing anything of note, but I put it all down to learning the hard way. There are people you can certainly trust to ask questions if you need help.. but be careful you are asking the right person.
On twitter, you may see @LedgerSupport and @Ledger_Support or @LedgerSupport_. On Discord, always check discord usernames and roles to ensure you are speaking with genuine project team members.
Double check you are corresponding with the right person, it ALWAYS pays to ask if you are unsure.
How am I supposed to remember those addresses?
Good question! They can be a bit random. Fortunately, here on Cardano, we have ADA Handles (adahandle.com). For a few ADA you can register your own handle, it’s actually only an NFT that sits in your wallet, and can be moved to any other wallet you own if you wish.
I’ve got a wallet-related question
Well, you could try asking twitter for help with your wallet, but be prepared for several scummy scammy bots to come and suggest you fill in their google form with your seed phrase for help!
Feel free to ask me, @TallNupinks on Twitter. If I don’t know the answer, I might know someone who does. I will NEVER ask you for your seed phrase.
Failing that, you can always try an internet search. Just be careful!
Appendix 1: Thoughts and Examples
I have five Cardano accounts on my Ledger, four of which are paired with Eternl, and therefore protected by my Ledger Device, one that I haven’t paired with anything, and I have two wallets that are just software wallets.
I have created five Cardano accounts on my Ledger mainly due to staking:
Wallet1 is staked to CLAY and contains my art / music / video NFT’s.
Wallet2 is staked to DEMON and contains all my gaming NFT’s. This wallet is paired with Nami AND Eternl as it is linked to CardanoLands for staking rewards, in addition to DEMON for stake pool rewards, and CryptoRaggies for staking my Raggie NFT’s for $RAG rewards.
Wallet3 is hidden from every other wallet app. This is for ADA only, and is also staked to CLAY
Wallet4 is staked to SUMN and contains Cardania and Phoenix Arena NFT’s. This wallet earns both $RAD and resources from Cardania as well as WARI from Phoenix Arena
Wallet5 is staked to SKULL and contains Nemonium NFT’s
My two software wallets are:
SoftWallet1, also staked to CLAY, and is purely used for shopping with jpg.store to allow for quick transaction signing. Once purchased, they are sent to one of my ledger accounts.
SoftWallet2 is a wallet used with Raggie Purrse from CryptoRaggies. This is for mobile use when connecting to their game.
This setup may not suit everyone, but is perfect for me at the moment. It covers all my bases and maximizes my staking for the various rewards. All wallets are set with SAM enabled in Eternl so I can use them with Nami if I ever need to.
I also have Flint, Typhon and Gero extensions installed, with the dApp connector set to different wallets so I don’t have to change the dApp wallet each time in Eternl. I can simply select the relevant wallet app if it’s supported.
Appendix 2: Reference
ADA = The name of the currency used on Cardano, named in honor of Ada Lovelace
ADA Handle = A shortcut to replace remembering the lone wallet addresser. (https://adahandle.com)
Cardano = Cardano is a public, open-sourced, decentralized proof-of-stake blockchain platform.
Collateral = feature designed to ensure smart contracts execute successfully. This is used to guarantee that nodes are always compensated for their work. Provided your collateral is never consumed, the chance of which is rare, you can withdraw it at any time.
dApp = Decentralized Application (https://en.wikipedia.org/wiki/Decentralized_application)
Dust = Transaction Fees on Cardano
FT = Fungible Tokens. Usually, multiple FT’s are of equivalent value, such as tokens used as currency, i.e. $RAG, $SKULL, or they may be tokens used to enhance gameplay.
NFT = Non-Fungible Token. This is a unique asset (usually a digital file) that you have exclusive ownership of.
Stake = Your ADA can be delegated to a Stake Pool. Rewards can be earned on this delegation. Participants are issued a stake equivalent to the number of coins they own and the stake is then used to allow participation in the protocol.
Stake pool = A public stake pool is a Cardano network node with a public address that other users can delegate to, and receive rewards. Private stake pools only deliver rewards to their owners.
UTXO = An Unspent Transaction (TX) Output. It’s the amount of leftover cryptocurrency change that you receive from each transaction.
Appendix 3: Links to Wallet Apps, Devices & Protection
Eternl https://eternl.io/
Flint https://flint-wallet.com/
Typhon https://typhonwallet.io/
Begin https://begin.is/
Yoroi https://yoroi-wallet.com/
Daedalus https://daedaluswallet.io/
NuFi https://nu.fi/
Lace https://www.lace.io/
Ledger https://ledger.com
Trezor https://trezor.io/
Billfodl https://shop.ledger.com/products/the-billfodl
CryptoSteel https://shop.ledger.com/products/cryptosteel-capsule-solo
Punchplate https://codl.co/
Crypto-Keys https://crypto-keys.com/
Bitplates https://www.bitplates.com/
Appendix 4: Troubleshooting
Things can frequently go wrong when sending transactions, thankfully there are a few things you can do to try and rectify the situation.
No dApp Account Selected / Connection
When connecting your wallet to a web3 site, you will need to choose the dApp account. This simply tells the wallet app which wallet to transact with.
I have enough ada… Don’t I?
This is one of the first gotchas when it comes to wallet transactions, particularly if you have purchased NFTs. Because a very small amount of ADA is locked with NFTs, it often appears that your wallet has ADA in it, but you can’t use it to send or buy.
There’s nothing you can do about this except add more ADA to your wallet.
No Collateral selected
In order to transact with smart contracts, you must set collateral in your wallet. In Eternl, for example, you just go to the wallet Settings and enable the Collateral option. You will need to sign a transaction to lock approx 5ADA as collateral.
The transaction won’t go through, although I have enough ADA
Sometimes the transaction won’t submit due to too many UTXO’s. Eternl has the ability to perform advanced management of UTXO’s, but it is not a feature enabled by default. The easiest solution, most of the time, is to simply send yourself some ADA. So if you are trying to send 35ADA to someone, and receive an error, try sending yourself 40ADA, and more often than not, that will resolve the problem.
My Preferred Wallet Extension isn’t supported
Not every web3 site supports every wallet browser. If this is the case, then you only need to install the relevant extension and restore your wallet using your seed phrase. That’s it. The collateral will remain, the transactions will all be there. I use the Eternl extension for linking my wallet to most sites, however, some sites only work with Nami. Easy solved by restoring your wallet to another App. If anyone tells you you have to send everything to a new wallet, it’s not the case.
It still won’t work!
There are still many other options… if you’ve recently sent a transaction, you may simply need to wait for the last transaction to complete. Check your wallet app to make sure the previous transaction has been completed, and then force re-fresh the page you are on, and try again. If that doesn’t work, you could try disconnecting, and re-connecting the wallet extension you are using from the site. Or you could simply switch to another supported Wallet extension. If this doesn’t work, you could try disabling, and re-enabling, the extension (with a force refresh of the page), or even completely restarting your browser.
I’ve forgotten my wallet password
Assuming you mean the signing password you entered when restoring your wallet from your seed phrase, then you’re all good!! Just remove the wallet from the wallet app, and restore it from your seed phrase. You will be able to enter a new password.
I’ve Lost my Seed Phrase
Sadly, there is absolutely nothing you can do about that. It’s imperative that you take every precaution to keep your seed phrase safe.
This article was written by TallNupinks and reviewed by Cute Dumb Orcs.
If it helped you or added something to your knowledge, you can tip directly to the writer, and support our blockchain educators, the writer tip wallet is $tallnupinks 💚