探索Solidity编译管道、优化假设,以及它们如何与内存安全汇编相关。
文章提供了学习Solidity后的下一步实践建议,列出了10个从易到难的项目,帮助开发者通过实践提升技能,并强调了编写单元测试和关注gas成本的重要性。
jq在区块链开发中的使用
文章详细介绍了在Solidity中进行Gas优化的多种技巧,涵盖了Gas优化的基本原理、具体实现方法以及在不同场景下的应用。内容全面,结构清晰,适合有一定Solidity基础的开发者深入学习。
本文将和大家一起讨论链上数据同步解决方案 - Kafka 的实际使用和优势,Kafka 能够根据区块链上数据的位移来跟踪消费状态和保证消息的顺序,同时使用分布式日志存储来持久化消息。
本文章主要讲述了如何在 Solidity 中使用 zk-SNARKs,以及如何使用 ZoKrates 编译器来生成证明和验证合约。
sol2uml是一款用于Solidity智能合约可视化的工具。支持从命令行界面生成合约存储图和合约类图(UML)等
solidity storage layout
在hardhat中加入hardhat.config.js中加入如下代码即可。出处https://github.com/lxdao-official/gclx-contracts/issues/2const{setGlobalDispatcher,ProxyAgent}=require("u
EIP-712是一个专门用于对结构化数据求hash值以及签名的标准,大大解决了数据“链下签名+链上验证”的问题并提高了链上消息签名的可用性。EIP712合约提供了EIP 712 domain separator的定义与获取——是结构化数据完整编码的一部分。
SignatureChecker库是一个用于链上签名验证的helper库。该库提供的验签函数既支持EOA账户地址的签名验证也支持IERC1271标准合约地址的签名验证。
在查看Foundry官方文档时发现其安装步骤描述并不详细,起初跟着安装问题迟迟无法解决,故记录下此详细安装过程,且选择的是最快捷最不占硬盘空间方式的下载方式官方文档给出的下载步骤
本文档详细介绍了Solidity智能合约开发中的各种Gas优化技巧,涵盖存储、错误处理、数学运算和函数调用等多个方面,包括避免初始化默认变量、存储打包、常量与不可变状态变量、缓存存储变量、使用unchecked{}、calldata代替memory等关键优化策略,旨在帮助开发者编写更高效、更节省Gas的Solidity合约。
你是否知道大端小端的概念,其定义了是高位数据先保存还是地位数据先保存,EVM 是用 大端格式存储数据,我们知道 EVM 使用 32 字节的字来处理数据,当数据不足 32 个字节时,如何填充数据呢?bytes 有哪些操作详见本文。
IERC1271是合约地址作为signer的签名验证标准。EOA地址可以通过其私钥对msg进行签名,而合约地址理论上是没有私钥的。当合约地址作为msg.sender时,可以通过IERC1271标准进行相关的签名验证工作。
ECDSA(Elliptic Curve Digital Signature Algorithm)是椭圆曲线数字签名算法的简称。ECDSA库十分重要且使用广泛,其作用是在链上验证某message是否由给定的地址的私钥持有者进行签名的。简而言之,ECDSA库是一个验证地址真实身份的工具库。
Solidity 编码规范推荐标准, 作者列出了 15 条非常使用的规则, 例如:指定固定的编译器版本、导入代码时指定版本, 并使用命名导入,以及变量命名时注意事项。
越学越迷糊,于是准备再学一遍,进行总结。Solidity学习笔记一:基础语法与remix的使用
Chisel是随Foundry提供的高级SolidityREPL(交互式命令工具)。它可用于在本地或Fork网络上快速测试Solidity片段。
通过本次闯关,让我们深入理解 calldata 数据编码。
扫一扫 - 使用登链小程序
406 篇文章,461 学分
174 篇文章,389 学分
118 篇文章,367 学分
40 篇文章,327 学分
30 篇文章,300 学分