区块链是怎么记账并保证账页可信的?
创世区块:创建一个区块,序列号为0,交易信息为空,时间为当前时间,不可更改,一般使用单例模式。将创世区块的原始信息进行Hash,保存。
第二个区块:原始信息包括:创世区块的hash值,当前区块的交易信息,当前时间。将原始信息进行Hash,保存。序列号为1。
第三个区块:原始信息包括:第二个区块的hash值,当前区块的交易信息,当前时间。将原始信息进行Hash,保存。序列号为2。
依次类推,因为每次都将前一个的Hash值当作原始信息,则最新的区块总是间接包含了所有之前的账页信息(原始信息)。那么一旦之前区块的其中一个发生更改,将会验证不通过,所以只需要验证最后一个区块就可以达到验证整个区块链账本的目的。
一张图看懂区块链: