
多项式承诺
文章平均质量分 95
ZK-explorer
这个作者很懒,什么都没留下…
展开
-
KZG批量验证方案--shPLONK
本文前序博客有是2021年提出的批量KZG多项式承诺方案,针对多个多项式在多个评估点打开的情景下的方案进行优化。文中提出了两种优化的批量证明方案,第一个方案多个多项式的开放证明仅为一个元素,且每个多项式在不同的任意点子集上进行评估。第二个方案多项式的开放证明为两个个元素,但验证效率高于其他方案。虽然SHPlonk的效率表现很优异,但是核心思想还是我们之前使用的两个基础工具——零点证明+随机线性化组合。先回顾一下前面的内容,我们再继续下面的学习。原创 2024-09-11 10:51:48 · 1063 阅读 · 0 评论 -
KZG承诺(3)--批量验证方案
在进入本章前,请先阅读上一节介绍了KZG承诺完整流程,其中一个评估对应一个证明。在实际运用过程中往往存在各种情况,比如,一个多项式打开多个点或多个多项式打开一个点等等,如果都采用原始方案,将造成大量的验证开销和通信开销。因此针对不同多项式个数和评估点的数量,给出了不同的评估流程进行优化,我们主要从以下三种情况去了解具体的KZG多项式承诺批量验证方案,即一个多项式在多个评估点打开和验证,多个多项式在一个点打开和验证,多个多项式在多个点打开和验证。(一个多项式在一个点打开的情况在上一节)原创 2024-09-11 10:08:36 · 1189 阅读 · 0 评论 -
KZG承诺(2)--方案构建流程
在进入本章前,请先阅读我们回忆一下多项式承诺方案的目的是为了确保验证者可以随意打开承诺多项式上的任意点,对于证明者来说,证明者计算验证者随机选择的一个评估点的多项式值,并证明值的正确性。原创 2024-09-10 17:49:37 · 1049 阅读 · 0 评论 -
KZG承诺(1)--预备知识
相信大家在接触ZK-SNARK过程中,频繁的看见KZG多项式承诺。这是一个多项式承诺方案,也称为Kate多项式承诺方案,允许验证者随机打开多项式上的任意点,具有较小的通信和验证开销,常用在ZK-SNARK中实现简洁性。我们通过一个例子来了解多项式承诺的过程,假设Alice拥有一个多项式,Bob可以随意查询任意点的多项式值,但不想Bob知道多项式。首先,我们可以将多项式的承诺可以看成一个黑盒。1)Alice向Bob公开这个黑盒2)Bob可以随机选择一个点打开。原创 2024-09-10 14:55:01 · 1057 阅读 · 0 评论 -
IPA多项式承诺方案(3)--完整框架
当掌握了以上知识点后,我们进入IPA方案的具体流程,验证者拥有一个IPA方案包含三个算法原创 2024-07-29 16:57:22 · 1516 阅读 · 0 评论 -
IPA多项式承诺方案--(2)预备知识
基于内积定理(Inner Product Argument)实现的多项式承诺方案,为了方便,简称为IPA多项式承诺方案。在阅读承诺方案前,需要掌握Pedersen承诺、内积和Σ\SigmaΣ协议相关知识,Pedersen承诺在前文已介绍。此外,还需掌握一些常见方法来缩小证明大小。内积对于a=(a0,a1,⋯ ,an−1)\pmb{a}=(a_0,a_1,\cdots,a_{n-1})a=(a0,a1,⋯,an−1)和G=(G0,G1,⋯ ,Gn−1)\pmb{G}=(G_0,G_1,\cdot原创 2024-07-29 16:23:19 · 2046 阅读 · 0 评论 -
IPA多项式承诺方案(1)--多项式承诺是什么?
在介绍IPA多项式承诺方案方案前,我们要先明白承诺是什么,进而理解多项式承诺是什么。原创 2024-07-29 16:02:31 · 797 阅读 · 0 评论