作者:黎跃春
孔壹学院创始人兼CEO
黎跃春:孔壹学院创始人兼CEO,国内区块链布道先行者,通信和信息技术培养工程区块链高级授课专家。如果您有任何关于区块链的问题,可以加入区块链技术交流QQ群729666975,我们会为您一一解答。
从零到壹学习共识算法为一个系列,一共18讲,包括通过一个App的演示深入理解区块链运行原理、go 实现简单的区块链、拜占庭、PoW、PoS、DPoS、Paxos、Raft等,为大家详尽的介绍共识算法的学习过程。今天我们将为大家介绍从零到壹学习共识算法第一讲:通过一个App的演示深入理解区块链运行原理。话不多说,马上开启我们的共识算法学习之旅。
资料获取,添加莉莉微信kongyixueyuan。
孔壹学院
下载安装
如果没有安装nodejs,需要先安装 nodejs
运行结果:
创建区块
在 blockchian ->后面输入 bc查看创始区块结构。
当一个区块挖矿时都发生了什么?
在 blockchian ->后面输入 挖矿并创建一个新的模块。
Hash是怎么计算的?
Hash值是一个十六进制固定长度为64位的唯一的标识。
hash值是由, , , 和 作为输入数据计算而得。
SHA256算法将根据给出的输入数据计算出一个唯一的hash值,只要输入值不变,永远返回相同的结果。
在线演示:
https://anders.com/blockchain/hash.html
你是否注意到块哈希中的四个前导0?
四个前导0是有效散列的最低要求。 所需的前导0的数量称为。
下面的方法验证hash难度是否有效。
这就是我们所熟知的工作量证明系统 - Proof-of-Work system。
什么是nonce?
nonce是一个用来找到满足条件的hash值的数字。
值一直迭代,直到 值有效为止。在我们案例中一个有效的 值是最少有4个前导0。找到 值以满足合适条件的值的过程就叫做挖矿。
随着难度的增加,可能的有效散列数减少。 使用较少可能的有效散列,需要更多的处理能力才能找到有效的散列。
在线地址:
https://anders.com/blockchain/block.html
领取专属 10元无门槛券
私享最新 技术干货