建议和反馈

请填写你的反馈内容

问答 > 共识算法 > 问答详情
已解决

区块链随机数的值随每个负载而变化10LK

我一直在研究具有基本随机数值的区块链,但是每个应用程序重新启动时,随机数值都会变化,我无法弄清楚为什么

我尝试了各种检查方式,例如,当不循环时,哈希值是否以“ 0” *难度开头

def hash_block(self):
        sha = hashlib.sha512()
        sha.update( (str(self.index) + str(self.timestamp) + str(self.data) + str(self.previous_hash)).encode("utf-8") + str(self.nonce).encode() )
        valid = False
        if(sha.hexdigest().startswith('0'*self.difficulty)):
            valid = True
        while not valid:
            self.nonce += 1
            sha.update( (str(self.index) + str(self.timestamp) + str(self.data) + str(self.previous_hash)).encode("utf-8") + str(self.nonce).encode() )            if(sha.hexdigest().startswith('0'*self.difficulty)):
                valid = True
        return sha.hexdigest()

我希望随机数在应用程序重新启动之前和之后保持静态,但是当再次加载该值时,该值似乎发生了变化,我已经从JSON输出文件中进行了检查


2020-11-27
0
请先登陆或注册

justnow2020-11-27

我发现问题,该问题是使用sha.update而不清除先前的结果!

投一票
评论(0)
赞赏(0)
邀请

感谢您的善举,每一次解答会成为新人的灯塔,回答被采纳后获得20算力和相应的LK币奖励