![一本书读懂区块链](https://wfqqreader-1252317822.image.myqcloud.com/cover/476/26405476/b_26405476.jpg)
1.4 生成一个区块链
为了对区块链的结构和特性有一个直观的认识,可以自己动手生成一个区块链。登录以下网址:https://blockchain.adesso.ch/#,可以在线生成一个模拟的区块链。该模拟网站首页如图1-5所示,单击“Blockchain Demo”链接进入模拟生成区块链的页面,可生成一个简化版本的模拟区块链。
![](https://epubservercos.yuewen.com/FE3A70/14881790404622306/epubprivate/OEBPS/Images/25_01.jpg?sign=1739136584-r5fOj8Mn60xjDngkz4WJItvlPlbfWzOf-0-84ef3d60263333b9518cd71506b83c8c)
图1-5 模拟生成区块链
进入Blockchain Demo页面后,显示的区块为该区块链的“创世区块”,如图1-6所示。这是一个极简版本的区块,区块头中只包括区块的索引值(ID)、前一区块的哈希值、本区块的哈希值,区块体中Data为本区块所包含的数据。作为创世区块,它没有前一个区块,所以前一区块的哈希值为0(64个字符)。此时它本身也没有根据区块体中的数据生成的本区块的哈希值,所以本区块的哈希值为空。
![](https://epubservercos.yuewen.com/FE3A70/14881790404622306/epubprivate/OEBPS/Images/25_02.jpg?sign=1739136584-Z3SI9istq09TwIb3p90OjIxukXzs4bfd-0-cb36917d352bf6705a90a7e792e80a7a)
图1-6 创世区块
单击“Mine”按钮,会生成根据区块体中的数据生成的本区块的哈希值,如图1-7所示。此时区块从橙色变为绿色,说明已经可用。
![](https://epubservercos.yuewen.com/FE3A70/14881790404622306/epubprivate/OEBPS/Images/26_01.jpg?sign=1739136584-i8wgh8bIPJCS1a27MO5xGVyAcmoA2Km7-0-e99207258c876adf9b3d90a6c3415b8e)
图1-7 生成了创世区块的哈希值
接下来生成下一个区块。单击图1-7中的“Add Block”按钮生成了第二个区块,如图1-8所示。此时前一区块链的哈希值与创世区块的哈希值是一样的,区块之间就是凭借这个哈希值相互链接在一起。接下来单击该区块的“Mine”按钮,会生成本区块的哈希值,如图1-9所示。
![](https://epubservercos.yuewen.com/FE3A70/14881790404622306/epubprivate/OEBPS/Images/26_02.jpg?sign=1739136584-kiw0ro6KTGpdBCwS53Ez2bi4RyAc0cPG-0-ba80979ca3fa1dc00d2fb6ea01c25ab1)
图1-8 添加第二个区块
![](https://epubservercos.yuewen.com/FE3A70/14881790404622306/epubprivate/OEBPS/Images/27_01.jpg?sign=1739136584-LKgdmb3TVHNQr7SIzBs64yabwEYAWdiQ-0-3b05fb99e341c1f9ec3a94c47de88707)
图1-9 生成第二个区块的哈希值
依照上述操作类推,可以生成含有4个区块的一个模拟的区块链。如图1-10所示。它们之间都是后一个区块通过前一个区块的哈希值两两相连而成。
![](https://epubservercos.yuewen.com/FE3A70/14881790404622306/epubprivate/OEBPS/Images/27_02.jpg?sign=1739136584-GrgVtUgglvzuExmkVOR4qJf6A0X9zpxG-0-efb65c0355fc5adc02894c8f0c06537e)
图1-10 包含4个区块的区块链
此时重新生成创世区块的哈希值,可见后边的第二个区块变为无效的橙色状态,因为它与之前的、旧的创世区块的链接断了,如图1-11所示。不仅如此,与第二个区块相链接的两个区块也都成为无效状态。这说明,如果要修改1个区块的信息,则与之相链接的所有区块信息都要修改,这在实际中难度极高。
![](https://epubservercos.yuewen.com/FE3A70/14881790404622306/epubprivate/OEBPS/Images/28_01.jpg?sign=1739136584-M8jUib1OLnaJCHSAkV1X1M8jNXBuVkLM-0-9f5c6c9bdcc42595564a58e3886734af)
图1-11 哈希值变化后区块失效
此时单击图1-11中第二个区块的“更新”按钮,然后再单击该区块的“Mine”按钮,则可以恢复该区块与创世区块的链接,如图1-12所示。
![](https://epubservercos.yuewen.com/FE3A70/14881790404622306/epubprivate/OEBPS/Images/28_02.jpg?sign=1739136584-p1BSE4KIncEkPVcKaygdxbzbKgCI1WMV-0-09889c715f7e1ca83a8209be91ced02f)
图1-12 区块重新恢复链接
通过上述操作,可以比较直观地认识区块链的结构和特性。除了这个模拟生成区块链的网站之外,另外再为大家推荐一个模拟区块链生成网站:https://blockchaindemo.io/,该站点不仅可以可视化地生成一个模拟区块链,并且还可以生成多个节点形成一个区块链网络,也非常有趣,如图1-13所示。有兴趣的朋友也可以去这个网站体验一下,加深对区块链概念和特性的认识。
![](https://epubservercos.yuewen.com/FE3A70/14881790404622306/epubprivate/OEBPS/Images/29_01.jpg?sign=1739136584-ipqVhePCv9uAutfw29qcTGtSxzx4YHHm-0-6d6c0d91aaf888a8f8d59678cae7746e)
图1-13 另一个模拟生成区块链网络的网站