Geth和Ethereum-Wallet下载安装以及基本使用方法

Geth相关

 

  1. Geth的下载网址:

 

https://geth.ethereum.org/downloads/

 

注意:geth是一个命令行工具,需要在命令行中运行geth,windows用户不要直接双击geth.exe。 

 

  1. 开启geth

以太坊客户端Geth命令用法-参数详解

 

在geth安装目录里打开Dos窗口输入命令:

 

geth -rpc --rpcaddr "0.0.0.0" --rpcapi "personal,db,eth,net,web3" --syncmode "light" console

或者

geth -rpc --rpcaddr "0.0.0.0" --rpcapi "personal,miner,db,eth,net,web3" --syncmode "light" --cache=1024 --maxpeers 9999

 

API和控制台选项:

--rpc: 启用HTTP-RPC服务器启动rpc通信,可以进行智能合约的部署和调试。它在        geth中通常被默认激活

--rpcaddr value: HTTP-RPC服务器接口地址(默认值:“localhost”)

--rpcport value: HTTP-RPC服务器监听端口(默认值:8545)

--rpcapi value: 基于HTTP-RPC接口提供的API,设置允许连接的rpc的客户端,                 一般为db,eth,net,web3,personal

--port:网络监听端口,默认是8080

--datadir :设置当前区块链网络数据存放的位置

--rpccorsdomain value: 这个可以指示什么URL能连接到你的节点来执行RPC定制                        端任务。务必谨慎,输入一个特定的URL而不是wildcard                          ( * ),后者会使所有的URL都能连接到你的RPC实例。

--identity: 区块链的标示,随便填写,用于标示目前网络的名字

--networkid 设置当前区块链的网络ID,用于区分不同的网络,是一个数字

console:启动命令行模式,可以在Geth中执行命令(console启动后在另一个命令行里启动attach[连接到节点]  geth attach http://localhost:8545)

--datadir :设置当前区块链网络数据存放的位置,生成一个类socket文件geth.ipc

 

  1. Geth 同步区块的三种模式:

 

Full模式:

获取区块的header

获取区块的body

从创始块开始校验每一个元素

下载所有区块数据信息

Fast模式:

获取区块的header

获取区块的body

在同步到当前块之前不处理任何事务,然后获得一个快照,像full节 点一样进行后面的同步操作。沿着区块下载最近数据库中的交易,有可能丢失历史数据。比如,你的账户地址A上面有10个ETH,但转入的的交易存在于较老的历史交易中,此同步模式无法获取到交易的详细情况。

Light模式:

仅获取当前状态。验证元素需要向full节点发起相应的请求。

 

 

  1. geth常用命令

 

1.查询账户:

eth.accounts 

2.创建账户,密码为“123456”:

personal.newAccount('123456')

 

每创建一个账户geth自动会生成一个json的文件放在 区块目录下的keystore(C:\Users\Administrator\AppData\Roaming\Ethereum

建议备份一定要记住加密 Keystore 的密码,一旦忘记密码,那么你就   失去了 Keystore 的使用权,并且 imToken 无法帮你找回密码,所以   一定要妥善保管好 Keystore 以及密码。

Keystore 文件是以太坊钱包存储私钥的一种文件格式 (JSON)。它使用用户自定义密码加密,以起到一定程度上的保护作用,而保护的程度取决于用户加密该钱包的密码强度。

 

3.账户赋值给变量:

user1 =eth.accounts[0] 

4.查询账户余额:

eth.getBalance(user1)     

web3.fromWei(eth.getBalance('0xdc296fe73525ff0698bc1e6dfe8a0e217f49745c'));

eth.getBalance("0xb794F5eA0ba39494cE83   9613fffBA74279579268")  //可以查询任何一个账户的余额

https://etherscan.io

https://etherchain.org  //这两个网站也可以查询任何一个账户的余额

//显示的余额是个长整数,实际金额的小数点后面的18位都计入该整数内

5.显示最新区块号:

eth.blockNumber

6.转账:u0转给u1

需要先解锁 u0personal.unlockAccount(u0,'123456'),第二个参数是密码

eth.sendTransaction({from:u0, to:u1, value:web3.to Wei(3, 'ether')})u0转给u1三个eth

  1. geth实现账户转账

账户里有余额,想要给其他账户转账,先要进行账户解锁

personal.unlockAccount("0x5713b1495ad3449fc.............", "密码", 60))

最后一位的60是解锁时间,单位是秒,不填的话默认300,可以根据实际需         要填写时间值

 

开始执行转账操作,转账1个eth

eth.sendTransaction({from:"0xf414a8364186c0d9f70e71c3c........          ",to:"0x5713b1495ad3449fcc73f90f4........" ,value:web3.toWei( 1 ,'ether')})

会消耗一定量的旷工费,旷工费是随机的,如果执行成功的话,会返回一串         hash值,交易id,根据此id可以去区块浏览器中查询https://etherscan.io/

 

 

 

Ethereum-Wallet相关

  1. 下载网址
    1. https://github.com/ethereum/mist/releases

 

  1. 开启Ethereum-Wallet

在Ethereum-Wallet安装目录里打开Dos窗口输入命令:

"D:\ETH\Ethereum-Wallet\Ethereum Wallet.exe" --rpc http://localhost:8545

 

3.点击Ethereum-Wallet左上角账户 ---> 新建账户 ---> 填写在geth中创建的账户的密码 ---> enter

 

 

阅读更多 登录后自动展开

更多精彩内容