2.3 添加工作量证明方法

作者: 9c0ddf06559c | 来源:发表于2018-08-25 17:16 被阅读1次

2.3 添加工作量证明方法

回顾一下工作量证明的原理,对交易信息进行hash,并引入随机字符串来得到hash结果,对hash结果进行难度限制,限制必须以n个0开头。这样节点需要消耗算力不断的尝试新的字符串得到符合条件的结果

def proof_of_work(self, last_proof):
proof = 0
# 工作量证明需要使用上一个区块的hash值,这里做一个简化版,拿上一个区块的工作量证明
while self.valid_proof(last_proof, proof) is False:
proof += 1
print("proof:%s" % proof)
return proof

def valid_proof(self, last_proof, proof):
guess = f'{last_proof}{proof}'.encode()
guess_hash = hashlib.sha256(guess).hexdigest()

print("guess_hash:%s" % guess_hash)
return guess_hash[0:4] == PROOF_DIFFICULTY
# 其中的print语句是为了观察测试使用,可以删掉

相关文章

  • 2.3 添加工作量证明方法

    2.3 添加工作量证明方法 回顾一下工作量证明的原理,对交易信息进行hash,并引入随机字符串来得到hash结果,...

  • NSMutableArray、NSSet、NSMutableSe

    2.NSMutableArray 2.1可变数组,是NSArray数组的子类2.2创建方法2.3添加方法2.4修改...

  • 2.6 共识机制

    2.6 共识机制 共识机制的原理是,当一个节点通过工作量证明打包了区块添加到了区块链上,要和全网其他同时完成工作量...

  • 工作量证明

    工作量证明是比特币的共识机制,共识算法是区块链中非常重要的一环,甚至说是核心,比特币的共识POW是什么呢? 工作量...

  • 工作量证明

    一. 简介 工作量证明(Proof Of Work,简称POW),简单来讲就是证明你完成了某一项工作。维基百科的解...

  • 比特币的癌症:51%攻击

    比特币的心脏是工作量证明,没有了工作量证明,比特币就会死。 工作量证明(POW)其实是一种奖励机制,鼓励矿工维护比...

  • 区块链主流共识算法

    一.POW(Proof Of Work) Proof Of Work,也就是工作量证明。工作量证明系统(或者说协议...

  • 工作量证明机制你真的都了解吗?

    工作量证明机制你真的都了解吗? 工作量证明(Proof Of Work,简称POW),简单理解就是一份证明,感觉就...

  • 共识机制

    POW 工作量证明机制 顾名思义,是指工作量的证明,通过你的工作量来证明你是可信任的,在区块链网络中通过运...

  • 3、认识比特币(二)

    1、工作量证明(POW) 记账权的获取方式:工作量证明(Proof of Work),简称POW算法解释:输入数据...

网友评论

    本文标题:2.3 添加工作量证明方法

    本文链接:https://www.haomeiwen.com/subject/xougiftx.html