zoukankan      html  css  js  c++  java
  • 零知识协议

    性质:在不透露消息具体内容的条件下,甲以某种方式向乙证明甲知道该消息的内容。

    这里我们假设两个参与者,他们分别是Peggy和Victor。Peggy知道密钥,且不想让Victor知道密钥的具体内容,

    但同时,Peggy想向Victor证明他知道。这里我借用一幅图来解释原理:Peggy与Victor一起从A走向B,Victor看着Peggy从B点走入C或者D。

    C与D之间有一扇门,Peggy想向Victor证明他知道打开门的密钥。此时,只需要Victor向Peggy说出他希望Peggy从哪边出来即可。若Peggy知道密钥,则Peggy一定能从这个特定的方向出现。

    否则若有一次不符合预期情况,则证明Peggy不知道密钥。例如:Peggy从C的一边走进去,则Victor希望他从D的一边出来,依此往复多次,则可以避免巧合。

    由于任何数学定理都可以转化为一个图,而找出两个图是否同构需要目前的计算机工作几百年的时间;并且已知一个图时,构造出与这个图同构的图却很简单。

    也就是说,一个图同构出另一个图,easy。

           由两个现有的图证明他们同构,almost impossible。

           由一个图同构出另一个图并证明它们同构,easy。

    具体的实现过程:

       (1):Peggy将消息加入一个随机数,建立一个与原难题同构的题目

            (2):Peggy通过位承诺方案对新难题提交解法

       (3):Peggy向Victor发送新难题,Victor无法从获得的信息中推测原难题的解法

       (4):Peggy证明两个难题同构

       (5):Peggy提交新难题的解法

         以上步骤重复n次。

    用难题进行表述是因为不仅仅可以利用图同构来实现此协议。

    现实价值猜想:在双方交易一些具有一次性价值的商品时,有很好的实用价值。这里的商品不仅仅是具体物品,通常为敏感消息、如商业机密,设计方案等等。

    猜想仅供参考。

    非作者同意禁止转载。

  • 相关阅读:
    773. 有效的字母异位词
    768. 杨辉三角
    759. 时间角度
    757. 最短无序数组
    749. 约翰的后花园
    737. 查找矩阵
    AIX如何点亮HBA卡
    Spring Boot 静态文件,请求不到,util文件夹
    Spring Boot 静态文件,请求不到,util文件夹
    Bootstrap表格组件 Bootstrap Table
  • 原文地址:https://www.cnblogs.com/hhjfighting/p/7769222.html
Copyright © 2011-2022 走看看