第 09 课:加密钱包
踏上构建生产级应用的旅程。
在上一堂课,你需要创建一个 GitHub 账号才能让你的应用上线。那个账号是 GitHub 用来识别你身份的方式——它让你拥有仓库、推送代码、积累工作记录的权限。但你要记住,这个账号是 GitHub 的。如果它愿意,它随时可以封禁你。
区块链的工作方式是一样的,区别在于:你不是用邮箱和密码注册,而是创建一个钱包(wallet)。钱包是区块链识别你身份的方式。它让你拥有资产、收发代币(token),并与应用交互的权利。没有任何公司为你创建账号。没有任何人能删除它。也没有任何人能封禁你。它由你自己生成,并且只有你能控制。
什么是加密钱包?
加密钱包(crypto wallet)是用来管理你区块链账号的软件。它存储你的凭证、代表你签署交易,并把你连接到去中心化应用。可以把它理解为你和区块链之间的接口。
其实用另外一个东西类比会很好:浏览器。浏览器本身并不包含整个互联网,它只是为你提供访问互联网的入口。加密钱包也不持有你的代币,它只是为你提供访问区块链账号的入口——你的代币真正存在的地方是区块链。
当你第一次打开钱包时,它会生成一个账号(account)。一个账号由两部分组成:一个地址(address)和一个私钥(private key)。
加密钱包的作用是什么?
地址
地址是你在区块链上的身份。它是一串通过密码学生成的文本,可以完全公开地分享。当有人给你转代币时,他们会把代币发送到你的地址。当你与应用交互时,应用看到的也是你的地址。
地址看起来是这样的:0x71C7656EC7ab88b098defB751B7401B5f6d8976F
每个账号只对应一个地址,且这个地址是你独有的。
公开分享你的地址安全吗?
私钥
私钥(private key)是地址的对应物。如果说地址是你的用户名,那么私钥就是你的密码。
私钥看起来是这样的:E9873D79C6D87DC0FB6A5778633389F4453213303DA61F20BD67FC233AA33262
任何拿到你私钥的人,都可以用你的账号发起交易。没有找回流程。没有客服。区块链是去中心化的,这意味着没有任何机构能撤销一笔交易,也没有任何机构能为你重置凭证。如果你弄丢了私钥,你就丢了这个账号。如果有人偷了私钥,你的资产也就没了。
永远不要把你的私钥告诉任何人。
写给开发者:你会在代码库里使用私钥来部署智能合约(smart contract)和发送交易。请使用一个不持有真实资产的开发专用钱包。新手开发者经常因为不小心把私钥推到公开仓库而损失资金。
如果有人拿到了你的私钥会发生什么?
助记词
你的钱包可以管理多个账号。每个账号都有自己的地址和私钥。但钱包本身还有一个总凭证:助记词(seed phrase)。
助记词是你第一次创建钱包时生成的一组 12 个或 24 个单词。它看起来是这样的:
dove lumber quote board young robust kit invite plastic regular skull history
助记词可以生成你钱包里所有的账号。如果你失去了对钱包的访问权,仅凭助记词就可以恢复每一个账号。如果有人拿到了你的助记词,他就拿到了钱包里每一个账号的访问权。
助记词是你最敏感的凭证。请离线保存。不要截图。不要把它粘贴到任何网站。任何正规的应用都永远不会向你索要助记词。
助记词的作用是什么?
你应该如何保存你的助记词?
设置你的钱包
由于 Monad 兼容 EVM,所以任何 EVM 钱包都可以使用。最常见的几个选择:
下载一个,然后创建一个新钱包,并把助记词写下来。然后在该钱包内创建第二个账号,专门用于开发。请在整个课程中都使用这个账号进行开发,并把它和任何持有真实资金的账号分开。
重要提示: 在本课程中,每当我们让你提供钱包信息或私钥时,请只使用你的开发账号。永远不要使用持有真实资金的账号来做开发。
MetaMask 可以和 Monad 一起使用吗?
连接到 Monad
你的钱包默认运行在 Ethereum 上。要在 Monad 上使用它,你需要把 Monad 添加为一个网络。最简单的方法是通过 ChainList——一个值得信赖的 EVM 网络目录。
测试网(Testnet,搭建项目时使用这个)
打开 chainlist.org,搜索「Monad」,并勾选页面顶部的 Include Testnets——只有勾选了这个选项,Monad Testnet 才会显示出来。连接你的钱包,然后在 Monad Testnet 卡片上点击 Add to Metamask。
或者手动添加:
- Network Name: Monad Testnet
- Chain ID: 10143
- Currency Symbol: MON
- RPC URL: https://testnet-rpc.monad.xyz
- Block Explorer: https://testnet.monadscan.com
主网(Mainnet)
打开 chainlist.org,搜索「Monad」,连接你的钱包,然后点击「Add to MetaMask」。
或者手动添加:
- Network Name: Monad Mainnet
- Chain ID: 143
- Currency Symbol: MON
- RPC URL: https://rpc.monad.xyz
- Block Explorer: https://monadscan.com
本课程请使用测试网。 测试网的 MON 可以从水龙头(faucet)免费获取,且没有真实价值——非常适合用来学习和搭建,无需承担任何风险。
获取测试网 MON
把 Monad 测试网添加到钱包后,打开 Build Anything 水龙头,粘贴你的钱包地址,然后申领测试网 MON。当你开始部署应用时,需要用它来支付交易费。
0/6 正确
0% — 全部答对即可完成