Blocks and blockchain