1. 程式人生 > >區塊鏈實踐(二) 以太坊Geth入門操作

區塊鏈實踐(二) 以太坊Geth入門操作

進入Geth 命令列模式
在上一篇文章中,我們說到,我們可以用下面命令,建立一個新的私有鏈

geth --datadir "./" --nodiscover console 2>>geth.log

進入命令列模式,其中引數
–datadir 代表資料夾地址,
–nodiscover 代表該鏈條不希望被其他節點發現,
console >> geth.log 代表將控制檯輸出到檔案geth.log中去
當然從命令列模式退出,也很簡單,只要打入exit, 即可退出

查詢賬戶
Geth命令列中的 eth.accounts
我們在命令列輸入 eth.accounts 可以看到當前該區塊鏈中共有幾個賬號,以及每個賬號的公鑰地址。
檢視當前以太坊賬戶

eth.accounts

說說到以太坊的賬戶體系了
在以太坊系統中,狀態是由被稱為“賬戶”(每個賬戶由一個20位元組的地址)的物件和在兩個賬戶之間轉移價值和資訊的狀態轉換構成的。以太坊的賬戶包含四個部分:

  1. 隨機數,用於確定每筆交易只能被處理一次的計數器
  2. 賬戶目前的以太幣餘額
  3. 賬戶的合約程式碼,如果有的話
  4. 賬戶的儲存(預設為空)

簡單地說,每一個以太坊賬戶都有一對公鑰和私鑰組成。

公鑰我們可以理解為就是賬戶地址,任何其他賬戶都可以訪問該地址
私鑰可以理解為一段加密過的密碼,這一對公鑰和私鑰共同組成一個唯一標示的以太坊賬戶。
例如在上節我們建立的第一個以太坊賬戶 eth.accounts[0] 中,地址

0xf283f210898597c15fd14181236e6fe53630b38c

就是公鑰,而對密碼加密而成的,就是私鑰。

   新建賬戶:::括號內字串為新創賬戶密碼

“`
personal.newAccount(“123456”)

這裡寫圖片描述

此時輸入 eth.accounts, 就可以很輕鬆的看到有兩個賬戶的公鑰地址
這裡寫圖片描述

我們再來檢視兩個賬戶餘額
這裡寫圖片描述
這個時候我們可以使用eth.sendTransaction來將0.1個以太幣從user1轉移到 user2中, 提示我們賬號是鎖定的,所以我們需要解鎖賬戶。
這裡寫圖片描述

解鎖賬戶後,轉移操作就成功了。打印出來的是本次交易的地址。再次檢視以太幣轉移後的user2賬戶餘額,但是發現user2的賬戶還是為0.這是因為沒有礦工來挖礦處理。根據區塊鏈的概念,我們知道,每次交易的確認,其實都是需要挖礦的,也就是被其他礦工共識確認,然後才能加入區塊鏈的賬本中。
這裡寫圖片描述