Safe storage of your cryptos

Storing crypto is an extremely personal choice. This post aims to provide readers with basic knowledge about some of the available solutions and has not to be intended as an advice.
Cryptocurrencies are aiming to let people be their own bank. In the cypherpunk philosophy this is a great thing, but it is also very risky!
Being our own bank, we have to answer these two questions:
- What are we doing?
- What do we need?
Indeed, we need to know the basics of how the cryptoccurencies protocols work to avoid to loose control on our funds. We also have to know how we want to use our cryptos, for instance if we want to "hodl" them, if we want to trade different kind of coins, if we want to use them to make payments, etc.
Therefore, we need to choose the right type of wallet that fits our needs, allows us to accomplish our goals safely, and aligns with our skill level and threat model.
Different kinds of wallet
Let's analyze together different kind of wallets. It is very important to undestand that there isn't a "best" solution. We only can try to find out the solution that better works for us.
Online wallets
When approaching cryptos for the first time, maybe googling how to do that, we will probably encounter online wallets. This kind of wallets can be very convenient, since usually we have only a username and a password to access our funds, like we are used with other online accounts like emails, social networks, etc. But there is an important assertion to consider:
NOT YOUR KEYS, NOT YOUR COINS!
Usually with online wallets we do not have access to our private keys and, if so, we have to consider that propably we are not the only one that have access to them because also the service provider that is managing the online wallet could have access to it. This doesn't mean our coins will definitely be stolen, but we should never forget that with cryptocurrencies, we are our own bank. In doing so, we are doing the same thing we do with traditional banks, not that cypherpunk!

So, why should we use online wallets? They are often related to exchanges and trading platforms. We will probably use them in the most cases we are buying cryptos, and we need them when using trading platforms since they are necessary in many trading strategies: i.e. keeping cryptos on private un-hosted wallets could not allow us to make trades as quick as we need.

Of course, there are other decentralized solutions to perform this tasks but they could not integrate all the functionalities we need or they could need too much skills for our level of experience.

Desktop and mobile wallets
Desktop wallets can be found in a lot of different versions, some of them prefer simplicity, some of them prefer privacy and security. We could say that they are so called because keys are stored on desktop or mobile devices.
These kind of wallets generally:
- use mnemonic seeds to backup keys;
- are always connected to the Internet when we are using them;
- could handle many cryptocurrencies;
- offer many security settings;
- are as secure as the device we are using to run them;
- can handle wallets generated with other clients.
Basically, the security of this kind of wallets relies on the device, on how safely we are storing our seed and on our ability to detect scams or any other kind of attack.
Desktop and mobile wallets are not suggested just for holding or storing cryptocurrencies, since we are exposing our wallets in the moments we connect our devices to the Internet. Nowadays it is very easy to encounter malware that could try to steal our cryptos. They are usually injected with social engineering techniques or they come packed with other software, often realized for illegal things like cracking licenses or downloading copyright protected media files.

These wallets can be used as daily solution when we are often receiving transaction and making payments. In these cases they can be very convenient.
Hardware wallets
There are two kinds of hardware wallets:
- those used as cold storage solutions;
- those used to improve the security of our cryptos;
In the first case, we are referring to wallets that are keeping our private keys isolated, as paper wallets or devices like OpenDime do.

These solutions are very powerful to receive coins or to store coins in a very safe way when we do not need to spend them. They are safe as long as:
- they have been generated in a secure way;
- they are stored in a safe place;
- the mathematics behind cryptocurrencies does its job.
When we need to move coins from these wallets, we should always empty them, since starting from this moment, we exposed our private keys and they can't be considered that secure anymore. If we do not need to spend the whole amount we are storing, it could be a very good idea to move funds to a new secure cold storage.
In the second case we are talking about hardware wallets like Trezor, Ledger, Safepal, Ellipal, etc. This kind of wallets can be considered very safe even for using cryptos on a daily basis. Indeed, they handle all the signing process without revealing the private keys they are handling. The client prepares the transaction, sends it to the hardware wallets that signs it with the correct private keys and sends it back to the client that now can propagate it to the network. These wallets often require a physical interaction by the user to perform the signing process so, even if the device we are using has been compromised, no one will be able to move our cryptos without being near our hardware wallet. On the counter, these solutions, like desktop wallets, use mnemonic seeds as backup method. So, they can be considered safe as long we are keeping our mnemonic seed in a secure place. This feature makes them useless as cold storage solutions, since we are already storing our seed in a safe place without the need to move funds. Store them also on an electronic device does not add any security to our cold storage. Also the process with which they collect entropy to generate our seed, has not to be considered safer than the methods used by other solutions. We could obtain a mnemonic seed even rolling our dice many times and converting results into entropy to obtain a mnemonic seed.

Final thoughts
So, which one can be considered as the best solutions? Maybe no one, because any solution has many pros and cons and has been designed to satisfy different needs. Online wallets are useful since they can be accessed from anywhere, desktop wallets give us the control over our keys and can be used on regular basis, hardware wallets can be used as cold storage solutions or for keeping our private keys safer.
Therefore the best solution could be using all these solutions, separating coins in consideration of what we want to use them for, so we can always be ready to send coins to a safe cold storage or we can quickly perform a good trade on our preferred exchange platform. We also need to consider that this strategy avoids us from having a single point of failure since if one of our wallets gets compromised, we are not going to loose our coins.
In conclusion, we should not rely on a single solution and should not adopt solutions without previously analyzing them. We should only use wallets we have analysed and tested, using them only when we feel pretty comfortable with their features.