以太坊客户端Geth和以太钱包Ethereum-Wallet下载安装以及基本使用方法
一。Geth的的相关
1. Geth的的下载网址:
https://geth.ethereum.org/downloads/
注意:GETH是一个命令行工具,需要在命令行中运行GETH,窗户用户不要直接双击geth.exe。
2.开启GETH
在GETH 安装目录里打开该做什么窗口显示输入侧命令:
geth -rpc --rpcaddr“0.0.0.0” - rpcapi“personal,db,eth,net,web3” - syncmode“light”控制台
或者
geth -rpc --rpcaddr“0.0.0.0” - rpcapi“personal,miner,db,eth,net,web3” - syncmode“light” - cache = 1024 --maxpeers 9999
3.开启GETH
--rpc:启用HTTP-RPC服务器启动RPC通信,可以进行智能合约的部署和调试它在GETH 中通常被默认激活
--rpcaddr值: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 而不是通配符(*),后者会使所有的URL 都能连接到你的RPC 实例。
--identity:区块链的标示,随便填写,用于标示目前网络的名字
--networkid:设置当前区块链的网络ID ,用于区分不同的网络,是一个数字
console:启动命令行模式,可以在Geth 中执行命令(console 启动后在另一个命令行里启动attach [ 连接到节点] geth attach http:// localhost:8545)
--datadir:设置当前区块链网络数据存放的位置,生成一个类套接字文件geth.ipc
4.Geth的同步区块的三种方式:
全模式:
- 获取区块的报头
- 获取区块的身体
- 从创始块开始校验每一个元素
- 下载所有区块数据信息
快速模式:
- 获取区块的报头
- 获取区块的身体
- 在同步到当前块之前不处理任何事务,然后获得一个快照,像全节点一样进行后面的同步操作。沿着区块下载最近数据库中的交易,有可能丢失历史数据。比如,你的账户地址甲上面有10个ETH,但转入的的交易存在于较老的历史交易中,此同步模式无法获取到交易的详细情况。
光模式:
仅获取当前状态。验证元素需要向全节点发起相应的请求。
5.GETH常用命令
1. 查询账户: eth.accounts
2. 创建账户,密码为“123456”: personal.newAccount('123456')
每创建一个账户geth自动会生成一个json的文件放在区块目录下的密码库(C:\ Users \ Administrator \ AppData \ Roaming \ Ethereum,建议备份一定要记住加密Keystore的密码,一旦忘记密码,那么你就失去了Keystore的使用权,并且imToken无法帮你找回密码,所以一定要妥善保管好Keystore以及密码。)
Keystore 文件是以太坊钱包存储私人用于自定义密码加密,以起到一定程度上的保护作用,而保护的程度取决于用户加密该钱包的密码强度。
3. 账户赋值给变量: user1 = eth.accounts [0]
4. 查询账户余额:
- eth.getBalance(用户1)
- web3.fromWei(eth.getBalance('0xdc296fe73525ff0698bc1e6dfe8a0e217f49745c'));
- eth.getBalance(“0xb794F5eA0ba39494cE83 9613fffBA74279579268”)// 可以查询任何一个账户的余额
5. 显示最新区块号:eth.blockNumber
6. 转账:U0转给U1
- 需要先解锁u0 :personal.unlockAccount(u0,'123456'),第二个参数是密码
- eth.sendTransaction({from:u0,to:u1,value:web3.to Wei(3,'ether')}),u0 转让u1 三个eth
账户里有余额,想要给其他账户转账,先要进行账户解锁
personal.unlockAccount(“0x5713b1495ad3449fc .............”,“ 密码”,60))
最后一位的60是解锁时间,单位是秒,不填的话默认300,可以根据实际需要填写时间值
开始执行转账操作,转账1个乙
eth.sendTransaction({from:“0xf414a8364186c0d9f70e71c3c ........”,to:“0x5713b1495ad3449fcc73f90f4 ........”,值:web3.toWei(1,'ether')})
会消耗一定量的旷工费,旷工费是随机的,如果执行成功的话,会返回一串哈希值,交易ID,根据此ID可以去区块浏览器中查询https://etherscan.io/
Ethereum-Wallet相关
- 网址下载 https://github.com/ethereum/mist/releases 开启复仇钱包
在复仇钱包安装目录里打开该做什么窗口输入命令:
“D:\ ETH \ Ethereum-Wallet \ Ethereum Wallet.exe” - rpc http:// localhost:8545
点击Ethereum-Wallet左上角账户--->新建账户--->填写在geth中创建的账户的密码--->输入