最新内容

Foundry官方文档的中文翻译

类似Hardhat, Foundry是一个Solidity智能合约开发工具链。Foundry管理您的依赖关系、编译项目、运行测试、部署,并允许您通过命令行和Solidity脚本与链交互。 使用Foundry的好处 全面支持 solidity,可有效减少上下文切换 与 hardhat+ethers 组合工具相比,hardhat+ethers 合约使用 soli …

使用Foundry来探索可升级的合约

原文链接: https:runtimeverification.comblogusing-foundry-to-explore-upgradeable-contracts-part-1 译文出自:登链翻译计划 译者:翻译小组 校对:Tiny 熊 本文永久链接:learnblockchain.cnarticle… 这篇文章需要大家对 Solidity的基本知 …

理解rust中的deref运算符*与移动语义

引子 先从一个例子说起,看如下代码: struct Thing {field: String}fn f1(sth: &Thing){let tmp = *sth;┗━ Move data out of `thing`.} 我刚开始学习Rust的时候是这么理解的: sth是对Thing的不可变引用,因为*对sth解引用,因此产生了Move,由于所有权规 …

Cosmos SDK——从选链到创链的跨越,稳步踏入区块链3.0

Cosmos SDK 是世界上最受欢迎的用于构建面向应用的区块链的框架。 Cosmos SDK Cosmos SDK是一个开源框架,用于构建多资产公共权益证明(PoS)区块链,如Cosmos Hub,以及许可的权威证明区块链。使用Cosmos SDK构建的区块链通常称为面向应用的区块链。 Cosmos SDK的目标是允许开发人员从头开始轻松创建自定义区块链, …

智能合约审计-拒绝服务漏洞及案例分析

什么是拒绝服务 拒绝服务(Denial of Service),简称Dos,简而言之拒绝服务就是限制合法用户永久或在一段时间内无法使用智能合约。 拒绝服务漏洞的分类 意外恢复拒绝服务 攻击者使用智能合约进行此类攻击。 要解释意外恢复如何导致 DoS,请考虑以下Auction合约允许投标人出价的智能合约,一旦有新的最高出价者,它就会将金额退还给旧的投标人。 A …

理解Rust中字符串的str, &str与String类型的区别

字符串的类型大小和存储位置的概念定义及区分 在学习Rust的过程中,我们经常会遇到Cannot know size until runtime: str这样的报错,而大多数的解释都是搬运Rust官方文档的解释,这是由于str是动态大小类型(Dynamic Sized Type,DST) ,因此编译器无法确定str类型的大小。然而给我们直观的感受是"hello …

EVM 深入探讨 Part 4

By: Flush 导语 这是 “EVM 深入探讨” 系列的第四部分。在第 3 部分中,我们了解了合约存储的相关知识,这期我们将探讨单个合约的存储如何融入以太坊链更广泛的 “世界状态”。我们将了解以太坊链的架构,数据结构,以及 "Go Ethereum"(Geth)客户端的内部结构。 我们将从以太坊区块中包含的数据开始,并倒退到一个特定合约的存储。最后,我们 …

Defi hack挑战-DiscoLP及真实案例分析

Defi hack挑战 DeFi 代表去中心化金融,旨在取代银行、对冲基金、保险公司等传统金融机构。通过消除第三方,DeFi 允许以真正去中心化的方式管理资金,最大限度地减少腐败并促进真正的所有权。话虽如此,DeFi 不仅对合法用户而且对恶意行为者都是透明的。这就是为什么智能合约安全问题变得前所未有的严重。不同 DeFi 协议的可组合性增加了智能合约交互的复 …