如果要用一句话来概括MetaMask,那就是:MetaMask是一种浏览器扩展,它既是钱包,又是一种与你互动的方式与以太坊网络进行交互。这就是为什么在研究ICO时经常会提到MetaMask,因为许多ICO项目都是在以太坊网络上启动的,并且在ICO期间只接受ETH。
MetaMask的第一个组件是钱包,这意味着你可以使用MetaMask来存储你的加密货币。然而,由于MetaMask专门用于以太坊,你只能在上面存储ETH和ERC-20代币。你应该知道,因为MetaMask连接到互联网,所以它被定义为“热钱包”。
MetaMask的第二个组件是与以太坊网络进行交互的能力。这意味着MetaMask允许你使用所有托管在网络上的去中心化应用程序,称为dApps。dApp之所以这样称呼,是因为它的后端代码运行在去中心化网络(即以太坊)上,不像常规应用程序那样,其后端代码运行在集中式服务器上。
一些流行的dApps示例包括游戏CryptoKitties、赌场如Etheroll、市场如OpenSea,以及去中心化交易所如IDEX和ForkDelta。没有像MetaMask这样的“桥”,你的浏览器将无法访问以太坊区块链,除非你运行一个完整的以太坊节点(并且需要在你的计算机上拥有超过400GB的整个以太坊区块链)。MetaMask通过向你的浏览器页面注入一个称为web3.js的JavaScript库(由核心以太坊团队编写)来实现这一点。
MetaMask也是开源的,如果你感兴趣,你可以在GitHub上查看他们的代码。
目前,MetaMask在Chrome、FireFox、Opera和Brave浏览器上可用。在这篇指南中,将使用Chrome浏览器。所有上述浏览器的MetaMask扩展链接都可以在MetaMask的主页上轻松找到。
安装扩展后,你会在屏幕右上角看到MetaMask的图标(一只狐狸)。点击它,你会看到以下内容:
点击接受此项及后续的条款和条件后,你将进入一个登录界面,在那里你可以创建你的MetaMask账户。请注意,你不需要用户名,只需要一个密码。MetaMask将密码称为“DEN”,并在你的浏览器中自行加密和存储(而不是在MetaMask的服务器上)。
如果你对为什么加密密码被称为DEN感到好奇,可以在MetaMask的GitHub讨论线程中看到开发人员的解释。他们这样做可能是因为MetaMask的图标是一只狐狸,密码就是狐狸的巢穴(den),但事实似乎并非如此。
创建密码后,你将获得你独特的12个单词的种子短语。这些词用于恢复你的MetaMask账户,所以请妥善保管。
一旦你安全地存储了你的种子词,你就已经全部设置好了!
你还可以创建多个MetaMask账户。每个账户将有一个不同的地址;但是,请记住,它们都使用相同的密码和恢复种子词进行管理。
此时,你可能已经注意到左上角的“主网络”。MetaMask允许你在以太坊主网和(目前)其他三个测试网络之间切换。
你可能会问,这些有什么区别?好吧,主以太坊网络是默认选项,你需要用它来发送/接收代币并与dApps互动。其他三个是公共测试网络;这些网络模拟以太坊网络和以太坊虚拟机。
测试网络主要由开发人员用来测试智能合约,而无需支付汽油费。测试网络还可以用于测试不同的共识机制。例如,Rinkeby测试网络使用权威证明(Proof of Authority)共识机制。
也就是说,大多数普通用户不需要担心使用以太坊测试网络。接下来,看看如何使用MetaMask发送和接收ETH。
虽然MetaMask可以用于所有ERC-20代币,但在这篇评论中将只讨论ETH。由于我目前没有持有任何ETH,只有比特币,首先需要将BTC转换为ETH。为此,将使用ShapeShift.io,一个在线数字资产交易平台。虽然这是一个MetaMask指南,但也会展示将BTC转换为ETH的主要步骤,因为这对初学者来说也是有帮助的。
为了将BTC转换为ETH,只需要向ShapeShift提供我的相应BTC和ETH钱包地址。然后,它会给我一个地址来发送BTC(以及推荐的矿工费),然后将所需的ETH发送回以太坊钱包。在这种情况下,BTC钱包是CoolWallet S,以太坊钱包当然是MetaMask钱包。
正如你所看到的,MetaMask钱包现在有资金了。根据估计,一旦发送了BTC,大约需要15分钟,ShapeShift就将转换后的ETH存入了MetaMask钱包。请注意,如果你点击MetaMask上的“购买”按钮,它会给你使用CoinBase(仅限美国)或ShapeShift的选项。
通过MetaMask发送代币也非常简单。只需点击“发送”并输入相应的地址。在这里,你可以看到发送了一些ETH回到CoolWallet S。
完成交易后,你可以如下查看:
现在,看看MetaMask的第二个组件,即与dApps的互动。对于许多dApps,只要你登录到你的MetaMask账户,你就可以通过浏览器自动访问这些dApps。
例如,看看OpenSea,一个去中心化的加密收藏品市场。正如你所看到的,它已经记录了MetaMask钱包地址和余额。不需要单独登录。
另一个例子是去中心化赌场Etheroll。再次,MetaMask钱包地址和余额自动显示。
所以你认真记录了你的种子短语并安全地存储了它。然而,你过于专注于这一方面,以至于忘记了你的登录密码。如果发生这种情况,你将需要使用你的12个单词恢复种子短语来重置你的密码。这是一个简单的过程,但请记住,虽然你的MetaMask钱包将被恢复,但任何手动导入的钱包将不会被恢复。
你唯一需要支付的费用是Gas费,这是你在以太坊网络上进行任何交易所需支付的费用。所以技术上来说,使用MetaMask是没有费用的,只有以太坊网络的费用。Gas是执行以太坊网络上任何交易所需的费用,单位是Gwei,即一亿分之一的ETH。
说到加密货币,安全性是至关重要的。大家都听说过无数的黑客和盗窃事件。鉴于加密货币仍然是一个不受监管的领域,受害者几乎没有任何补救措施。如果你想投资加密货币,你应该始终把安全放在首位。
话虽如此,目前还没有已知的MetaMask被黑的实例。然而,这并不意味着你的MetaMask账户不能被破解,例如通过经典的社会工程方法,如网络钓鱼。
以下是你可以采取的一些简单步骤来保护你的MetaMask账户:
· 不使用时登出你的MetaMask账户(当你登录时,你的MetaMask账户被认为是“解锁”的)。保持登录状态可以让攻击者查看你的钱包地址、余额、代币和交易历史;这些信息可以用来生成网络钓鱼攻击。Ethwalletsecurity展示了这是如何做到的。
· 当你登录时,注意可疑的弹出窗口和通知,因为这可能是网络钓鱼攻击。攻击者可能会生成恶意弹出窗口,要求你签署即将到来的交易,或通知你上一次交易失败(然后将你的交易重定向到他们的地址)。伪造的通知或假的MetaMask界面克隆也可以用于试图让你解锁你的MetaMask。
· 不要在你的MetaMask钱包中存放大量加密货币。就像任何热钱包一样,你应该使用MetaMask进行活跃的交易、投资或购买。你大部分的加密货币应该保存在冷钱包中,如Trezor Model T或Ledger。
MetaMask可能是目前与以太坊网络上的dApps互动最方便和最流行的方式。它直观且易于使用,甚至不懂技术的新手也应该没有问题。然而,它并非没有风险,你在使用时应始终采取预防措施(就像对待加密货币的所有事情一样)。为了让你的加密货币更加安全,你可能需要查看市场上最好的硬件钱包。