本文介绍了选择zkVM的关键特性以及如何评估不同的ZK工具包。作者讨论了为何zkVM能加快开发速度,列举了必要特性,包括支持导入包、链上验证、无限制计算以及证明组合。此外,文章还详细描述了RISC Zero在实现这些特性方面所采用的方法和技术挑战。
本文详细介绍了Solana平台的安全最佳实践,包括运行时策略、所有权及账户修改、不可变性、零初始化、交易一致性等多个方面。提供了Rust和Anchor语言中实现这些最佳实践的具体代码示例,强调了开发过程中需要采取的多种安全措施,以防止攻击和确保程序的可靠性和安全性。
本文详细介绍了单元测试与集成测试的定义与区别,同时提供了使用 Rust 和 TypeScript 进行集成测试的工作流程与代码示例。文章还涵盖了如何使用 Anchor Manifest 来配置测试环境,以及如何在不同的时间段进行时间推进测试的方法,提供了实用的代码示例和技巧。
这篇文章详细介绍了使用 Trident 进行模糊测试的过程,包括设置 Trident 工作空间、编写模糊测试、以及运行测试与获取结果等步骤。文章涉及了 Rust 代码示例来演示如何初始化程序、处理账户和执行模糊测试,同时指出了潜在的函数缺陷和运行中的错误处理。
本文是Solana审计师训练营的手动设置指南,详细说明了如何在不使用Docker镜像的情况下设置环境,包括所需的系统依赖、Rust、Solana CLI、Node.js、Yarn、Anchor CLI以及其他工具的安装步骤,并附有命令行示例。
本文介绍了Certora最近在形式验证WebAssembly (Wasm) 字节码方面的努力,特别是在Stellar区块链上的Soroban智能合约的实现中。Wasm因其安全性和高效性被广泛应用于DeFi领域,Certora开发了Sunbeam工具,能够验证用Rust编写的智能合约的高层功能正确性。
翻译一篇Move与Solana上智能合约开发对比的文章,Move是一种用于智能合约开发的新颖编程语言, 我与Solana上使用的基于Rust的开发的模型进行了一些比较。
文章详细介绍了在 Solana 的 Anchor 框架中如何处理函数参数的限制,类似于以太坊中的 require 语句。通过代码示例展示了如何使用 require! 宏和错误处理机制来确保函数参数的有效性,并解释了 Solana 和以太坊在错误处理上的差异。
require
require!
本文详细介绍了如何安装 Solana 开发环境,并提供了一个从安装到运行“Hello World”程序的完整教程,包含问题排查和常见错误的解决方案。
本文详细介绍了 Solana 如何使用 IDL(接口定义语言)来描述如何与 Solana 程序交互,并通过 Anchor 框架自动生成 IDL 文件。文章还展示了如何通过 Rust 编写 Solana 程序,并通过 TypeScript 单元测试进行验证。
本文介绍了如何使用Jito Bundles在Solana上实现多个交易的原子性执行。通过创建一个Rust应用程序,演示了如何将多个交易打包在一起,并添加小费以激励验证者。文章详细介绍了项目设置、代码实现、运行应用以及验证bundle的过程,帮助开发者了解和使用Jito Bundles。
本文主要介绍了作者计划构建一个高性能的SSZ(Simple Serialize) Rust实现,并通过基准测试套件,在真实的区块链数据上对不同的SSZ实现进行比较。目标是优化以太坊协议中的序列化过程,提高编码/解码的效率,并探索锁步编码和哈希等方法以进一步提升性能。同时,作者还计划构建一个SSZ基准测试套件,用于评估各种SSZ实现的性能,并以图表的方式直观地展示它们的性能差异。
本文介绍了如何在Solana的Anchor框架中使用Account结构体的约束条件,以提高程序的安全性和代码可读性。文章详细解释了各种约束的使用方法和示例,并提供了相关的代码片段。
本文是Solana CLI配置的详细教程,指导开发者快速上手Solana CLI工具,包括安装必要的依赖环境(NVM/FNM, Node.js, PNPM, Rust)、Solana CLI,配置Devnet环境,创建Devnet钱包并获取免费的Devnet SOL,以及Solana区块链浏览器Solscan的使用。
本文介绍了 Pinocchio,一个用于在 Rust 中创建 Solana 程序的零依赖库。