ETH 001 私有鏈的搭建

最近想給同事做一次以太坊智能合約編寫(xiě)的分享思杯,PPT寫(xiě)著寫(xiě)著越來(lái)越多。想想還算是把它弄成文章挠进。

1.1 ETH介紹

???? ETH 是我們的V神發(fā)起的一個(gè)開(kāi)源的去中心化的數(shù)字貨幣項(xiàng)目色乾。ETH在比特幣的基礎(chǔ)上提出了“智能合約”(Smart Contract)的概念。ETH更像是一個(gè)底層的操作系統(tǒng)领突。就像IOS 和安卓一樣杈湾,提供豐富的API接口。 學(xué)習(xí)ETH 的相關(guān)的地址如下:

    白皮書(shū):https://github.com/ethereum/wiki/wiki/%5BEnglish%5D-White-Paper
    官方網(wǎng)站:https://www.ethereum.org
    區(qū)塊查詢:https://etherscan.io/   https://etherchain.org/

1.2 ETC 介紹

????老有朋友問(wèn)ETC 和ETH是什么關(guān)系攘须。其實(shí)他們就是親兄弟漆撞。ETH 是ETC出現(xiàn)了一次BUG,導(dǎo)致有人損失了資產(chǎn)以后分裂出來(lái)的項(xiàng)目于宙。但是有一些認(rèn)為數(shù)字貨幣就是去中心化浮驳,是民主的,BUG的產(chǎn)生本身也是系統(tǒng)規(guī)則本身捞魁。 于是他們堅(jiān)持在了ETC社區(qū)至会。

2.2 私有鏈搭建

  • 代碼安裝方式
  • 創(chuàng)世塊配置
  • 編譯代碼

2.2.1 代碼安裝方式

初學(xué)者我們推薦使用 Installing from PPA 安裝

本人的安裝目錄 : ~/Library/Ethereum/geth

sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo add-apt-repository -y ppa:ethereum/ethereum-dev
sudo apt-get update
sudo apt-get install ethereum

2.2.2 機(jī)器環(huán)境

localhost:~ lei$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.13.2
BuildVersion:   17C88

2.2.3 GO 環(huán)境安裝

這里先不介紹GO的環(huán)境配置,請(qǐng)自行查詢谱俭。

版本需求為: version 1.7+ 本人使用的GO版本

localhost:~ lei$ go version
go version go1.9.3 darwin/amd64

2.3 私有鏈數(shù)據(jù)準(zhǔn)備

2.3.1 初始化文件 genesis.json

{
 “config”: {“
    chainId”: 88888,
    “homesteadBlock”: 0,
    “eip155Block”: 0,
    “eip158Block”: 0
  },
  “coinbase”: “0x0000000000000000000000000000000000000000”,
  “difficulty”: “0x1”,
  “extraData”: “0x00”,
  “gasLimit”: “0x47e7c5”,
  “nonce”: “0x0000000000000042”,
  “mixhash”: “0x0000000000000000000000000000000000000000000000000000000000000000”,
  “parentHash”: “0x0000000000000000000000000000000000000000000000000000000000000000”,
  “timestamp”: “0x00”,
  “alloc”: {
   “430e986e0cca10a174baad96871ec9cb308c6d05”: {
      “balance”: “111111”
    }
  }
}

2.3.2參數(shù)說(shuō)明

參數(shù) 解釋說(shuō)明
mixhash 與nonce配合用于挖礦奉件,由上一個(gè)區(qū)塊的一部分生成的hash宵蛀。注意他和nonce的設(shè)置需要滿足以太坊的Yellow paper, 4.3.4. Block Header Validity,(44)章節(jié)所描述的條件。.
nonce nonce就是一個(gè)64位隨機(jī)數(shù)县貌,用于挖礦术陶,注意他和mixhash的設(shè)置需要滿足以太坊的Yellow paper, 4.3.4. Block Header Validity, (44)章節(jié)所描述的條件。
difficulty 設(shè)置當(dāng)前區(qū)塊的難度煤痕,如果難度過(guò)大梧宫,cpu挖礦就很難,這里設(shè)置較小難度
alloc 用來(lái)預(yù)置賬號(hào)以及賬號(hào)的以太幣數(shù)量摆碉,因?yàn)樗接墟溚诘V比較容易塘匣,所以我們不需要預(yù)置有幣的賬號(hào),需要的時(shí)候自己創(chuàng)建即可以巷帝。
coinbase 礦工的賬號(hào)忌卤,(可以隨便填寫(xiě))
timestamp 設(shè)置創(chuàng)世塊的時(shí)間戳
parentHash 上一個(gè)區(qū)塊的hash值,因?yàn)槭莿?chuàng)世塊楞泼,所以這個(gè)值是0
Data 附加信息驰徊,隨便填,可以填你的個(gè)性信息
gasLimit 該值設(shè)置對(duì)GAS的消耗總量限制现拒,用來(lái)限制區(qū)塊能包含的交易信息總和,因?yàn)槲覀兪撬接墟溚蓿蕴钭畲蟆?/td>

3啟動(dòng)步驟

初始化數(shù)據(jù)

geth --datadir "./" init genesis.json
運(yùn)行以后會(huì)出現(xiàn)兩個(gè)目錄
geth中保存的是區(qū)塊鏈的相關(guān)數(shù)據(jù)
keystore中保存的是該鏈條中的用戶信息
image.png

啟動(dòng)控制臺(tái)

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

在這個(gè)環(huán)境里也內(nèi)置了一些用來(lái)操作以太坊的Javascript對(duì)象印蔬,可以直接使用這些對(duì)象。這些對(duì)象主要包括:

  1. eth:包含一些跟操作區(qū)塊鏈相關(guān)的方法
  2. net:包含以下查看p2p網(wǎng)絡(luò)狀態(tài)的方法
  3. admin:包含一些與管理節(jié)點(diǎn)相關(guān)的方法
  4. miner:包含啟動(dòng)&停止挖礦的一些方法
  5. personal:主要包含一些管理賬戶的方法
  6. txpool:包含一些查看交易內(nèi)存池的方法
  7. web3:包含了以上對(duì)象脱衙,還包含一些單位換算的方法
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末侥猬,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子捐韩,更是在濱河造成了極大的恐慌退唠,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,548評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件荤胁,死亡現(xiàn)場(chǎng)離奇詭異瞧预,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)仅政,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)垢油,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人圆丹,你說(shuō)我怎么就攤上這事滩愁。” “怎么了辫封?”我有些...
    開(kāi)封第一講書(shū)人閱讀 167,990評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵硝枉,是天一觀的道長(zhǎng)廉丽。 經(jīng)常有香客問(wèn)我,道長(zhǎng)妻味,這世上最難降的妖魔是什么正压? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,618評(píng)論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮弧可,結(jié)果婚禮上蔑匣,老公的妹妹穿的比我還像新娘。我一直安慰自己棕诵,他們只是感情好裁良,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,618評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著校套,像睡著了一般价脾。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上笛匙,一...
    開(kāi)封第一講書(shū)人閱讀 52,246評(píng)論 1 308
  • 那天侨把,我揣著相機(jī)與錄音,去河邊找鬼妹孙。 笑死秋柄,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的蠢正。 我是一名探鬼主播骇笔,決...
    沈念sama閱讀 40,819評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼嚣崭!你這毒婦竟也來(lái)了笨触?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,725評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤雹舀,失蹤者是張志新(化名)和其女友劉穎芦劣,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體说榆,經(jīng)...
    沈念sama閱讀 46,268評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡虚吟,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,356評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了签财。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片稍味。...
    茶點(diǎn)故事閱讀 40,488評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖荠卷,靈堂內(nèi)的尸體忽然破棺而出模庐,到底是詐尸還是另有隱情,我是刑警寧澤油宜,帶...
    沈念sama閱讀 36,181評(píng)論 5 350
  • 正文 年R本政府宣布掂碱,位于F島的核電站怜姿,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏疼燥。R本人自食惡果不足惜沧卢,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,862評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望醉者。 院中可真熱鬧但狭,春花似錦、人聲如沸撬即。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,331評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)剥槐。三九已至唱歧,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間粒竖,已是汗流浹背颅崩。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,445評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蕊苗,地道東北人沿后。 一個(gè)月前我還...
    沈念sama閱讀 48,897評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像朽砰,于是被迫代替她去往敵國(guó)和親尖滚。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,500評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,280評(píng)論 25 707
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理锅移,服務(wù)發(fā)現(xiàn)熔掺,斷路器饱搏,智...
    卡卡羅2017閱讀 134,696評(píng)論 18 139
  • 文|少女小漁 先講個(gè)故事,逗君一笑鬓催。 01. 二羊小時(shí)候是個(gè)很內(nèi)向肺素、不愛(ài)說(shuō)話的孩子, 不嚴(yán)重宇驾, 大概就是很多人曾經(jīng)...
    漁書(shū)家的少女小漁閱讀 266評(píng)論 0 0
  • 在《開(kāi)講啦》舞臺(tái)俞敏洪給當(dāng)代大學(xué)生作問(wèn)題解答课舍,其中有個(gè)大學(xué)生問(wèn)到“俞老師塌西,我學(xué)的專業(yè)是國(guó)學(xué)他挎,我很喜歡自己的專業(yè),可...
    你本來(lái)就很好閱讀 343評(píng)論 0 0