- 博客(9)
- 收藏
- 关注
原创 RSA加密算法解析
RSA 是第一个公开发布的、可用于实际加密和签名的非对称加密算法,是一种基于大整数因子分解难题的公钥加密算法,广泛用于安全通信、数字签名等领域。其核心思想是利用这一数学难题来保证安全性。在进入正题前我们先分析下大整数因子分解难题。
2025-03-18 13:51:36
662
原创 KZG批量验证方案--shPLONK
本文前序博客有是2021年提出的批量KZG多项式承诺方案,针对多个多项式在多个评估点打开的情景下的方案进行优化。文中提出了两种优化的批量证明方案,第一个方案多个多项式的开放证明仅为一个元素,且每个多项式在不同的任意点子集上进行评估。第二个方案多项式的开放证明为两个个元素,但验证效率高于其他方案。虽然SHPlonk的效率表现很优异,但是核心思想还是我们之前使用的两个基础工具——零点证明+随机线性化组合。先回顾一下前面的内容,我们再继续下面的学习。
2024-09-11 10:51:48
1018
原创 KZG承诺(3)--批量验证方案
在进入本章前,请先阅读上一节介绍了KZG承诺完整流程,其中一个评估对应一个证明。在实际运用过程中往往存在各种情况,比如,一个多项式打开多个点或多个多项式打开一个点等等,如果都采用原始方案,将造成大量的验证开销和通信开销。因此针对不同多项式个数和评估点的数量,给出了不同的评估流程进行优化,我们主要从以下三种情况去了解具体的KZG多项式承诺批量验证方案,即一个多项式在多个评估点打开和验证,多个多项式在一个点打开和验证,多个多项式在多个点打开和验证。(一个多项式在一个点打开的情况在上一节)
2024-09-11 10:08:36
1118
原创 KZG承诺(2)--方案构建流程
在进入本章前,请先阅读我们回忆一下多项式承诺方案的目的是为了确保验证者可以随意打开承诺多项式上的任意点,对于证明者来说,证明者计算验证者随机选择的一个评估点的多项式值,并证明值的正确性。
2024-09-10 17:49:37
992
原创 KZG承诺(1)--预备知识
相信大家在接触ZK-SNARK过程中,频繁的看见KZG多项式承诺。这是一个多项式承诺方案,也称为Kate多项式承诺方案,允许验证者随机打开多项式上的任意点,具有较小的通信和验证开销,常用在ZK-SNARK中实现简洁性。我们通过一个例子来了解多项式承诺的过程,假设Alice拥有一个多项式,Bob可以随意查询任意点的多项式值,但不想Bob知道多项式。首先,我们可以将多项式的承诺可以看成一个黑盒。1)Alice向Bob公开这个黑盒2)Bob可以随机选择一个点打开。
2024-09-10 14:55:01
987
原创 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
2016
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人