区块链研习社深脑浅谈一分钟读书俱乐部

一分钟读书俱乐部:《区块链技术驱动金融》系列(五)隐秘性的应用:

2018-12-17  本文已影响196人  全职高手一叶之秋

原文精选:现在来看一下隐秘性的应用。具体来说,我们把想做的事情称为承诺(commitment)。这里承诺是一个数字化过程,可以类比为以下动作:首先选定一个数字,将数字装进信封,然后将该信封放到一个人人都看得到的桌子上。这样做以后,可以说你就信封里的数字做出了承诺,在打开信封前,虽然你已经做出了承诺,对其他人来说它还是秘密。在之后,你可以打开信封,来展示承诺的数值。

承诺协议 一个承诺协议方案由两个算法构成:

● com:=commit(msg, nonce),承诺函数将信息(msg)和一个临时随机数(nonce)作为输入,输出就是一个“承诺”。

● verify(com, msg, nonce),验证函数将某个承诺输出(com)、临时随机数(nonce)及信息(msg)作为输入,如果com==commit(msg, nonce),则返回“真”(true);反之则返回“假”(false)。

读书笔记: 1,我们想要做的事情都是一个承诺。

2,比如有一个信封,里面有一个数字,你对这个数字做出承诺。虽然其他人都能

看到这个信封,但是看不到数字,也就是对其他人还是具有隐秘性。

3,打开信封后,其他人都看到了数字,你展示了承诺。


原文精选:我们要求以下两个安全特性要成立:

● 隐秘性:已知com,没有可行的方法找到msg。

● 约束性:没有可行的办法找到两组(msg, nonce)和(msg’, nonce’),msg≠msg’,而commit(msg, nonce)==commit(msg’, nonce’)。

为了使用承诺方案,我们首先需要产生一个临时随机数。然后将这个临时随机数与承诺信息msg一起代入承诺函数,计算承诺函数输出值com,然后公布该输出。这个过程就如同将封好的信封放到一个人人能看到的桌上那样。之后,如果我们希望展示之前的承诺值,我们首先公布用于产生承诺的临时随机数,并公布信息msg。此时任何人都可以验证这时公布的msg是否为之前诺,这个阶段就如同打开信封。

读书笔记: 1,使用承诺方案,首先需要产生一个临时随机数。

2,这个临时随机数(数字)与承诺信息msg(信封)一起代入承诺函数,计算承

诺函数输出值com,然后公布该输出(只展示了信封)。

3,任何人都可以验证这时公布的msg是否为之前的承诺(相当于打开信封)。


一叶之秋带你一分钟速读经典书籍,每天一分钟(只需阅读读书笔记部分),天天获新知。


一叶之秋——非著名股票分析师

CCTV证券资讯频道特邀分析师

币乎,币问内测作者;区分节点分析师

金色财经,币世界专栏作家

《区块链编年史》 《区块链重塑未来》系列作者

量价时空战法体系,一分钟读书俱乐部创始人

公众号:区块链项目评测

007er

上一篇 下一篇

猜你喜欢

热点阅读