区块是区块链的基本结构单元。它是数据文件,它由元数据的区块头和交易数据的区块主体构成。区块通过链接上一个区块形成一个链式结构,就称为区块链。
区块参数:
魔法数:客户端解析block数据的识别码,每种币种魔法数不同。
区块头:版本号,上一区块哈希值,merkle根节点,时间戳,难度值,随机数。每个区块头通过merkle根节点关联区块中众多的交易事务,区块间通过头哈希串联。
- merkle
交易哈希,然后两两哈希,再两两哈希,再两两哈希…直到哈希成一个根哈希值。比如,
4笔交易,两两哈希之后,再两两哈希,就变成根哈希值。
区块高度:区块编号。不能确定唯一区块,因为分叉。它不保存在区块的数据结构中,存储在索引库。
头哈希值:区块头经过两次SHA256计算得到的数字,可以确定唯一区块。区块的头哈希保存在下一个区块中。它同样不保存在区块的数据结构中,和区块高度一样作为元数据存储在索引库中。