多项式承诺方案
多项式承诺方案是零知识证明系统(以及其他加密协议)的核心组成部分。
顾名思义,多项式承诺方案是承诺方案,其中要承诺的对象是多项式。这类方案的一个特殊属性是,多项式的计算可以通过仅访问多项式的承诺来验证。
承诺方案
A 承诺方案 是一种加密原语,涉及两方:承诺者 和 验证者。承诺者对值 进行计算承诺 ,并将其揭示给验证者。随后,承诺者可以揭示原始值,验证者可以验证承诺是否与所揭示的原始值相对应。
安全的承诺方案有两个属性:
- 绑定: 一旦发布承诺 ,承诺者就无法找到与 不同的值 与承诺 相对应。也就是说,承诺 将承诺者与他的原始价值 绑定。
- 隐藏: 验证者无法从承诺 中获知有关原始值 的任何信息。也就是说,承诺 隐藏了有关原始值 的所有信息。
多项式承诺方案
多项式承诺方案 中,承诺者通过计算承诺 ,对多项式 进行承诺。与常规的承诺方案一样,承诺者稍后可以揭示原始多项式,验证者可以检查承诺是否与所揭示的多项式相对应。然而,多项式承诺方案还有一个额外的属性:承诺者可以在不透露多项式本身的情况下证明对所承诺多项式的特定计算。例如,承诺者可以证明多项式上的一点 , 而验证者可以仅使用承诺 来验证这样的证明。
多项式承诺方案在零知识应用中非常有用。证明者可以使用这样的方案来证明他知道一些满足某些性质的多项式(例如,它通过某个特定的点 ),而无需揭示潜在的多项式。
多项式方案有用的另一个原因是,承诺 通常比它所表示的多项式小得多,因此可以认为是多项式 的压缩。压缩的程度取决于特定的方案。例如,在 KZG 多项式承诺方案中,任意大小次数的多项式可以压缩为由单个群元素组成的承诺。
了解更多
- https://en.wikipedia.org/wiki/Commitment_scheme
- https://learn.0xparc.org/materials/halo2/miscellaneous/polynomial-commitment