这是我的 SpeedRunEthereum 靶场个人学习笔记。第二关 Crowdfunding 聚焦去中心化众筹合约:贡献记账、退款、截止时间、状态机推进、CEI 防重入、Sepolia 部署、Etherscan 验证和前端上线。
关卡:Crowdfunding
完成日期:2026/06/22
状态:✅ ACCEPTED(+10 XP)
Ethereum 101 进度:2/4
框架:Foundry
本关目标这一关实现一个去中心化众筹 dApp。用户可以在截止时间前向合约贡...
这是我的 SpeedRunEthereum 靶场个人学习笔记。第一关 Tokenization 聚焦 NFT 全栈开发:合约编写、测试、本地交互、Sepolia 部署、Etherscan 验证、Vercel 上线,以及最终提交通关。
关卡:Tokenization
完成日期:2026/06/21
状态:✅ ACCEPTED(+10 XP)
Ethereum 101 进度:1/4
本关目标构建一个可以铸造和转移 NFT 的 dApp,并把它部署到公开测试网和线上前端。
最终...
ETH 交易树和收据树:知识点总览ETH 交易树和收据树示意图 1ETH 交易树和收据树示意图 2
核心一句话:交易树承诺当前区块里的交易内容和顺序,收据树承诺这些交易执行后的结果。它们的根分别是 transactionsRoot 和 receiptsRoot,都会写入区块头。
这一篇接着状态树展开。状态树回答“执行后世界状态是什么”,交易树回答“这个区块有哪些交易”,收据树回答“这些交易执行出了什么结果”。
1. 先背下来的核心结论以太坊区块头里和本专题最相关的三个根是:
123stateRoottr...
ETH 状态树:知识点总览ETH 状态树示意图
核心一句话:以太坊状态树是全局账户状态的加密承诺。它用 Modified Merkle Patricia Trie 维护 address -> account state,每个区块执行完交易后都会得到新的 stateRoot,并写入区块头。
这一篇整理以太坊状态树的核心知识点:状态树是什么、为什么不用哈希表、为什么不用普通 Merkle Tree,以及状态树和合约存储之间的关系。
1. 先背下来的核心结论以太坊采用账户模型,需要维护一份全局状态:
1...
这是我的 Ethernaut 靶场个人学习笔记,用来记录每一关的题目目标、漏洞原理、利用过程和复盘要点,方便后续按关卡重新练习和查漏补缺。
关卡:Level 9 - King
本关目标成为 King 后,让关卡合约无法重新夺回王位。
考察知识点
拒收 ETH
外部转账阻塞状态机
push payment 风险
题目源码1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0...
这是我的 Ethernaut 靶场个人学习笔记,用来记录每一关的题目目标、漏洞原理、利用过程和复盘要点,方便后续按关卡重新练习和查漏补缺。
关卡:Level 8 - Vault
本关目标读取 Vault 的私有 password,调用 unlock 解锁。
考察知识点
链上 storage 可读
private 不是加密
slot 编号
题目源码123456789101112131415161718// SPDX-License-Identifier: MITpragma solidity ^0.8...
这是我的 Ethernaut 靶场个人学习笔记,用来记录每一关的题目目标、漏洞原理、利用过程和复盘要点,方便后续按关卡重新练习和查漏补缺。
关卡:Level 7 - Force
本关目标让 Force 合约余额大于 0。
考察知识点
强制转 ETH
selfdestruct 余额转移
不要依赖合约余额为 0
题目源码123456789101112// SPDX-License-Identifier: MITpragma solidity ^0.8.0;contract Force {/* ...