The blockchain is a distributed ledger or decentralized database that
- records transactions between two parties immutable and time-stamped,
- requires both parties’ verification and
- can’t be undone.
Instead of a central admin, the blockchain has a network of replicated databases which communicate via the Internet and are visible to anyone within the blockchain network. Such a network can be a private system with restricted access like an intranet, or public, like the Internet. In the digital currency world, transactions are forever documented on the blockchain.
Wallet, account, address, private keys, transactions – cryptocurrency terms
A crypto wallet is defined by its seed which consists of 24 or 12 words. For one seed there is only one wallet. Modern hierarchical deterministic wallets or HD wallets use master or extended public keys (xPub) which can be used to back up the whole HD wallet using only the seed phrase. They can also recover addresses and funds attached to them. Since the recovery phrase is the seed from which every xPub’s corresponding xPriv (extended private key) is derived, all of the private keys of all addresses derived within the wallet are contained within it.
In non-deterministic wallets, each key is randomly generated on its own accord and they are not extracted from one seed phrase. Therefore, any backups of the wallet must store each and every single private key used as an address, as well as a buffer of 100 or so future keys that may have already been given out as addresses but with payments not yet received.
In a wallet, there are several accounts (aka. sub-wallet). Depending on the wallet type, the number of accounts can be restricted, for example to 10 accounts per wallet.
An account has an unlimited number of addresses. Addresses are similar to invoice numbers. It is advisable to use only one address per transaction. Signing messages can be used to prove ownership of a specific address. However, once generated, addresses never become invalid and can be used to receive multiple payments any time later.
Addresses can be normal (receiving) or change addresses. When any transaction is done, the private key will be completely depleted of its bitcoins, even if only a portion of its bitcoins are spent. The leftover change in a transaction is not returned to the sending address, but to a newly-created change address in the same account and wallet. This significantly increases privacy, because it is unclear which of the transfers represent payments and which represent the receipt of change.
Each time funds are received, the account uses the xPub to generate a new receiving address.
The address has a private and public key pair. Public and private keys are mathematically linked through a signature algorithm, a mathematical procedure for creating identities, signing messages, and validating signatures.
- Private keys start with a 5
- Encrypted private keys start with a 6
- Public keys start with a 1
Such keys can be represented by a QR code. The private/public keys are shown in a paper wallet, which is not really a wallet in the meaning as defined above.
A private key generates a public key which generates an address. Each step is irreversible. An address can’t generate a public key, nor can a public key generate a private key. In contrast to other systems protected by username and password logins, Bitcoin is secured through a single point of access including identification and authentication.
Transactions are messages signed with a private key.
Sweeping a paper wallet generates a transaction moving all unspent outputs into a wallet address, depleting the paper wallet. The paper wallet private key is never again used by the wallet software. Importing the paper wallet keeps the private key relevant.
Privacy depends on the strict separation between addresses and personal identities, a model referred to as pseudonymity.