MetaMask是一款轻量的以太坊钱包,MetaMask可以作为Chrome浏览器的插件进行安装,十分的方便,并且可以与Remix IDE配合进行智能合约的开发及部署,以及参加ICO等,因此MetaMask很受开发者的青睐。
跟大部份钱包一样,MetaMask也是不会储存大家的钱包数据,所有钱包私钥和密码都由使用者本身持有,就算是MetaMask停止更新,大家也可以用手上的私钥到其他钱包拿回自己的币。
本文将简单介绍一下如何在Chrome浏览器上安装配置MetaMask插件,首先进入MetaMask官网,MetaMask官网地址如下:
https://metamask.io/
使用Chrome打开MetaMask官方,在主页就可以见到安装插件的链接,直接点GET CHROME PLUGIN 即可:
然后会跳转到Chrome的插件安装页面,按一般安装插件的步骤就可以完成安装,详细步骤可参考下面的图片:
添加扩展程序成功后会跳转到以下页面,点击GET STARTED即可:
然后会让你选择导入已有的钱包还是新建一个钱包,如果你已经有钱包的话点击导入即可,我这里为了演示新手初次使用,所以选择新建钱包,点击create a wallet:
和其他软件一样,接着就是询问是否要帮助MetaMask改善体验,这里自行选择即可,我这里是选择了同意:
设置你钱包的登录密码:
设置完密码后,MetaMask会生成与你钱包相应的备份密语,通过这个备份密语可以备份账户和恢复账户,所以需要妥善保存不能泄露:
然后会要求你确认这个备份密语:
到这一步就可以完成钱包的整个创建流程了:
创建完成后,钱包的主页面如下:
获取Ropsten测试网络的以太币
在上一小节中,我们完成了MetaMask的安装及钱包的创建,本小节将介绍一下如何在Ropsten测试网络获取以太币,毕竟我们在开发智能合约的时候都需要先在测试网络进行部署和测试。
Ropsten简介:
Ropsten是以太坊官方提供的测试网络,是为了解决Morden难度炸弹问题而重新启动的一条区块链,目前仍在运行,共识机制为PoW。测试网络上的以太币并无实际价值,因此Ropsten的挖矿难度很低,目前在755M左右,仅仅只有主网络的0.07%。这样低的难度一方面使一台普通笔记本电脑的CPU也可以挖出区块,获得测试网络上的以太币,方便开发人员测试软件,但是却不能阻止攻击。
PoW共识机制要求有足够强大的算力保证没有人可以随意生成区块,这种共识机制只有在具有实际价值的主网络中才会有效。测试网络上的以太币没有价值,也就不会有强大的算力投入来维护测试网络的安全,这就导致了测试网络的挖矿难度很低,即使几块普通的显卡,也足以进行一次51%攻击,或者用垃圾交易阻塞区块链,攻击的成本及其低廉。
2017年2月,Ropsten便遭到了一次利用测试网络的低难度进行的攻击,攻击者发送了千万级的垃圾交易,并逐渐把区块Gas上限从正常的4,700,000提高到了90,000,000,000,在一段时间内,影响了测试网络的运行。攻击者发动这些攻击,并不能获得利益,仅仅是为了测试、炫耀、或者单纯觉得好玩儿。
默认情况下MetaMask连接的是以太坊的主网络,当我们要切换网络时,可以在右上角选择不同的以太坊网络,如下:
这里我们选择Ropsten测试网络,然后点击存入:
点击获取ETHER:
然后会跳转到如下页面:
点击request 1 ether from faucet按钮后MataMask会弹出如下对话框,让你允许该网站请求以太坊的API,点击CONNECT即可:
每当获取以太币成功后,都会产生一笔交易信息:
此时你的钱包上就应该会有一个以太币了,如下图:
现在我们就可以使用获取到的测试以太币去测试网络部署智能合约或者进行一些ETH交易的测试。需要注意的是,不同网络的以太币只能在其对应的网络下才能使用,例如Ropsten测试网络的以太币不能在Rinkeby测试网络中使用
获取Rinkeby测试网络的以太币
在Rinkeby测试网络中获取以太币的方式和Ropsten不太一样,多了一些步骤,因为这两个网络使用的共识机制是不一样的,所以本小节将介绍一下如何获取Rinkeby测试网络的以太币。
Rinkeby简介:
Rinkeby是以太坊官方提供的测试网络,相比于其他测试网络,Rinkeby是新开启的,也是目前开发人员最常用的以太坊测试网络,该网络使用PoA共识机制。与Ropsten不同,以太坊团队提供了Rinkeby的PoA共识机制说明文档,理论上任何以太坊钱包都可以根据这个说明文档,支持Rinkeby测试网络,目前Rinkeby已经开始运行。
同样的先在MetaMask上切换一下网络:
和之前一样点击存入:
然后点击获取ETHER:
此时仍然会跳转到一个网站,只不过这个网站和之前不太一样,主页是Rinkeby测试网络的状态信息,我们点击左侧导航栏中的 Crypto Faucet:
Rinkeby测试网络使用的是PoA共识机制,所以我们不能通过挖矿来获取以太币,想获取Rinkeby测试网络中的以太币,需要去申请,这个申请Rinkeby以太币的功能被称为Faucet,中文翻译为水龙头。还真是挺形象的,Faucet会源源不断的产生以太币,并且受到权威节点控制,以确保不会被滥用。
为了确保不会出现有人滥用Faucet,无限生成Rinkeby以太币,Faucet需要借助社交账号来确定申请者的身份和配额。目前支持 twitter、Google Plus、Facebook,取消了 Github 账户。如下图所示:
本来想使用Google Plus作为演示,但是Google Plus即将关停,所以这里使用twitter作为演示。过程很简单,首先从MetaMask上复制钱包的地址:
然后打开Twitter进入到发twitter的页面,接着将钱包地址粘贴进去,点击 “Tweet”:
找到刚刚发的 twitter 点击右上角的小箭头,选择“Copy link to Tweet”,如下:
回到申请以太币的网站,将拷贝的链接粘贴到输入框,点击 “Give me Ether”有三种选项,前面是获得的以太币数量,后面是冷却时间,在冷却时间过后才能进行下一次以太币申请,我这里选择的是3 Ethers / 8 hours:
点击后,正常情况下会弹出一个绿色的提示框,表示已成功接收到申请,如下图:
如果一切顺利,你会看到你的钱包已经多出了申请数量的以太币,如下:
注:如果申请的人数很多,需要排队等待一会儿,申请的以太币金额越大,一般需要等待越多的时间才能到账。