怎么做虚拟货币节点

Etherweb3.fromWei(10000000000000000)转账转账前需要解锁帐号,就像输入银行卡号密码eth.sendTransaction({“from”:”0x67128734480...

Bitget下载

注册下载Bitget下载,邀请好友,即有机会赢取 3,000 USDT

APP下载   官网注册

继续承接上一遍,接下来ETH节点部署

下载ETH节点

wget https://gethstore.blob.core.windows.net/builds/geth-linux-amd64-1.9.15-0f77f34b.tar.gz

启动ETH节点

将下载tar包移动到/data/eth/geth-linux-amd64-1.9.1-b7b2f60f/目录下,执行命令:
./geth --datadir /data/eth/data --cache 1024 --rpc --rpcport 8545 --rpcaddr 127.0.0.1 --syncmode "light"

ETH节点RPC常用操作

打开控制台

$ ./geth attach rpc:”/data/eth/data/geth.ipc”
上述命令表示用本地RPC方式连接ETH节点

创建账户,参数是密码

在控制台输入下面命令:

personal.newAccount(“your password”)
“0x0fec688d601909d28faf6fe18cf6230d08b698b6”

默认第一个创建的用户为主用户

查看用户:查看用户:

eth.accounts
[“0x0fec688d601909d28faf6fe18cf6230d08b698b6”]

eth.accounts
[“0x0fec688d601909d28faf6fe18cf6230d08b698b6”]

账户的排序反映了他们创建的时间。 密钥文件存储在DATADIR / keystore下,可以通过复制其中包含的文件在客户端之间传输。 这些文件使用密码加密,如果它们包含任何数量的以太网,则应备份。 但是,请注意,如果您传输个别密钥文件,则提交的帐户顺序可能会发生变化,您可能无法在同一位置结束同一帐户。 因此请注意,只要您不将外部密钥文件复制到您的密钥存储区,只依赖帐户索引即可。账户的排序反映了他们创建的时间。 密钥文件存储在DATADIR / keystore下,可以通过复制其中包含的文件在客户端之间传输。 这些文件使用密码加密,如果它们包含任何数量的以太网,则应备份。 但是,请注意,如果您传输个别密钥文件,则提交的帐户顺序可能会发生变化,您可能无法在同一位置结束同一帐户。 因此请注意,只要您不将外部密钥文件复制到您的密钥存储区,只依赖帐户索引即可。

解锁帐户

personal.unlockAccount(“0xf9ab190a9c56fd0d945eac9659c0c9519b13c64e”)

或者
这里是给第一个账户解锁

user1=eth.accounts[0]
personal.unlockAccount(user1)

查看帐号余额

eth.getBalance(eth.accounts[0])

getBalance()返回值的单位是wei,wei是以太币的最小单位,1个以太币=10的18次方个wei。要查看有多少个以太币,可以用web3.fromWei()将返回值换算成以太币:

web3.fromWei(eth.getBalance(eth.accounts[0]),’ether’)
340

单位转换: Ether–> Wei

web3.toWei(1)

单位转换: Wei –> Ether

web3.fromWei(10000000000000000)

转账

转账前需要解锁帐号,就像输入银行卡号密码

eth.sendTransaction({“from”:”0x67128734480a0741595538d9d726f33addf83978”, “to”:”0x29a9a6bcf1ce7101ab93a029e2692298fc15e076”, “gas”:31000,”gasPrice”:web3.toWei(300,’gwei’),”value”:”1”})

eth.sendTransaction({“from”:”0x67128734480a0741595538d9d726f33addf83978”, “to”:”0x29a9a6bcf1ce7101ab93a029e2692298fc15e076”, “value”:”10000000000000000000000”})
“0x533d3c770aed09ede826c92e7460fd38d78a101752a7b3b25e4470d8594e77bb”

查看当前区块总数:

eth.blockNumber
69

通过区块号查看区块里打包的交易信息

eth.getBlock(6)
{
difficulty: 2,
extraData: “0xd783010803846765746887676f312e392e32856c696e75780000000000000000cff7302b0c5515614e52f1584ff3f6aceb10dfa6e2facb347bfe3c023878d3857fa48774a98c721bcc1fb2419a177d577a0926e9f51d037095ba53257f7f307701”,
gasLimit: 6246618,
gasUsed: 21000,
hash: “0x5e2506ce385e38bbe23765a24ec25f9742e4a3a5af7cd071088081535a6a0dd2”,
logsBloom: “0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000”,
miner: “0x0000000000000000000000000000000000000000”,
mixHash: “0x0000000000000000000000000000000000000000000000000000000000000000”,
nonce: “0x0000000000000000”,
number: 6,
parentHash: “0x716da23fef7103042762025aabc83f7075fca516ab9dc6d436daa58b8350953b”,
receiptsRoot: “0x056b23fbba480696b65fe5a59b8f2148a1299103c4f57df839233af2cf4ca2d2”,
sha3Uncles: “0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347”,
size: 713,
stateRoot: “0x7c93a037c0750ddca8330d9c84912c622cd355c6978fc4267ffe2c8517a32469”,
timestamp: 1520398599,
totalDifficulty: 13,
transactions: [“0x54325698db1fbc85799b2f72070cddc457932abf0eef0d30d4fb2710ddafa941”],
transactionsRoot: “0x712b5bba767dd0ecaeebbbeefdf097647a0f219f11f16e4a8a3d768b59ae442e”,
uncles: []
}

通过交易hash查看交易

eth.getTransaction(“0x54325698db1fbc85799b2f72070cddc457932abf0eef0d30d4fb2710ddafa941”)
{
blockHash: “0x5e2506ce385e38bbe23765a24ec25f9742e4a3a5af7cd071088081535a6a0dd2”,
blockNumber: 6,
from: “0x67128734480a0741595538d9d726f33addf83978”,
gas: 31000,
gasPrice: 300000000000,
hash: “0x54325698db1fbc85799b2f72070cddc457932abf0eef0d30d4fb2710ddafa941”,
input: “0x”,
nonce: 5,
r: “0xe14faca3d11a47ec4617927c84a04936dbaf783cc2187794e04299ce04352404”,
s: “0x6da16b4e07a4fc721273d3b09da1c8b29ad4ce8022a99eb3f8317247cf7f5386”,
to: “0x29a9a6bcf1ce7101ab93a029e2692298fc15e076”,
transactionIndex: 0,
v: “0xa95”,
value: 1
}

查看交易状态查看交易状态

txpool.status
{
pending: 0,
queued: 0
}

常见错误

异常现象:

使用geth客户端,当执行personal.unlockAccount()或在程序中调用personal_unlockAccount接口时,会出现:account unlock with HTTP access is forbidden异常。

异常分析

出于安全考虑,默认禁止了HTTP通道解锁账户,相关issue:https://github.com/ethereum/go-ethereum/pull/17037

解决方法

如果已经了解打开此功能的风险,可通启动命令中添加参数:
--allow-insecure-unlock

示例

./geth —datadir /blockchain/eth/data —cache 1024 —rpc —rpcport 8545 —rpcaddr 127.0.0.1 —syncmode “light” —allow-insecure-unlock

上一篇: 股票线kdj(股票线下配售骗局)
下一篇: 比特币之前黑客是怎么交易的?
《怎么做虚拟货币节点》文档下载: PDF DOC TXT

猜你喜欢