File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -15,6 +15,44 @@ timezone: UTC+8
1515## Notes
1616
1717<!-- Content_START -->
18+ # 2025-08-16
19+
20+ # 环境搭建
21+
22+ - 包管理器:npm, pnpm
23+ - Foundry: web3 开发,测试,部署的全套工具链
24+
25+ # 创建与测试合约
26+
27+ ### 背景知识
28+
29+ ## 🔨 1. 部署合约(需要 ** MetaMask 私钥** )
30+
31+ - 部署合约 = ** 在区块链上发一笔交易** (把合约字节码发送到链上)。
32+ - 所有交易都必须用你的 ** 钱包私钥** 来签名,才能被网络接受。
33+ - ** MetaMask 私钥** 就是用来签名的。
34+
35+ 👉 类比现实:
36+
37+ - 部署合约 = “盖章的合同交给法院存档”
38+ - 私钥 = 你手上的公章,没有签名别人不认。
39+
40+ 所以部署合约时,你要用 MetaMask 私钥(但一般会存成环境变量 ` $PRIVATE_KEY ` ,不会直接写在代码里)。
41+
42+ ---
43+
44+ ## 📜 2. 验证合约(需要 ** Etherscan API Key** )
45+
46+ - 部署完之后,链上只存了合约的 ** 字节码** (机器码),别人看不到源码。
47+ - 验证合约 = 把你的 ** Solidity 源码** 上传给区块浏览器(如 Etherscan),让别人可以在浏览器上看到源码和 ABI,增加透明度。
48+ - 这个过程不涉及交易签名,所以不需要你的钱包私钥。
49+ - 但 Etherscan 要区分“你是不是机器人乱传东西”,所以需要你在它网站上申请一个 ** API Key** 来调用接口。
50+
51+ 👉 类比现实:
52+
53+ - 验证合约 = “把合同翻译件交给档案馆,方便别人查阅”
54+ - Etherscan API Key = “档案馆给你的会员卡号”,证明你有权上传数据。
55+
1856# 2025-08-14
1957
2058## 2.搭建中的问题解决
You can’t perform that action at this time.
0 commit comments