网赚论坛

标题: 用一个挖矿小游戏解释区块链 [打印本页]

作者: zenguoceng    时间: 2017-11-24 12:09
标题: 用一个挖矿小游戏解释区块链





作者: Christian Seberino
翻译: jihui
编辑: Aya
文章来源: http://t.cn/RYZkIZM

为了帮助人们尤其是技术人员可以更好地理解区块链,我编写了一个区块链小游戏,小游戏的网址是http://mininggame.pythonanywhere.com (源代码网址是https://bitbucket.org/seberino/mining_game。)我将在下文简单解释这个小游戏的游戏规则和用户界面。我也会给出这个小游戏和真实区块链系统的一些联系。

游戏规则

玩家可以创建一个区块并且可以试图将该区块提交到主链上。一个区块包括四个字段:当前块号,随机数,父级区块索引,当前区块索引。
一条有效主链是由按照区块编号排序的有效区块集合,区块编号以0开始。
如果一个区块的哈希值是以0开始的,并且,它的父级区块索引等于主链中前一个有效区块的当前区块索引,则这个区块是一个有效区块。
可以修改区块的随机数来修改区块的散列值。
可以尝试提交无效区块。
当所有可能的块号码所标记的有效区块都已经被提交到主链上时,游戏结束。
在最长的主链上的提交最后一个有效区块的玩家将获得胜利
块号最大的区块可以不出现在最长主链上

用户界面

玩家可以在下面的表单中输入区块字段的值:




玩家可以点击“区块哈希值”按钮来计算区块的哈希值,或者,“提交块”按钮提交一个块:




提交的块在黄色区域显示为蓝色:




区块编号对应于行,并且每个可能的块编号都有一行。因此,当黄色区域的每行至少有一个块时,游戏结束。

游戏结束时,最长主链的区块将变成白色:




刷新网页可以开始新一轮游戏。

和区块链系统的关系

这个游戏中玩家获胜的过程与采用POW共识机制的区块系统中的旷工挖矿过程相同。例如,因为只有提交有效的区块才有可能获胜,所以玩家必须像在挖矿中那样被激励来验证主链上区块的有效性。而且,因为只有最长的主链才能赢得胜利,所以玩家就会和挖矿一样遇到一样的情形:如果提交的区块在较小的主链上,将被视为无效劳动。

总结

希望这个游戏能够帮助人们更直观地了解很多区块链系统中的概念。


转载请注明来源于以太经典ETC
欢迎关注!






欢迎光临 网赚论坛 (http://www.caifuba.net/) Powered by Discuz! X3.1