Peggy可以使用下面的交互式零知识证明步骤证明她知道这个Hamiltonian回路。

  1. Peggy在图G中选择一个起点v,并将其发送给Victor。
  2. Victor随机选择一个数字k,并将其发送给Peggy。
  3. Peggy在图G中沿着Hamiltonian回路移动k个节点,并将她到达的节点发送给Victor。
  4. Victor检查这个节点是否与v相邻,如果不相邻则中止这个证明过程,否则进入下一步。
  5. Victor通过随机选择一个数字r并发送给Peggy,来要求Peggy证明她知道如何从v到达这个节点。
  6. Peggy应该知道如何从v到达这个节点,因为她知道这个Hamiltonian回路。她计算出从v到达这个节点的路径,并将其通过加密的方式发送给Victor。
  7. Victor解密Peggy发送的路径,并检查它是否合法。如果合法,则Victor可以确认Peggy知道如何从v到达这个节点,并且这个节点在Hamiltonian回路上。然后,Victor可以选择新的起点v,并重复整个证明过程,直到Peggy证明她知道Hamiltonian回路上每个节点的路径。

在这个交互式零知识证明过程中,Peggy不需要透露任何关于Hamiltonian回路的信息,因为她不需要透露具体的路径,而只需要证明她知道如何从一个节点到另一个节点。同时,Victor也无法从Peggy的证明中推断出任何Hamiltonian回路上的信息,因为他只能检查Peggy的证明是否合法。因此,这个证明过程是零知识的。

在图论的数学领域中Hamiltonian路径是一个无向图中每个顶点只访问一次的路径。 Hamiltonian回路是一个Hamiltonian路径。确定图中是否存在Hamiltonian路径和回路是NP完全问题。Peggy知道一个大图G的Hamiltonian回路Victor知道G但不知道这个回路。 Peggy将证明她知道这个回路而不透露它。她怎样做请用交互式零知识证明给出解决思路。

原文地址: http://www.cveoy.top/t/topic/bSt3 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录