以太坊私有鏈中geth的操作
以太坊私有鏈中geth的操作
1、新建賬戶
區塊鏈中的賬戶是由一個公鑰和一個私鑰組成的,公鑰是別人可以轉錢給你的地址
第一種方式不先指定私鑰:
personal.newAccount()
第二種先指定私鑰:
personal.newAccount("123456")
2、檢視系統中的賬戶
兩種方式都可以檢視
personal.listAccounts
eth.accounts
這兩種方式都可以當做陣列用下表索引
3、檢視餘額
檢視系統中第一個賬戶的餘額
eth.getBalance(eth.accounts[0])
4、啟動挖礦與結束挖礦
start中的引數是挖礦的執行緒數(我虛擬機器分配了2G記憶體,挖了十分鐘,期間卡得要死,電腦什麼事都幹不了,所以我選擇打了一把王者的人機,慢慢等吧)
miner.start(1)
miner.stop()
5、檢視區塊高度
如果區塊高度比以前增加了,表明你挖礦成功了。
還有一種方式驗證是否挖礦成功就是查詢賬戶餘額
eth.blockNumber
6、儲存挖礦收益
web3.fromWei(eth.getBalance(eth.accounts[0]),'ether')
7、檢視當前挖礦收益的賬戶
檢視當前挖礦收益的賬戶(意思就是你的每次挖礦所得都是預設存入這個賬戶,預設是eth.accounts[0],即第一個賬戶)
eth.coinbase
修改挖礦收益賬戶
miner.setEtherbase(eth.accounts[1])
8、解鎖賬戶
解鎖賬戶是為了對賬戶的存款做一些操作,這時需要你賬戶的地址(公鑰)和密碼
方法一:括號中的引數第一個是地址,第二個是密碼
personal.unlockAccount("0xb0eda7494d2515d907368d3515c9559a1d91cc09","123456")
方法二:通過命令列輸入密碼
personal.unlockAccount(eth.accounts[1])
9、轉賬
每次進行轉賬操作都需要解鎖賬戶,因為賬戶每隔一段時間就會被鎖住,要傳送交易,必須先解鎖賬戶
引數說明:第一個轉出賬戶,第二個接收賬戶,第三個轉出3個以太幣
eth.sendTransaction({from:eth.accounts[0],to:eth.accounts[1],value:web3.toWei(3,"ether")})
返回結果,此時賬戶餘額並沒有發生變化
此時交易已經提交到區塊鏈,返回了交易的hash,但還未被處理,這可以通過檢視txpool來驗證:
txpool.status
其中有一條pending的交易,pending表示已提交但還未被處理的交易。
要使交易被處理,必須要挖礦。這裡我們啟動挖礦,然後等待挖到一個區塊之後就停止挖礦
txpool中pending的交易數量應該為0了,說明交易已經被處理了:
(這個數額是我上完個廁所回來,結果挖礦挖多了賺錢了,所以數額不對)
10、檢視交易
通過交易雜湊檢視交易
eth.getTransaction("0x32f0ede0209c24ed1673e1e1298808952127f3714c952e84a349674315da199b")
通過區塊號檢視區塊
eth.getBlock(5)