学院首页
区块链教程
技术进阶
以太坊Mist+账号和钱包页面

以太坊Mist+账号和钱包页面

币学院副船长船龄 3.7年来源 巴比特
 12912  0

回顾一下之前用Geth搭建的私有网络

创建链条的geth命令
geth --datadir "./" init genesis.json
geth --datadir "./" --nodiscover console 2>>geth.log
在命令行模式下, 新建账号,并且启动挖矿
> personal.newAccount("123")
"0x48ad44beba68a981e103d28b2bd5777ef21ba0e3"
> miner.start()
true
>
如果链条已经被关闭的话,或者启动不了,或者挖矿无法产生比特币的话,可以重置以太坊私链。
重置以太坊私有链的方法
  • 1.删除根目录下的隐藏文件夹.ethash, 在mac系统中该文件夹在 ~/
  • 2.删除以太坊私有链所在文件夹下的geth/keystore两个文件夹p1
私有链正常工作的日志如下图所示:
p2
打开私有链所在文件夹,注意应该有一个文件,叫geth.ipc, 记录下文件夹地址p3

Mist 工具

Mist github地址:https://github.com/ethereum/mist
The Mist browser is the tool of choice to browse and use Dapps.
Mist 是以太坊官方提供的浏览器,通过Mist我们可以很方便的连接上我们的私有网络,从而更好的开发、调试、测试我们的智能合约。

Step 1 安装依赖项

安装步骤,请参见github地址:https://github.com/ethereum/mist
$ curl https://install.meteor.com/ | sh
$ npm install -g electron@1.3.13
$ npm install -g gulp

Step 2 安装Mist本体

$ git clone https://github.com/ethereum/mist.git
$ cd mist
$ git submodule update --init
$ yarn

Step 3 运行Mist/interface 也就是mist的后台程序

$ cd mist/interface && meteor --no-release-check
这个阶段费时可能稍长,会启动mongodb, proxy等。完成后的控制台截图如下:

p4

Step 4 新开一个窗口,用geth.ipc启动Mist

新开一个窗口,回到mist文件夹下面,输入下方的命令
electron . --rpc /Users/linchen/steveproject2/tmpPrivate/geth.ipc
注意这里的地址/Users/linchen/steveproject2/tmpPrivate/geth.ipc 就是前面我们新建的以太坊私有连下的geth.ipc文件。

p5

启动后的Mist界面如下

p6

下一章中我们会继续详细介绍Mist

------------------------------------------------------------------------

Mist 账户界面解说

p7
  • Main account的地址 0x48ad44BEBa68A981e103D28B2bD5777EF21bA0E3 这个和geth的私有网络中的eth.accounts[0]一致。因为此时我们的Mist正是依赖于所在文件夹下的geth.ipc启动的。 geth截图如下:
p8
  • 左下方的三个参数分别代表了几个含义
1.算力 kh/s 代表每1000 hash/s的计算力。 2.区块数 之前说过,以太坊挖矿的本质就是挖出区块数,因此只要一个网络存在,则区块数会被源源不断的挖掘出来。 3.0 代表当前的节点数字,因为我们现在只有一个节点,所以这个peer=0. 如果要增加节点,可以在geth中使用admin.addPeer()即可。 4.New Block Received表示当前状态,在截图的时候刚好遇到了一个新的区块被确认。平日里更多的是xx秒倒数。如图:

p9

  1. 左侧的账户列表,我们接下来细说
  2. 右上角是智能合约按钮,之后会经常用到。

Mist 钱包界面

  • 点击左上方的Wallet按钮,进入钱包界面,界面如下图所示
p10
  • 我们可以看到这里列出了当前私有链中所有的账户,目前只有一个,因此所有挖矿出来的以太币都被归入该账户中。 点击 Add Account 按钮以增加账户, 如图所示:
p11
  • 点击Create new account, 并输入密码, 然后重复密码
p12
  • 完成后,可以看到新增了一个账户 account2
p13
  • 回到Mist的wallet页面,可以看到两个账号都已经建立起来。
p14

账户之间的以太币转移

在上一节中,我们已经新建了一个Account2, 那么我们就用Mist里面的工具来给他一笔以太币巨款
  • 点击Account2 按钮
p15
  • 点击Account 2页面的transfer按钮
p16
  • 设置from/to/amount, 然后点击下方的Send按钮p17
  • 点击send后,会出现下面的提示框,输入账号密码,点击Send Transaction即可p18

这里要重复几点

  1. 在以太坊的底层眼中,智能合约也是部署在以太坊链条上的一个特殊账户,因此对智能合约的调用,也就是对智能合约账户的一次send transaction
  2. 重复一下之前的概念:每个账户的公钥,也就是地址是公开的,是任何人都可以调用的。
  3. 任何transaction都需要消耗gas,gas消耗量由transaction的大小决定,而Gas的价格则由以太坊底层的Oracle来决定。在一个开放网络中,如果用户希望自己的transaction被优先执行,那么相应的Gas Price就会上升。反之Gas Price越低,则执行的优先级越低。 简单地说就是:价高者得,价高者优先
  4. 因为每一次transaction都需要消耗gas,而gas对应的就是以太币。 之前提过,以太坊有默认的账户保护机制,在不输入密码的情况,任何账号能进不能出,要输出以太币,必须输入密码。
输入完密码后,点击SendTransaction, 然后切换到wallet, 可以看到account 1的金额增加了100以太币。

p19

到此为止,我们介绍了账户页面,以及账户之间的转账。

下一章我们将介绍Contracts(合约)页面,并且部署我们在前一章节中的代币智能合约

本文链接:https://www.8btc.com/article/122344
转载请注明文章出处

  • 全部
  • 最佳
登录 账号发表你的看法,还没有账号?立即免费 注册
推荐教程
换一批