日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

区块链开发(一)Windows平台搭建基于以太坊的区块链开发环境

發(fā)布時(shí)間:2023/12/29 windows 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 区块链开发(一)Windows平台搭建基于以太坊的区块链开发环境 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

引言

Ethereum(以太坊)是一個(gè)使開發(fā)人員能夠建立和發(fā)布下一代分布式應(yīng)用的公共區(qū)塊鏈平臺(tái)。 通過其專用加密貨幣以太幣(Ether)提供去中心化的虛擬機(jī)(稱為“以太虛擬機(jī)”Ethereum Virtual Machine)來處理點(diǎn)對(duì)點(diǎn)合約。具體可以訪問
https://ethereum.org/ 來了解更多相關(guān)信息!

環(huán)境搭建

下載可執(zhí)行文件

訪問 https://geth.ethereum.org/downloads/. 出現(xiàn)如圖所示

點(diǎn)擊基于Windows平臺(tái),可下載文件 geth-windows-amd64-1.7.3-4bb3c89d.exe
然后雙擊后會(huì)生成目錄

點(diǎn)擊圖中的geth.exe即可!

配置語言環(huán)境

由于源碼是基于go語言開發(fā),需要配置go語言的環(huán)境,這里可以通過choco 進(jìn)行安裝,如果沒有choco的環(huán)境可以通過 訪問鏈接 https://chocolatey.org 進(jìn)行安裝choco. 然后重新打開一個(gè)dos窗口執(zhí)行如下命令

C:\Windows\system32> choco install git
C:\Windows\system32> choco install golang
C:\Windows\system32> choco install mingw

安裝完畢后,設(shè)置環(huán)境變量。

下載go-ethereum

在F盤創(chuàng)建一個(gè)目錄ethereum ,然后通過進(jìn)入此目錄執(zhí)行

git clone https://github.com/ethereum/go-ethereum
cd go-ethereum
go get -u -v golang.org/x/net/context
go install -v ./cmd/… #編譯geth

至此環(huán)境已經(jīng)安裝完畢,但是需要測(cè)試是否可以用!

初步探索

準(zhǔn)備創(chuàng)世區(qū)塊配置文件
以太坊支持自定義創(chuàng)世區(qū)塊,要運(yùn)行私有鏈,我們就需要定義自己的創(chuàng)世區(qū)塊,創(chuàng)世區(qū)塊信息寫在一個(gè)json格式的配置文件中。首先將下面的內(nèi)容保存到一個(gè)json文件中,例如genesis.json。

{"config": {"chainId": 15,"homesteadBlock": 0,"eip155Block": 0,"eip158Block": 0},"coinbase" : "0x0000000000000000000000000000000000000000","difficulty" : "0x40000","extraData" : "","gasLimit" : "0xffffffff","nonce" : "0x0000000000000042","mixhash" : "0x0000000000000000000000000000000000000000000000000000000000000000","parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000","timestamp" : "0x00","alloc": { } }

cmd進(jìn)入上面創(chuàng)建的目錄,然后執(zhí)行指令

geth –datadir data init genesis.json

上面的命令的主體是geth init,表示初始化區(qū)塊鏈,命令可以帶有選項(xiàng)和參數(shù),其中–datadir選項(xiàng)后面跟一個(gè)目錄名,這里為data,表示指定數(shù)據(jù)存放目錄為data,genesis.json是init命令的參數(shù)。運(yùn)行上面的命令,會(huì)讀取genesis.json文件,根據(jù)其中的內(nèi)容,將創(chuàng)世區(qū)塊寫入到區(qū)塊鏈中。

啟動(dòng)私有鏈節(jié)點(diǎn)

geth –datadir “./” –nodiscover console 2>>geth.log

如圖所示

然后執(zhí)行如下可以挖坑、交易等操作!

> eth.accounts [] > personal.newAccount("123456") "0xacc9150f4d8c5664bd98a51c3aca63f5b5938fd5" > eth.accounts ["0xacc9150f4d8c5664bd98a51c3aca63f5b5938fd5"] > miner.start() null > miner.stop() true > eth.accounts ["0xacc9150f4d8c5664bd98a51c3aca63f5b5938fd5"] > eth.blockNumber 0 > personal.newAccount("12345") "0xa6b519c11b19fd73d08262a8e964ccda3509c015" > user1=eth.accounts[0] "0xacc9150f4d8c5664bd98a51c3aca63f5b5938fd5" > user2=eth.accounts[1] "0xa6b519c11b19fd73d08262a8e964ccda3509c015" > eth.getBalance(user1) 0 > eth.getBalance(user2) 0 > miner.start() null > miner.stop() true > eth.coinbase "0xacc9150f4d8c5664bd98a51c3aca63f5b5938fd5" > miner.setEtherbase(user1) true > eth.coinbase "0xacc9150f4d8c5664bd98a51c3aca63f5b5938fd5" > eth.getBalance(user1)

總結(jié)

以上是生活随笔為你收集整理的区块链开发(一)Windows平台搭建基于以太坊的区块链开发环境的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。