火狐浏览器添加MetaMask钱包和本地开启私有链开发

Posted MY CUP OF TEA

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了火狐浏览器添加MetaMask钱包和本地开启私有链开发相关的知识,希望对你有一定的参考价值。

火狐浏览器添加MetaMask钱包

  • 因为对其配置了代理工具,所以直接使用谷歌引擎搜索MetaMask钱包即可

 第一次使用,立即开始设置

 点击我同意,进行密码的创建

 牢记助记词,助记词及其关键,将其存储在安全的地方

区块链-开发 Metamask 连接私有节点,且导入节点账号

  •  第一步,Metamask设置节点连接。
  • (前提:需要自己手动搭建以太坊私有节点,我用的是geth,且搭建在ubtuntu上,关于ubtuntu搭建geth,请参考我的其余文章)
  • 点击设置

开启相关设置选项

 进入Ubuntu系统 创建账号信息和进行挖矿操作

  • 连接到Geth节点后,接下来需要设置coinbase或etherbase账户。创建账户可以使用personal对象的newAccout方法,并设置密码(密码不可见)。
  • coinbase()是指矿工地址,也就是默认eth.accounts[0]的位置,所有挖到的币都被存储到这个账户中
  • 命令如下         personal.newAccount()
  • 如果需要更改原有的coinbase账户地址,可以通过address.miner对象的setEtherBase函数进行操作。这个操作将使用新的账户替换原有的coinbase账户。
  • 命令如下        miner.setEtherbase("0x19b4029dad20824db6dc201437f9cac2a7e1fc5c")
  • 执行查询命令,可看到设置的地址已经生效了。此时挖矿可以启动了。由于只有一个矿工,将获得全部的挖矿奖励,coinbase账户的以太币会逐步增加。
  • 查看当前的用户  eth.accounts

开始挖矿

  •  start中的参数代表了用于挖矿的线程数量。
  • 命令如下    miner.start(8)
  • 这时切换到之前创建私有链的命令行窗口中,可以看到挖矿过程的输出结果。这里是指我们当时创建的第一个窗口。如果是第一次挖矿,需要生成DAG相关文件,这个需要花费一定的时间。第二次以后就不需要了。

  • 当使用输入日志的方式时,可以输入命令tail -f geth.log 来跟踪挖矿进度
  • 查看正在挖矿的账户0已经获得的以太币和未挖矿的账户1的以太币余额。查看钱包的余额命令如下,将0改为1即可查看第二个账户的余额。
  • 查看钱包的余额  eth.getBalance(eth.accounts[0])
  • 挖到一个区块会奖励5个以太币,挖矿所得的奖励会进入矿工的账户,这个账户叫做coinbase,默认情况下coinbase是本地账户中的第一个账户。
  • getBalance()返回值的单位是wei,wei是以太币的最小单位,1个以太币=10的18次方个wei。要查看有多少个以太币,可以用web3.fromWei()将返回值换算成以太币
  • 停止挖矿,命令如下   miner.stop()

 进行交易

  • 从账户0到账户1转账,需要先解锁账户才能转账,否则会报错。
  • 解锁命令如下   personal.unlockAccount(eth.accounts[0])
  • 发起交易,由账户0转账200以太币到账户1,命令如下
personal.unlockAccount(eth.accounts[0])
amount = web3.toWei(200,'ether')
eth.sendTransaction(from:eth.accounts[0],to:eth.accounts[1],value:amount)
  • 此时交易已经提交到区块链,返回了交易的hash,但还未被处理,本地交易池中有一个待确认的交易,可以使用 eth.getBlock(“pending”, true).transactions 查看当前待确认交易。
  • 要使交易被处理,必须要挖矿。这里我们启动挖矿,然后等待挖到一个区块之后就停止挖矿。命令如下:

miner.start(1);admin.sleepBlocks(1);miner.stop();
web3.fromWei(eth.getBalance(eth.accounts[1]),'ether')
  • 此时,交易已经生效,账户1应该已经收到了200个以太币了。
  •  解锁账户的密码均是 123456

交互式执行环境

  • 这是一个交互式的 javascript 执行环境,在这里面可以执行 JavaScript 代码,其中 > 是命令提示符。在这个环境里也内置了一些用来操作以太坊的 JavaScript 对象,可以直接使用这些对象。这些对象主要包括:
  • eth:包含一些跟操作区块链相关的方法;
  • net:包含一些查看p2p网络状态的方法;
  • admin:包含一些与管理节点相关的方法;
  • miner:包含启动和停止挖矿的一些方法;
  • personal:主要包含一些管理账户的方法;
  • txpool:包含一些查看交易内存池的方法;
  • web3:包含了以上对象,还包含一些单位换算的方法。

 常用命令:

  • personal.newAccount():创建账户;
  • personal.unlockAccount():解锁账户;
  • eth.accounts:枚举系统中的账户;
  • eth.getBalance():查看账户余额,返回值的单位是 Wei(Wei 是以太坊中最小货币面额单位,类似比特币中的聪,1 ether = 10^18 Wei);
  • eth.blockNumber:列出区块总数;
  • eth.getTransaction():获取交易;
  • eth.getBlock():获取区块;
  • miner.start():开始挖矿;
  • eth.mining  查看是否正在挖矿,如果是True表明正在执行
  • miner.stop():停止挖矿;
  • web3.fromWei():Wei 换算成以太币;
  • web3.toWei():以太币换算成 Wei;
  • txpool.status:交易池中的状态;
  • admin.addPeer():连接到其他节点;
  • eth.getBlock(区块的高度) 命令查看区块的信息 
  • eth.getTransaction("交易生成的hash序列")  查看交易的详细信息 
  • eth.blockNumber  查看区块数量
  • eth.getBlock("pending", true).transactions  #查看本地交易池,待提交的交易

参考链接

以上是关于火狐浏览器添加MetaMask钱包和本地开启私有链开发的主要内容,如果未能解决你的问题,请参考以下文章

区块链本地部署智能合约环境

使用metamask钱包

问题以太坊私链连接钱包报错解决汇总

手把手教你配置BSC(币安智能链)网络,只需5分钟

如何开始参与Defi项目浙江省

币安链上怎么发币