一条区块链就是对所有人完全公开的分布式账本,它有一个很有趣的属性:一旦数据被记录到区块链中后就很难再发生改变。那么它到底是如何工作的呢?接下来让我们首先来观察一下单个区块的组成。

每个区块都包含了三个重要的部分:数据,哈希值,前一个区块的哈希值。其中数据部分跟区块链的类型有关,例如:比特币区块链中的区块保存了相关的交易信息,包括卖家买家以及交易比特币的数量。

接下来我们再来说下哈希值,它就像区块的指纹一样,用来标识区块和它包含的数据。

一旦某个区块被创建,它的哈希值就被唯一的确定下来啦,改变区块中任何一丁点儿的内容,都会使得它的哈希值发生很大的变化。也就是说当你需要检查区块是否被篡改时只需要检测它的哈希值是否发生变化就可以了。如果一个区块的哈希值发生了变化,那它的内容一定发生了改变。它就再也不是之前的区块啦!
区块中包含的第三个元素是前一个区块的哈希值,这个元素使得区块之间可以形成一个链条。并且能够使得区块链十分的安全。举个例子:假设我们有一条区块链包含三个区块。如图所示:
