Pedersen承诺是一种密码学技术,允许在不暴露向量内容的情况下对其进行编码,广泛应用于零知识证明和区块链技术中。本文深入探讨了Pedersen承诺的原理、构建、优点和应用,包括对内部乘积和矢量承诺的解释,适合对密码学有一定了解的读者。
本文详细介绍了椭圆曲线加法在实数域上的工作原理,通过群论的角度解释了椭圆曲线点的加法操作,并展示了如何在椭圆曲线上进行点加法的具体公式和几何解释。文章还包括了代码示例和数学公式,深入探讨了椭圆曲线的代数性质。
文章详细介绍了有限域上的椭圆曲线,包括它们的绘制、数学性质以及在密码学中的应用。通过多个示例和代码,展示了如何生成和操作这些曲线,并解释了其与有限域的循环群特性。
本文详细介绍了如何将R1CS(Rank 1 Constraint System)转换为QAP(Quadratic Arithmetic Program),并通过Python代码演示了实现过程,包括有限域算术、多项式插值等关键步骤。
文章提供了学习Solidity后的下一步实践建议,列出了10个从易到难的项目,帮助开发者通过实践提升技能,并强调了编写单元测试和关注gas成本的重要性。
文章详细介绍了在Solidity中进行Gas优化的多种技巧,涵盖了Gas优化的基本原理、具体实现方法以及在不同场景下的应用。内容全面,结构清晰,适合有一定Solidity基础的开发者深入学习。
本文详细介绍了Groth16零知识证明算法的原理、实现及其应用,包括可信设置、证明生成和验证的步骤,并讨论了防止伪造证明的方法以及算法中的安全问题。
本文详细介绍了如何在可信设置的基础上评估二次算术程序(QAP),并解释了如何在不泄露证据的情况下证明QAP的满足性,使用恒定大小的证明。同时还涉及了R1CS、椭圆曲线配对等技术的详细实现。
文章详细介绍了二次算术程序(QAP)的概念及其在零知识证明中的应用,特别是如何通过拉格朗日插值将Rank 1约束系统(R1CS)转换为QAP,并通过Schwartz-Zippel引理在O(1)时间内验证QAP的等式。
这篇文章深入探讨了双线性映射(bilinear pairings)的原理及其在密码学中的应用,特别是在验证乘积的离散对数时。