在图论的数学领域中Hamiltonian 路径是一个无向图中每个顶点只访问一次的路径。Hamiltonian回路是一个Hamiltonian 路径。确定图中是否存在Hamiltonian 路径和回路是NP完全问题。Peggy 知道一个大图G 的 Hamiltonian 回路Victor 知道 G但不知道这个回路。Peggy 将证明她知道这个回路而不透露它。她怎样做请用交互式零知识证明给出具体双非一
Peggy 可以使用零知识证明来证明她知道 Hamiltonian 回路,而不泄露任何关于这个回路的信息给 Victor。
以下是一个可能的交互式零知识证明协议:
-
Peggy 选择一个随机的排列 P,表示 Hamiltonian 回路中每个节点的访问顺序。她将这个排列的加密版本发送给 Victor。
-
Victor 随机选择两个不同的节点 u 和 v,并要求 Peggy 提供这个排列中 u 和 v 的相对顺序。例如,他可以询问“在你的排列中,u 在 v 的前面吗?”
-
Peggy 回答这个问题,而不透露任何有关排列中其他节点的信息。例如,她可以回答“是”或“否”。
-
步骤2和步骤3重复多次,直到 Victor 对 Peggy 的回答感到满意。
-
Victor 宣布 Peggy 成功地证明了她知道 Hamiltonian 回路,因为她可以正确回答 Victor 提出的问题。同时,她没有泄露任何关于这个回路的信息给 Victor。
这个协议的关键在于 Peggy 选择一个随机的排列,并使用加密来隐藏这个排列的内容。这样,即使 Victor 知道 G,他也无法推断出 Hamiltonian 回路的排列和节点的访问顺序。同时,Peggy 的回答只是提供了关于排列中两个节点的相对顺序的信息,不会揭示任何其他节点的信息。因此,这个协议是一个交互式零知识证明,可以证明 Peggy 知道 Hamiltonian 回路,而不泄露任何关于这个回路的信息给 Victor。
原文地址: http://www.cveoy.top/t/topic/bSkj 著作权归作者所有。请勿转载和采集!