1.第一步環境搭建 運行環境:window 客戶端版本:Go語言geth 下載地址https://ethereum.github.io/go-ethereum/downloads/ 以太坊API中文文檔:http://web3.tryblockchain.org/Web3.js-api-refren ...
1.第一步環境搭建
運行環境:window 客戶端版本:Go語言geth
下載地址https://ethereum.github.io/go-ethereum/downloads/
以太坊API中文文檔:http://web3.tryblockchain.org/Web3.js-api-refrence.html
下載後在桌面創建一個json文件 一下是文件內容
{ "config": { "chainId": 1666,// 私鏈區塊鏈的ID 1是公鏈的ID "homesteadBlock": 0,//硬分叉高度 "eip155Block": 0,//eip "eip158Block": 0 //eip }, "coinbase" : "0x0000000000000000000000000000000000000000",//預設賬戶,發送獎勵賬號一般預設第一個 "difficulty" : "0x400",//產生區塊的難度 也叫挖礦難度 "extraData" : "",//附加信息 好像沒什麼用 "gasLimit" : "0xffffff",//限制區塊交易量信息,私鏈沒有限制 "nonce" : "0x0000000000000042",//交易可存儲數量 在沒有進行挖礦時未承認交易數量 "mixhash" : "0x0000000000000000000000000000000000000000000000000000000000000000",//hash生成規則 私鏈隨意 "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",//上一個hash 因為創世區塊隨意 "timestamp" : "0x00",//時間撮配置 在進行轉賬交易時有用 比如智能合約轉賬驗證時可以用 私鏈隨意 "alloc": {}//預設賬號以及賬號的以太幣數量,私有鏈挖礦比較容易可以不配置 }
以上就是創世區塊配置 我們進行下一步
創建兩個文件夾
先把下載的客戶端放入Geth 在創建一個txt 後面我在把尾碼改成bat
文件內容
choice /D y /t 3 > nul
set today=%date:~0,4%%date:~5,2%%date:~8,2%
geth --datadir F:\privateEthereum --networkid 1666 --ipcdisable --rpc --rpcaddr "127.0.0.1" --rpcport "8546" --port "30304" --rpcapi "eth,web3,personal,net" --nodiscover console 2>> F:\privateEthereum\log\geth%today%.log
客戶端的預設入口埠8545 出是30303 我這怕和錢包埠衝突給修改了 完成後放入Geth 文件夾內
後面再初始化區塊數據 放入創世區塊json文件 接著在建一個bat命令去運行json文件
xxxx\geth --datadir F:\privateEthereum init genesis.json
接著在區塊文件夾內創建一個LOG日誌文件 用儲存geth客戶端產生的日誌 此時文件夾應該有三個文件
雙擊bat 初始化創世區塊 如果沒成功 看看地址是不是寫錯了 為了這個問題我找了好久
這裡就是 用戶的數據 裡面都有以太幣 不過是私鏈的 再點幾geth文件夾下的 客戶端 通過bat命令去啟動geth.exe
接著我們創建一個用戶
personal.newAccount("123456") 裡面密碼 也叫用戶私鑰 回車生成賬戶地址 也叫賬戶公鑰
可以通過 輸入 web3 查看所有命令和屬性 文章開頭也給了 基本命令地址
可以也通過c# 對接以太坊 實行用戶地址創建
這是通過c# 創建的用戶
接著我們在去看看客戶端是否創建成功了 輸入一下命令 查看用戶和餘額
var i =0;
eth.accounts.forEach(
function(e){
console.log(" eth.accounts["+i+"]: " + e + " \tbalance: " + web3.fromWei(eth.getBalance(e), "ether") + " ether");
i++;
}) 回車
創建成功 也可對接錢包出生成用戶 後期可以做一個c#版的錢包或者挖礦小程式
僅僅只是演示如何創建私鏈 為了演示成功搭了二三十遍才出來的可能剛出學校工作太笨了 後期在慢慢分享 不說了主管來了,該幹活了。