首先,Peggy 需要将证明的问题转化为一个可证明性问题,例如“证明存在一个长度为 n 的哈密顿回路”,其中 n 是 G 的顶点数。

然后,Peggy 和 Victor 进行交互式零知识证明,具体步骤如下:

  1. Peggy 选择一个随机的排列 P,将 G 的顶点按照这个排列重新编号。然后,她计算出哈密顿回路中每条边的新编号(即 P(v) 和 P(w)),并将这些编号按照回路的顺序排列形成一个序列 S。

  2. Peggy 向 Victor 发送 S。

  3. Victor 选择一个随机的数字 b,并向 Peggy 发送 b。

  4. Peggy 计算出 S 的哈希值 H,并将 H 和 b 发送给 Victor。

  5. Victor 验证 b 是否等于 0 或 1。如果不是,则拒绝证明。否则,Victor 计算出 G 中的所有可能哈密顿回路的 S 序列的哈希值,并检查是否有与 H 相等的哈希值。如果有,则接受证明;否则,拒绝证明。

在这个过程中,Peggy 不会透露任何关于哈密顿回路的信息,因为她只是发送了一个哈希值,并没有透露其具体内容。同时,由于 Peggy 选择的排列是随机的,因此每次证明都是独立的,无法利用多个证明进行攻击。因此,这个交互式零知识证明可以有效地证明 Peggy 知道 G 的哈密顿回路

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

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

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