Dark Forest是一款实时策略游戏。星球的移动和攻占是整个游戏的策略重点。为了在不公开星球坐标的情况,还能证明星球的移动正确,引入了零知识证明技术。
加密货币是基于密码学构建起来的,要理解加密货币需要先理解加密学的一些基本知识,本文将介绍加密学的几个基本概念。
Hermez团队负责人Jordi Baylina比较清晰地给出了zkEVM大体的设计思路。本文梳理一下对zkEVM设计的理解。抛砖引玉,有理解偏差,小伙伴们可以留言讨论。
基于哈希(hash-based)的密码学是最古老的量子安全密码学领域之一,数字签名算法可以追溯到1979年,比椭圆曲线密码学发明还早。
本文将介绍一种新的椭圆曲线实例-- Baby Jubjub Elliptic Curve。
最近有空看了看Plookup的论文。针对对电路描述不友好的操作(比如bit操作),Plookup给出了新的思路和证明方式。给定某个操作的真值表示(lookup table),证明某个操作的输入/输出是在真值表中。这种方式,相对之前的bit计算约束方式,降低约束的个数,提高了电路效率。
零知识证明已在区块链领域大放异彩,包括第一个实现 zkSNARK 的匿名加密货币 Zcash 和 Layer 2 的主要解决方案 ZK Rollup。
本文主要介绍plookup算法的思路
本文介绍的这些知识点是理解plookup的基础
环签名,目前在隐私Monero项目中有所应用
PlonK是一种实现通用零知识证明的算法,旨在通过结构化参考字符串(SRS)来简化信任设置过程。文章详细解释了PlonK的原理,包括多项式承诺、输入输出的排列协议及其在电路设计中的应用,突出其相较于Groth16的优势,尤其在证明过程和性能方面。
盲签名可以看成结合普通签名的变种,实现特殊的应用。RSA方案简单易解,实际代码工程是要有额外一些处理的,可能需要填充等。
本文继续讲sigma协议相关的引申和应用!
本文介绍Sigma协议的交互和非交互性质,简单明了,介绍了零知识证明中常用的Fiat-Shamir变换
在任意的零知识证明系统中,都有一个 prover 在不泄漏任何额外信息的前提下要让 verifier 确信某些陈述(Statement)是正确的。ZK-SNARK目前应用较多,有不少成熟的库,如libsnark,bellman等.
RSA Accumulator非成员证明,能够进行假如用Accumulator纪录一个UTXO 集合,证明某个UTXO不存在等场景。
本文描述了累加器的概念和性质,具体说明RSA累加器实现过程。可以看出Accumulator具有一些比merkle证明有优势的地方,比如聚合证明,证明大小不随着集合元素的增加而增加等。 实际应用实现中RSA累加器还会有一些前置处理操作,比如将原始数据映射到选定素数域上的值等。
Merkle树如果说有其不足之处的话,当叶子节点的数量级非常大,树层级数变多,在打开验证节点需要的merkle树证明路径也就越长,数据量就越大
本文介绍了Kate承诺在多点披露验证的情况,当然还有一种就是多个多项式在多个不同点打开验证,相信如果本文理解的话,是可以自己推出来的,不在详述了。
与上一篇初步方案相比,Kate承诺实现了多项式的隐藏和部分打开验证,实际上方法1生成的结果在zk-snark项目中称为SRS(structure reference string)或者CRS(common reference string),是承诺方P和验证方V所共有,实际选择曲线配对不是对称的,而是非对称两个群,以后说到具体的项目代码可以看得比较清楚。
扫一扫 - 使用登链小程序
203 篇文章,719 学分
491 篇文章,680 学分
67 篇文章,563 学分
131 篇文章,556 学分
413 篇文章,504 学分