使用“扫一扫”即可将网页分享至朋友圈。
MetaMask 钱包的剖析
自 2016 年推出以来,截至 2022 年 3 月,MetaMask(小狐狸钱包)已获得 3000 万月活跃用户。它拥有全球用户群,其中美国、菲律宾、巴西、德国和尼日利亚的参与度较高。
MetaMask 是以太坊社区不可或缺的应用程序之一,在Web3世界,MetaMask无人不知晓,吸引了人们通过MetaMask开启了加密之旅。随着 NFT、游戏和 DAO 为 web3 带来大量新用户,钱包仍然是生态系统中的基础组成部分——它们是用户与区块链之间所有交互的核心和中心。
这篇文章将侧重于区块链账户和 MetaMask 的机制,偏向于以太坊。但如果你对它的起源和商业方面感兴趣,The Generalist 有一个非常详尽的故事。这篇文章中的信息是从 Mastering Ethereum 书籍、MetaMask 支持文章和 Ethereum Homestead 文档等来源收集的。因此,如果您有兴趣可以深入了解,这些地方充满了珍贵的细节。
它们也可能对某些人感到恐惧。但实际上,当今(传统金融钱包)的大多数钱包应用程序都是围绕一个简单的中心组件构建的扩展:一个由公钥(账号)/私钥(密码)对组成的账户。
从原则开始
在我们谈论 MetaMask 本身之前,让我们先深入了解一些支撑它的基本概念。
地址(账户)
地址是区块链的核心原语。在以太坊中,有两种类型的地址:外部拥有地址(external Owned accounts)和合约地址(Contract accounts)。
每个地址都由一个公钥和一个私钥定义。公钥由私钥创建产生,区块链上的所有地址都按其地址(公钥)排序。
让我们来分析一下这两种类型的账户及其特征:
外部拥有的地址
1. 有一个以太币余额
2. 可以发送交易(即转移或触发智能合约代码)
3. 由私钥控制
4. 没有关联代码
合约地址
1. 带有以太币余额的实际智能合约
2. 有关联代码
3. 代码执行由从其他合约或地址收到的交易或消息触发
以太坊上的每一个动作都是由一个外部拥有的账户触发的。
如果这篇文章是关于钱包的,我们为什么要谈论地址(账户)?好吧,从本质上讲,钱包不过是客户经理。
什么是钱包?
如果我们把chrome扩展和移动应用程序的所有功能都去掉,那么这个可爱的小狐狸背后就是一个用来存储和管理用户私钥的软件。
每个钱包都从一个私钥管理组件开始。
一旦有了私钥管理方面,钱包就变成了一个用户界面,允许用户与区块链进行交互。它可以促进从一个账户到另一个账户的资金转移、管理私钥、跟踪代币余额并帮助您签署交易。但是如果没有私钥管理,这些事情都不会发生。
把它想象成一个钥匙扣,以太坊钱包的主要工作是包含用户的私钥。它们实际上并不持有任何真正的代币,它们仅反映在区块链上为你的账户分别有多少代币。
区块链只是一个分布式账本,它将您的账户与您拥有的代币数量相关联。钱包持有的钥匙是将以太币或代币转移给他人的唯一要求。使用您的私钥,你可以通过使用你的私钥签名改变交易账本,我们将在后面的部分详细介绍这一点。
钱包的种类
区分钱包的一种方法是通过私钥的生成方式。
钱包的私钥生成主要有两种类型:确定性和非确定性,它们的区别在于是否相互关联。
非确定性钱包具有由随机数生成的私钥,并且这些私钥彼此不相关。
这更像是传统的以太坊钱包。它以钱包文件的形式出现,其中存储了一个随机生成的私钥。确定性钱包会为每个地址生成一个新的钱包文件,备份和恢复可能会更加麻烦。
非确定性钱包被认为不如确定性钱包。
确定性钱包具有由单个主私钥(称为种子,也可以称为助记词)生成的私钥。在确定性钱包中,私钥是相互关联的,并且始终可以使用相同的种子进行复制。这是我们比较熟悉的钱包类型,因为它被认为是一种标准并被 MetaMask 使用。
种子表示为您可以写下的英语单词列表(通常为 12 个单词),以便在需要时恢复您的密钥。这也是您在 MetaMask 中看到的“私钥恢复短语”。它有时也被称为你的“助记词”。但是,如果有人抓住了他们,他们可以立即访问您的钱包并使用您的资产做各种事情。这就是为什么建议永远不要分享您的助记词,甚至不要以电子形式存储它。
种子短语可以方便地导出和导入钱包,并轻松地将所有私钥迁移到不同的钱包应用程序中。例如,如果您在 MetaMask 上有一个钱包,您仍然可以通过输入助记词将该钱包导入您的 Rainbow 或 Argent 移动应用程序。
确定性钱包的最先进形式是分层确定性(HD)钱包,基于比特币的 BIP-32 标准。键被称为“分层”,因为它们代表树结构。父密钥可以派生一组子密钥,然后子私钥可以派生另一系列孙密钥。
HD 钱包优于其他类型的确定性钱包,因为:
1. 树形结构可以代表一种组织结构。分支机构可以被视为公司中的子团队或子公司,这提供了相应的组织预算和付款的机会。
2. 无需访问相应的私钥即可生成公钥。
种子短语(助记词)是一组英语单词,不过这只是对私钥进行编码的一种方式。它目前被广泛使用,因为其他类型的表示(如十六进制字符串)在写在纸上时可能会导致更高的错误率。在较高级别上,助记词是由BIP-39定义的过程生成的,该过程涉及从一些信息源开始,转换数据,然后将其映射到单词列表。
有一套行业标准(如助记词和 HD 钱包)影响钱包的实现并导致钱包的互操作性。由于这些标准,您可以轻松地将钱包从不同的钱包应用程序导出和导入。
钱包类型
钱包可以有几种不同的形式,最常见的:
桌面钱包:MyCrypto, Gnosis Safe 。
浏览器插件钱包:MetaMask, MyEtherWallet, Web3Auth。
手机钱包:Argent, Coinbase Wallet, MetaMask, Rainbow, Trust Wallet。
硬件钱包(一种在线访问资金的安全方法,因为它们在签署交易时不会暴露私钥):Ledger, Trezor, KeepKey, Bitbox, Lattice1。
智能合约钱包
例如 Argent 和 Gnosis Safe 是智能合约钱包,这些类似于本文开头描述的“合约地址”。
这些钱包使用外部拥有账户的替代品,并建立在智能合约之上。由于业务逻辑有更多的实现空间,它们可以提供无助记词恢复、自动阻止某些对不可信合约的转账、社会恢复、转账限制、账户冻结等功能。
以下是一个非常简单的智能合同钱包的示例代码,基于Block Explorer的教程:(教程详细,请阅读原文)
进入 MetaMASK
我们一直在等待的主角,这只几何小狐狸告诉我们 “ 去中心化的网络在等待着 ” ——我们中的许多人与之有着爱恨交织的关系。
MetaMask 是一种非托管(或自托管)加密货币钱包。这意味着没有第三方“保管人”持有您的私钥。它让你活出“不是你的钥匙,就不是你的代币”的精神。MetaMask 不存储有关钱包的任何数据,您看到的所有内容都在本地级别的浏览器或移动应用程序中。
MetaMask 使用 3 种不同类型的“秘密”来保护您的钱包:
1. 秘密恢复短语(助记词):如前所述,此短语是基于您的主密钥以数学方式生成的助记符。这些词,当按特定顺序放置时,可以重新生成你钱包中的所有账户。请记住,一个钱包中可以有多个账户。你的钱包是持有许多公钥/私钥的钥匙串。每个密钥对应于钱包中的一个账户。当 MetaMask 从 Secret Recovery Phrase 重新生成您的钱包时,它可能一开始只生成第一个账户,但由于钱包是确定性的,因此可以按照相同的顺序重新创建其他账户。
2. 私钥:每个账户都有自己的公钥和私钥。通常,可以看到账户及其地址,即公钥。个人私钥可用于将该特定账户(并且仅该账户)导入任何其他钱包应用程序。
3. 密码:这用于保护钱包应用程序本身。您只用它来解锁应用程序。FaceID 适用于移动设备。
Coinbase与MetaMask
值得注意的是,Coinbase(核心应用程序)是一个托管钱包,因此不同之处在于,Coinbase 不是您持有自己的私钥,而是实际上为您存储它们。所以你不能直接导出你的 Coinbase 钱包,然后将其导入另一个钱包,比如 MetaMask。但是,您可以从 Rainbow 钱包到 MetaMask(反之亦然)这样做,因为两者都是非托管的。
注意:Coinbase 还通过 Coinbase 钱包提供非托管解决方案。
MetaMask 如何连接到区块链网络
MetaMask 等其他钱包也可以成为您通往公共区块链网络的钥匙。让我们提醒自己web浏览器的工作:一个允许我们访问万维网的软件程序。当用户通过输入URL地址请求网页时,浏览器会从web服务器获取内容,并将其显示在用户的设备上。
区块链节点不断同步网络状态并观察交易历史。同样,MetaMask 允许您访问区块链网络,因为您当前的浏览器无法做到这一点。
为了与区块链节点通信,有一个称为 JSON-RPC 的标准,它允许从它们请求和提交数据。这些通过 JSON-RPC 的请求可以通过 HTTP 或 WebSocket 进行。
MetaMask 如何发现这些节点以发送请求?它使用 Infura,它提供了一个高度可用、可扩展的区块链 API,可以访问区块链网络。
交易的生命周期
区块链是一个分布式账本,就像账户及其资产的映射。设想一个电子表格,其中每一行都是一个账户(以太坊地址),且每一列都是它持有的加密资产。
假设Alice想要给Bob发送1个Eth。这时Alice打开她的MetaMask钱包,输入Bob的钱包地址,然后点击发送。当她点击发送时,她也在使用她的私钥来签署这笔交易。
该笔交易将进入本地内存池(mempool),然后由以太网络中最近的节点获取该内存池。
发起此交易时,Alice 的交易将根据她的 gas(手续费)设置进行优先级排序,交易在网络中的节点间传播。在处理交易后,节点还将在执行转移之前检查 Alice 是否有足够的以太币可以使用。
最后,转账只是对账本的修改,从 Alice 的余额中扣除 1 ETH,并在 Bob 的账户中增加 1 ETH。
核心功能
让我们来总结一下MetaMask的主要特性——注意,它们中的许多都与私钥管理相关或围绕着密钥(也叫私钥)管理:
1. 账户管理(创建、导入、导出账户,对接硬件钱包)
2. 连接公共区块链网络
3. 签署交易(转账、智能合约交互),允许用户确定每笔交易的天然气价格
4. 使用fiat购买加密货币(使用MoonPay, Transak, Wyre)
5. 交换标记
6. 显示资产(ERC20代币,nft)
7. 显示活动(事务历史记录)
8. 链接dApp
钱包标准一直在发展,MetaMask 也是如此。我们可能会开始看到更多对社交恢复钱包、多因素身份验证等功能的尝试,以提高安全性,以及通过在连接到 dApp 时将功能注入 MetaMask 本身来实现新的用户体验。
钱包用户体验、dApp 交互和安全方面有许多创新的可能性。尽管 MetaMask 铺平了道路,但钱包的工作还远未完成。例如,我们还没有完全弄清楚如何在移动设备上签署交易。由于行业标准,钱包可以组合和重新构建,以满足用户和应用程序的需求。
有人可能会争辩说,钱包类似于数字身份/护照、银行账户、浏览器等 web2 概念。可能是这些,也可能是其他东西。我们刚刚开始触及表面——发展空间是巨大的。
“广东财经网”的新闻页面文章、图片、音频、视频等稿件均为自媒体人、第三方机构发布或转载。如稿件涉及版权等问题,请与
我们联系删除或处理,客服邮箱1098101642@qq.com,稿件内容仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同
其观点或证实其内容的真实性。
- 声音提醒
- 60秒后自动更新
【民政部回应何时恢复婚姻登记】民政部社会事务司二级巡视员杨宗涛表示,婚姻登记场所是人群聚集场所,部分地区暂停婚姻登记工作是对人民群众安全负责。未停止登记的地方推广用电话、网络、qq群预约登记,控制登记人数,分批分段登记,减少人员聚集和在登记机关停留时间。已停止婚姻登记地方将根据当地疫情控制情况逐渐恢复。
15:54欧洲央行副行长金多斯:欧洲央行还没有达到逆转利率。宽松政策的副作用更明显了。
15:54财经网站Forexlive分析师Justin Low评瑞士1月CPI月率:尽管通胀年率保持稳定,但核心通胀率有所下降,这一点令人更加担忧。这只是进一步巩固了瑞士央行维持现有货币政策不变,并可能在未来寻求更多宽松措施的观点。
15:54【武汉两大批发市场商户开业率超过80%】商务部市场建设司司长朱小良10日称,目前武汉生活必需品供应基本正常,除冷鲜肉、鲜叶菜等少数品种存在结构性短缺外,大部分重要生活物资供应充足,未发生明显抢购或脱销断档情况。当地白沙洲和四季美两大批发市场正常营业,商户开业率超过80%,日交易量上升至3000吨以上。(国是直通车)
15:53【日本2019年经常项目顺差增长4.4%】日本财务省10日发布的国际收支初步统计报告显示,主要受外国人入境游消费扩大影响,2019年日本经常项目顺差增长4.4%。报告显示,2019年日本经常项目顺差为20.06万亿日元(1美元约合109.8日元)。其中,商品贸易方面,由于液化天然气价格下跌等因素,进口下降5.6%至75.56万亿日元;由于汽车部件及钢铁等产品出口减少,出口下降6.3%至76.12万亿日元。货物贸易顺差减少53.8%,为5536亿日元。(新华社)
15:53欧元兑美元EUR/USD短线波动不大,现报1.0952。
15:53瑞士1月CPI年率:0.2%,前值:0.2%,预期:0.1%;瑞士1月CPI月率:-0.2%,前值:0%,预期:-0.2%。
15:52英镑兑美元GBP/USD短线走低13点,现报1.2890。
15:52【宁德时代“供电”国产特斯拉 有望拉低售价20%】全国乘联会秘书长崔东树分析认为,“随着特斯拉国产化率提升和产能爬坡,未来特斯拉国产车型的价格下探空间还是很大的。”他预计今年下半年,国产Model 3车型的售价就有望降至25万元,降幅接近20%。(新京报)
15:51【内蒙古:对不裁员或少裁员企业返还上年度50%失业保险费】据内蒙古新型冠状病毒肺炎疫情防控工作指挥部消息,疫情期间,内蒙古对不裁员或少裁员的企业返还上年度实际缴纳失业保险费的50%,对面临暂时性经营困难的中小企业,返还标准提高到上年度6个月企业及其职工缴纳社会保险费的50%。
15:51【商务部:2019年服务进出口总额54152.9亿元 同比增长2.8%】商务部新闻发言人表示,2019年,在服务贸易创新发展试点等政策的激励下,我国服务贸易总体保持平稳向上态势,逆差明显下降,结构显著优化,高质量发展成效初步显现。全年服务进出口总额54152.9亿元(人民币,下同),同比增长2.8%。其中,出口总额19564.0亿元,同比增长8.9%;进口总额34588.9亿元,同比减少0.4%。(第一财经)
15:51【振华股份:疫情导致下游客户开工推迟 产品库存上升】振华化学公告,公司目前生产经营稳定,所有产能均正常开工,原材料采购能基本满足生产需要,由于疫情导致下游客户开工推迟,公司出货量减少,产品库存有所上升。公司将根据客户需求、疫情及市场变化,适度调整生产经营策略,尽可能保持生产经营的稳定。
15:50环旭电子2月10日晚间公告,公司2020年1月合并营业收入为23.27亿元,较去年同期的合并营业收入减少27.83%,较2019年12月合并营业收入环比减少37.23%。
15:49精测电子:与京东方集团签订了多份销售合同,合同累计金额达到6.96亿元。
17:12华夏银行:银保监会同意本公司在全国银行间债券市场发行不超过100亿元人民币的金融债券,募集资金全部用于绿色信贷。
17:03