- SHA-256
- RIPEMD160
- ECDSA
- Transaction structure
- Block structure
- Merkle tree
- Peer-to-peer network implementation
- Message handling and serialization
- Transaction checks: CoinBase, duplicate inputs, overflows
- Transaction validation
- Block validation
- Chain management
- UTXO set
- Parameters: genesis hash, BIP block numbers, difficulty
- Proof of work algorithm
- Difficulty adjustment
- Address generation
- Transaction creation and signing
- Block creation
- Mining algorithm and rewards
- Bitcoin Script interpreter
- Transaction pool management
- API calls to the node