本文探讨了 Circom 中的 alias bug 及其潜在安全隐患,介绍了如何通过溢出特定的域元素大小(p)来伪造证明。文中给出了该漏洞的示例代码,并介绍了如何通过严格的 Num2Bits 和 Bits2Num 函数,使得编码的二进制数组不会超过 p,从而避免此类攻击,同时还描述了挑战中的漏洞及其利用方式。
文章详细介绍了 Solana 中的系统变量(sysvars),包括如何通过 Anchor 框架访问这些变量,以及它们的功能和使用场景。
可初始化的智能合约设计模式
本文介绍了在 Solidity 智能合约中使用 Foundry 测试套件进行不变性测试的方法。不变性测试是一种验证代码正确性的测试方法,与单元测试和模糊测试类似。文章详细介绍了如何设置和运行不变性测试,并通过多个示例演示了如何检测和修复智能合约中的漏洞。
这篇文章介绍了RareSkills提供的Solidity课程,适用于不同水平的开发者,涵盖了从基础到高级的多个主题,如Tornado Cash、Compound V3等技术细节。课程内容免费提供,旨在通过深度理解和优化代码来提升开发者的技能。
ERC-1363 标准在 ERC-20 标准上的补充,可以在转账的时候触发 Hook 的调用。
定点数是一个仅存储分子部分的整数——而分母是隐含的。
文章详细解释了透明可升级代理模式,该模式旨在升级代理时消除函数选择器冲突的可能性。文章介绍了代理合约的基本需求、函数选择器冲突问题及其解决方案,并通过代码示例和图表深入探讨了OpenZeppelin的实现细节。
完全理解函数调用的 ABI 编码
文章详细介绍了Solana区块链中的账户所有权机制,包括系统程序、BPFLoader和程序对不同类型的账户(如PDA和keypair账户)的所有权及其操作权限,并通过Rust和Typescript代码示例进行了演示。