共识算法一个浅解

作者: 快速读写书评站 | 来源:发表于2018-04-15 22:15 被阅读174次

——读《虚拟货币革命:比特币只是开始》

题记:日本经济学家野口悠纪雄,所写区块链应用通俗读物,看点是在技术上不泛泛而论,读者有机会了解接近本质的“公共密匙和电子签名”理论,却不用具备高等数学、计算机功底。时下不少人对于区块链,仅乐于嘲笑,以为自己超尘脱俗,“我知道你知道自己不懂得区块链……"之类,却不愿花时间去阅读。为此推荐此书。

你与我素不相识,都参加一个寻宝游戏,你、我分别淘汰对手,并列入围终极闯关。

按闯关规则,只许我们通过公开沟通(任何人可以见到我们沟通的全部内容)约定一组密码。

由于规则限定你、我的一切沟通都是公开的,显然,这组约定的密码,不可用语言(口头或书面)、动作或者其他任何外在方式告诉对方,只许在内心默记。否则就不是“密码”,谁知道都可以捷足先登了。

宝藏大门密码锁,有2组解锁输入口,你、我必须各输入一组约定好的密码,如果输入相同,宝藏立即打开。

规则允许用计算机运算。你、我约定这组密码,位数可以是几十位或者更多。位数越多越不易被别人破解。我们有没有可能成功?

1976年,一位教授和一位学生,分别来自美国两所不同的大学,共同发明一种计算方法,可以作为上述闯关工具,成功率达100%,而且一般人都有能力理解。

下面略作“语法编译”,描述这种计算方法。笔者以为,只要你的代数知识有初中水平,足可以明白。如果你看到代数就头晕,也可以跳过“原理描述”,直接看“实例试算”。顺便说明:本文描述只求易懂,不符合数学规范。

【原理描述】

目标:你、我希望约定一组共通密码。

第一步(可公开):定下N和n两个整数。

第二步(秘密):你、我各自决定秘密整数a,注意:各自秘密决定的a禁止公开,也禁止你、我互相告知。

第三步(可公开):你、我决定运用计算方法如下:“n的a次方,除以N,得整数商、余数b。”各自运算。

第四步(可公开):你、我向对方说出各自运算结果b。

第五步(始终保密a,其他可公开):用对方的b,与自己秘密决定的a,进行以下运算:“b的a次方,除以N,得整数商、余数K。”

第六步(秘密):你、我分别运算得到的K,必然是相同的一个数。至此约定一组共通密码完成,你、我各自默记和使用,无需互相告知。

【实例试算】

第一步(可公开):

下面两个数是你、我随意选定的。可选位数本来可以随意。但笔者用手机的计算器,运算能力有限,所以选了这两个:

N = 13  n = 4

第二步(秘密):

你决定了秘密数11,自始至终不公开,你、我亦不可互相告知。

同时,我决定了秘密数8,自始至终不公开,你、我亦不可互相告知。

第三步(你的秘密决定数11和我的秘密决定数8,必须保密。其他可公开):

第四步(可公开):交换余数

你将上一步运算得到的余数10告诉我。

同时,我将上一步运算得到的余数3告诉你。

第五步(运算结果余数9保密。其他可公开):

以上五步结束时,你、我得到的余数是相同的9,即共通密码。

实例试算综述:

以上五步,你、我使用的计算方法一致,各自决定的秘密数始终无需透露。公开选定两个任意数N和n,你、我分别运算,最终能达成一致的闯关密码。你、我各自决定的秘密数的位数越多,得到的共通密码越安全、越不易破解。

相关文章

  • 共识算法一个浅解

    ——读《虚拟货币革命:比特币只是开始》 题记:日本经济学家野口悠纪雄,所写区块链应用通俗读物,看点是在技术上不泛泛...

  • 2019-02-22-方法

    1.EM算法 (1)从最大似然到EM算法浅解

  • EM算法讲解文章

    知乎人人都懂EM算法CSDN从最大似然到EM算法浅解

  • EM 算法

    参考: 从最大似然到EM算法浅解 (EM算法)The EM Algorithm EM算法及其推广学习笔记 EM算法...

  • 2020-01-09 本体的VBFT共识算法

    概括 共识节点 共识候选节点 共识网络构建 随机节点完成共识 算法概述 VBFT算法可以认为是传统BFT算法在可验...

  • 【猫眼看全球】共识算法的“黑客指南”

    在每一个成功的加密货币背后,都有一个顶级的共识算法 -- 在加密领域,共识算法可以防止双重支出。虽然没有一个共识算...

  • 区块链常见问题

    1:以太坊的共识算法 在以太坊中,默认使用ethash(pow)共识算法进行网络正确性的保障,这种共识算法采用的是...

  • IoTex将区块链应用在物联网的尝试

    共识算法 iotex提出了自己的Roll-DPos共识算法,结合DPoS、PBFT,以及random beacon...

  • Paxos 算法

    共识算法:Paxos 算法 1. 目录 [TOC] 2. 共识问题 [1] 什么是共识问题?粗略地说,该问题是在一...

  • 共识算法系列之一:私链的raft算法和联盟链的 pbft 算法

    对数据顺序达成一致共识是很多共识算法要解决的本质问题Fabic的pbft算法实现现阶段的共识算法主要可以分成三大类...

网友评论

    本文标题:共识算法一个浅解

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