The technical content top engineers rely on to level up.
7 min read
Anchor 中的 init_if_needed 与重初始化攻击 !展示 Anchor init_if_needed 的主图 在之前的教程中,我们必须在一个单独的交易中初始化账户,然后才能...
6 min read
Solana 中的 Tx.origin、msg.sender 和 onlyOwner:识别调用者!Solana 中的 tx.origin msg.sender onlyOwner 在 Solidity 中,这是一个全局变量,代表调用或...的地址
6 min read
Solana 中的 PDA (Program Derived Address) vs Keypair 账户 !展示 PDA (Program Derived Address vs Keypair 账户) 的头图 Program Derived Address (PDA) 是一种账户,其地址是......
7 min read
Rust 不寻常的语法!Rust 不寻常的语法 拥有 Solidity 或 Javascript 背景的读者可能会觉得 Rust 对 , , , , 和 的用法与语法十分奇怪(甚至难看)。本章……
10 min read
零知识乘法 多项式的零知识乘法 使用上一章的多项式承诺方案,证明者可以证明其拥有三个多项式 $l(x)$,...
6 min read
基于 Pedersen 承诺的多项式承诺 多项式承诺是一种机制,通过该机制,证明者可以使验证者相信多项式 $p(x)$ 在点 $x$ 处的求值为 $y = p(x)$,而无需...
17 min read
Try Catch 以及 Solidity 发生 revert 的所有方式 本文介绍了在调用智能合约时可能发生的所有类型的错误,以及 Solidity Try / Catch 块将如何响应(或者……
12 min read
Beacon Proxy 模式详解 !RareSkills 出品的 Beacon Proxy 模式 Banner Beacon Proxy 是一种智能合约升级模式,在这种模式下,多个代理使用同一个实现合约,并且所有...
12 min read
Solidity 中的 Storage Slots:存储分配与底层 assembly 存储操作 本文探讨了 Ethereum 智能合约的存储架构。它解释了变量是如何...
10 min read
超过 150 道 Ethereum 开发者面试题 所有这些问题都可以用三句话以内来回答。简单 private、internal、public 和 external 之间有什么区别……
6 min read
Circomlib 中的 AliasCheck 和 Num2Bits_strict 当信号的二进制数组编码的数值大于域元素所能容纳的范围时,Circom(或任何 ZK 电路语言)中就会发生别名漏洞。我们将...
12 min read
Initializable 智能合约设计模式中的 Initializers 是可升级合约实现 constructor 行为的方式。在部署合约时,通常会调用 constructor 来...