The technical content top engineers rely on to level up.
6 min read
通过随机线性组合减少等式检查(约束)的数量 随机线性组合是零知识证明算法中的一个常用技巧,用于实现 $m$ 个等式检查...
4 min read
内积代数 在本文中,我们将介绍一些关于内积的实用代数技巧,这些技巧在后续推导范围证明(以及将电路编码为内积)时会非常有用。每一条规则……
6 min read
Bulletproofs ZKP: Zero Knowledge and Succinct Proofs for Inner Products Bulletproofs ZKPs allow a prover to prove knowledge of an inner product with a logarithmic-sized proof. Bulletproofs do not...
9 min read
Logarithmic sized proofs of commitment In a previous chapter, we showed that multiplying the sums of elements of the vectors $\mathbf{a}$ and $\mathbf{G}$ computes the sum of the outer product terms,...
18 min read
向量承诺的简洁证明 如果我们有一个 Pedersen 向量承诺 $A$,它包含对向量 $\mathbf{a}$ 的承诺,形式为 $A = a_1G_1 + a_2G_2+\dots + a_nG_n$,我们可以证明我们知道...
8 min read
内积的零知识证明 内积论证是一种用于证明证明者正确执行了内积计算的证明。本章将展示如何构造一个零...
10 min read
ZK Bulletproofs 简介 Bulletproofs 是一种零知识内积论证,它使得证明者能够向验证者证明他们正确地计算了内积。也就是说,...
22 min read
动态类型的存储槽(Mappings、Arrays、Strings、Bytes)Solidity 中的动态大小类型(有时被称为复杂类型)是具有可变大小的数据类型。它们包括 mappings,...
16 min read
汇编 revert 使用内联汇编回退交易可能比使用高级的 Solidity 或语句更节省 gas。在本指南中,我们将探讨不同类型的 revert 如何……
9 min read
Curve StableSwap 中的 get_D() 和 get_y() 本文通过代数方法逐步展示了相关代码是如何从 StableSwap 不变量推导而来的。已知 StableSwap 不变量:$$ An^n\sum x_i...
15 min read
使用 OpenZeppelin 插件进行 Foundry 智能合约升级 升级智能合约是一个多步骤且容易出错的过程,因此为了尽量减少人为错误的可能性,最好使用...
12 min read
UUPS:通用可升级代理标准 (ERC-1822) UUPS 模式是一种代理模式,其中升级函数位于实现合约中,但会更改实现地址...