There is a common misconception about Bitcoin wallets. People often think these wallets contain Bitcoin. Indeed, the wallet consists of just keys. Users can only control the “coins” on the network by signing transactions by using their wallet keys. Wallets, in other words, can be seen as a keychain. These keychains comprise pairs of private and public keys. Transactions are verified with those keys, which proves that they own their coins. There are basically two types of wallets, that are differentiated by the relatedness in the keys they contain.
The first type to be discussed is the non-deterministic wallet. For this type, every key is created independently from a random number. They are not related to one another. Another type of wallet is the deterministic wallet. All the keys are generated from a single master key, which is called the seed. These keys are related to one another and can be generated once the original seed is available.
These are otherwise known as random wallets. One of the major downsides this type of wallet has is that when a user generates many of them, copies of all of them must be kept, which implies that they must be backed up as often as possible. If any of the keys is not backed up, the funds it controls will be irreversibly lost once the wallet becomes inaccessible. This markedly goes against the principle of avoiding address reuse, by using every Bitcoin address for just a single transaction.
Address reuse could reduce privacy since multiple transactions are carried out by a single address. If a user wishes to avoid address reuse, then a Type-0 non-deterministic wallet is a bad choice of wallet. It implies that many keys are maintained, which will frequently require backups.
These consist of private keys that are generated from a common seed, by using a single-way hash function. They are otherwise known as seeded wallets. The seed is a number that is randomly generated and combined with other data to produce the private keys. In this type of wallet, the seed can sufficiently recover all the generated keys, which means that a single backup is all that is required. The seed can also sufficiently aid wallet import and export. This ensures easy migration of each key between several wallet implementations.
Note: There are several websites where bitcoin trading can be carried out efficiently. Example of this is Bitcoin rush. However, to know more about it, the Bitcoin rush review provides enough information on what to expect.
This is the most advanced form of the deterministic wallet and is defined by the BIP-32 standard. HD wallets consist of keys generated in a tree structure, in such a way that a parent key can derive a series of other “children” keys, each of which can also generate its own grandchildren keys. This goes on to an infinite depth.
HD wallet has few advantages that random keys don’t have. The first of these is that the tree structure can define additional organizational meaning, such as when a certain component of subkeys is used in an incoming transaction and a different component is used in receiving change from outgoing payments.
Another advantage is that it ensures that users are able to create a series of public keys without needing access to the corresponding private keys. This ensures that HD wallets can be used on an insecure server. The public keys are not required to be preloaded or generated in advance since the server has no private keys that can be used to access the funds.
The HD wallets are powerful enough to manage several keys and addresses. They can even be more useful when combined with a standardized way of generating seeds from a series of English words that can be transcribed and migrated among wallets. This is called a mnemonic and it has a standard defined by BIP-39. Nowadays, lots of Bitcoin wallets use this standard and can easily migrate seeds for proper backup and recovery with the use of interoperable mnemonics.
Image by Rodrigo Joaquin Mba Mikue from Pixabay