Before we dive into the details of security, we'll review the various blockchains available as platforms for development, and how they differ.
Managing Your Keys
Attack Vectors and Prevention
For each of the limits of a system, there are a number of ways that a malicious party might exploit them for personal gain. In this module, we'll review the various attacks and provide some suggestions as to how they can be mitigated.
HD Wallets & Seed Phrases
The first thing to know about Hierarchical Deterministic (HD) Wallets & Seed Phrases is that they’re not a piece of software, but rather a specification for how cryptocurrency wallets can more reliably generate and store addresses from a single private key. In fact, hardware wallets predominantly are enabled by this key innovation.
No singular specification has dominated the blockchain industry or even a particular token. Many wallets have failed to implement the specification in a way that is easy to import and export from vendor to vendor. However, HD wallets and seed phrases still play a valuable role in the everyday use of blockchain software.
A deterministic wallet is nothing more than a way to regenerate many addresses from a single extended private key. We call it extended because it is twice the length of a normal key, which allows us to perform some cool math tricks. We won’t get into the fancy math here, but it is helpful to understand how the keys are generated.
How it works
The best way to understand how HD wallets work is by using one in real time. Fortunately, there is a handy BIP32 Deterministic Key Generator available online for us to play with! Although the specific derivation paths (algorithms) used vary between tokens, the concept is similar across platforms.
Seed Phrases are a user-friendly representation of the Extended Private Key used in an HD Wallet. The typically come in the form of 12-, 18-, or 24-word English words. They are the basis for backing up and restoring a hardware wallet. If the device were ever lost, restoring the wallet is as simple as re-entering the Seed Phrase into a new device. This method can also be used with software wallets and generally is seen as the preferred way to backup and restore cryptocurrency wallets.