节点总数固定,每个节点有自己的私钥和其他所有节点的公钥。 网络通信质量不稳定,有丢包的可能,各个节点间延时不均匀。 用什么方式可以在少数节点宕机、丢包、延时情况下依然能用最少的通信轮次共识出不被预测的随机数?
节点 N 有 i 个。 当 N 得到出上一个已共识的随机数时,将自己产生的随机数 r 的 hash 与签名 Ni(hash(r),sig)广播 N 陆续收到其他节点 Ni(hash,sig),公钥验证后追加保存在 S 里,当 S 中累计到 i/2+1 个 sig 后签名并广播 S N 陆续收到 Si,这时由于网络质量在极端情况下会使每个 N 的 S 是不同的(比如 12347 ,23456 ,13456 )而无法达成共识,我觉得思路不对,原计划在 hash 达成共识后再公示出 r ,但现在 S 无法达成共识。
求老哥们指点一下思路,可以忽略我的想法。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.