三色性的零知识证明的最低通信成本


11

Goldreich等人的证明,三种可着色性为零的知识证明,在每一回合中对图形的整个着色都使用位承诺[1]。如果图具有个顶点和边,则安全散列具有位,并且我们寻求错误概率,则总通信成本为Ë b pnebp

ØbËñ日志1个/p

超过回合。使用逐渐显示的梅克尔树,可以将总通信量减少为,但代价是增加回合数到。ø b Ë 日志Ñ 日志1 / p ø 登录Ñ Ø1个ØbË日志ñ日志1个/pØ日志ñ

无论是在整体交流还是在回合数量上,是否都可以做得更好?

  1. http://www.wisdom.weizmann.ac.il/~oded/X/gmw1j.pdf

编辑:感谢Ricky Demer指出的缺失因子。Ë

Answers:


3

所以这是适合我的论文:

乔·基利安(Joe Kilian),“关于有效的零知识证明和论点的注释。” http://people.csail.mit.edu/vinodv/6892-Fall2013/efficientargs.pdf

为了获得最强的结果,我们需要接受零知识论据而不是证明(以计算为界的证明者);这些是我感兴趣但不知道的术语。

假设有足够的密码学假设,对于,本文给出了总通信量为零知识论据。c = O 1 O(blogcnlog(1/p))c=O(1)

Ishai等人在“关于有效的零知识PCP”(http://www.cs.virginia.edu/~mohammad/files/papers/13%20ZKPCPs.pdf将此结果收紧到轮。O(1


我认为最好删除此答案,然后将原始答案更新为正确答案。
卡夫

2

更新:此答案已被我的其他答案淘汰,并带有来自适当引用的完全对数界限。

再次考虑,不需要逐渐显示Merkle树,因此较低的通信版本不需要额外的回合。沟通步骤是

  1. 证明者P将其颜色随机化,将其变成(加盐的)默克尔树,然后将根发送给验证者V。
  2. V选择一个随机边并将其发送给P。e
  3. P将Merkle树路径从根发送到到V的每个端点。e

这样可以在O 1 轮内进行通信。O(belognlog(1/p))O(1)

更新: 这是Merkle树构造的详细信息。为简单起见,通过添加一些断开的节点(这些不会影响三个可着色性或零知识),将图形扩展为正好具有顶点。假设一个安全的散列函数采用任意大小的输入并产生b位输出。对于每个树梅克尔,证明者选择2个一个+ 1 - 1随机b比特随机数,一个用于二进制树的每个叶和非叶。在叶子处,我们对与随机数连接的颜色进行散列以产生叶子的值。在每个非叶子上,我们将两个子值与该noleaf的nonce进行哈希运算以产生nonleaf的值。2ab2a+11b

在第一轮中,证明者仅发送根值,由于根值与根的现时进行了散列,因此证明者不提供任何信息。在第三轮中,不会传递有关二叉树中任何未扩展节点的信息,因为该节点在该节点处被随机数散列。在这里,我假设证明者和验证者都在计算上受限制并且不能破坏哈希。

编辑:感谢Ricky Demer指出的缺失因子。Ë


步骤1将为验证者提供一种高精度的方法来测试对证明者颜色的任何猜测,每次猜测仅使用证明者第1步工作的6倍。 另外,如果没有从证明到论证,我看不出有任何方法可以使用证明者计算的Merkle树。

盐腌的默克尔树如何用于猜测颜色?
Geoffrey Irving

1
我发布了一个答案,说为什么我认为含盐的默克尔树的想法行不通。 相反,您应该将对颜色随机化的承诺变成默克尔树。 我还注意到,您似乎在通信复杂性方面缺少了number_of_edges因素。

1
好吧,您可以考虑这样的承诺:分配是有效的3色或[至少δe 边缘具有相同颜色的顶点]。 降低了通信复杂度 O(((bn)/δ)log(n)(续...)

1
(... 继续) 接下来,可以应用PCP机械来减少与该承诺关系相关的标准3色关系。然后,将这个想法发挥到极致,就可以得到零知识的通用论证

1

简洁的非交互式零知识论证的活动最近激增。众所周知,例如,如何为Circuit-SAT构造NIZK自变量,其中自变量长度是非常小的常数的组元素(请参阅Groth 2010,Lipmaa 2012,Gennaro,Gentry等,Eurocrypt 2013等)。然后,基于NP减少,您可以通过相同的通讯清晰地构造3色性的参数。

当然,与您最初提出的问题相比,这是一个不同的模型-例如,在这些论点中,CRS长度在电路尺寸上是线性的,从某种意义上讲,可以将CRS视为通信的一部分(尽管可以在通信中重用)。许多不同的论点)。


0

(这不适合发表评论。)

我想我现在看到如何显示您的加盐不一定提供
诚实验证者零知识。为安全哈希。H0如果我们知道
已经能够处理任意长度的输入,然后让^ h 1等于H ^ 0, 否则让^ h 1是应用了Merkle-Damgard结构到的结果^ h 0。 (请注意| |表示串联。)H0H1H0
H1H0
||使得 对于所有3位字符串xz,对于所有H2


xz((3b)+6)字符串, 对于字符串m使得y
mm=x||111...[b of them]...111||y||z
H2(m)=x||111...[b of them]...111||H1(m)||z



对于所有3比特串,对于所有的盐řxr,对于用r盐化x所得的字符串mxr如果是 形式的不高于寻址然后m
H2(m)=x||111...[b of them]...111||H1(m)||x

并且

对于所有的字符串是既不的这两种形式, ħ 2m
[ bH2(m)=
[b+3 bits whose values don't matter]||H1(m)||[3 bits whose values don't matter]




因为在每种情况下都涉及相同的位置,所以H 2中的任何碰撞也是H 1中的碰撞。H1H2H1通过Merkle-Damgard的安全性,可以将任何碰撞有效地转换 为H 0中的碰撞。H1
H0因此,如果耐碰撞,则H 2耐碰撞。 但是,如果顶点数是2的幂,则通过检查 根哈希的每一端的3位 ,可以确定初始 顶点和 最终顶点是否接收到相同颜色的错误概率小于1 /2 b - 1 H0H2


1/(2(b1))


我不确定我是否遵循您的注释,但似乎您在争论可以以明显的愚蠢方式获取我的草图并填写详细信息,从而产生不安全的系统。我将详细信息的更安全版本添加到我的答案中。
Geoffrey Irving

唯一的愚蠢是我对转变。H2 其他一切都是 老实说我的意思是你的意思。

请让我知道答案中添加的详细信息是否清楚。我很可能丢失了某些东西,而我的构造确实坏了。
Geoffrey Irving
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.