首页 > 解决方案 > 超级账本上可证明公平的随机数生成器

问题描述

我正在开发一种去中心化算法,该算法能够根据输入数据和给定的随机种子进行确定性计算。

但是如何在超级账本上实现可证明公平且密码安全的伪随机数生成器(CSPRNG)?

我的第一个假设是从共识算法中获得一个随机数,但如果验证者仅使用他操纵的区块发送交易,他就可以操纵当前区块以发挥他的优势。

后来我开发了这个算法,它应该可以工作但很难实现:

for every block:
   every validator:
   1. generates new temporary privkey and pubkey
   2. makes a raw transaction to the next validators pubkey
   3. transfers his privkey to the blockchain after a block was broadcasted
   4. verifies every privkey which belongs to a pubkey on the blockchain
   5. calculates H(blockhash | privkey1 | privkey2 | ... | privkeyn) as new random number

我认为这对于赌博应用程序也很有趣。

那么解决我的问题的最简单方法是什么?我应该实现上面显示的算法吗?

标签: cryptographyhyperledger-fabrichyperledgerblockchainhyperledger-sawtooth

解决方案


推荐阅读