比特幣挖礦是咋回事(一)

比特幣是個大帳本蹈矮,也是個由多方參與者構(gòu)成的網(wǎng)絡(luò)砰逻。所以從賬本的角度來看,有交易雙方和記賬人這三個角色泛鸟;從網(wǎng)絡(luò)構(gòu)成的角度看蝠咆,有全節(jié)點(diǎn)、挖礦節(jié)點(diǎn)、SPV節(jié)點(diǎn)這幾種主要節(jié)點(diǎn)刚操。

其實(shí)這兩種描述都是對比特幣的參與者的描述闸翅,只是從不同的角度對參與者進(jìn)行了各有側(cè)重的描述。

這些參與者都各有各的任務(wù)菊霜,各有各的功能坚冀,我認(rèn)為其中最重要的角色/參與者就是礦工即記賬人。

一鉴逞,挖礦很重要记某!

全節(jié)點(diǎn)可以驗(yàn)證交易,但是挖礦節(jié)點(diǎn)才能確認(rèn)交易构捡,這意味著我轉(zhuǎn)給你一個比特幣這事雖然發(fā)生了液南,雖然我特愿意轉(zhuǎn)給你,雖然我轉(zhuǎn)給你的比特幣是沒被雙花過勾徽,雖然我也向你的地址轉(zhuǎn)賬了贺拣,但是最終你是否能收到這個比特幣卻要依賴于礦工是否把我發(fā)起的這筆交易打包進(jìn)區(qū)塊,并且對全網(wǎng)廣播捂蕴,只有被打包了并且不可更改的情況下這筆轉(zhuǎn)賬交易才算數(shù)譬涡,這就是驗(yàn)證和確認(rèn)的區(qū)別。只是“驗(yàn)證”還不夠啥辨,一定要“確認(rèn)”涡匀,本該是你的錢才能真的屬于你。

所以挖礦這事對于比特幣很重要溉知,它保證了比特幣系統(tǒng)的安全陨瘩,保證了比特幣賬本里的記錄真實(shí)有效,也參與維持了比特幣的價值级乍。

二舌劳,我為什么要干挖礦這個苦差事?

?挖礦很重要玫荣,但是礦工們憑什么要做這件事甚淡?總要有動力讓他去行動才行,這時候給礦工發(fā)放獎勵就必不可少了捅厂。沒錯贯卦,因?yàn)榭梢垣@得獎勵,所以有人愿意花錢費(fèi)力的來挖礦焙贷。

礦工的獎勵分兩個部分:挖礦得到的狗頭金(coinbase)和交易手續(xù)費(fèi)撵割。

挖礦獎勵除了能確保比特幣賬本的真實(shí)有效,同時還起到了比特幣的發(fā)行作用(就是指給礦工獎勵的coinbase)

比特幣的發(fā)行是每隔210000個塊即大約4年辙芍,系統(tǒng)會自動計(jì)算減半啡彬,這個減半的實(shí)現(xiàn)是有計(jì)算規(guī)則的羹与,節(jié)點(diǎn)按照目前的塊高度運(yùn)用特定的函數(shù)公式計(jì)算得出。

礦工交易手續(xù)費(fèi)是通過計(jì)算區(qū)塊內(nèi)所有交易的輸入庶灿、輸出差額得出的注簿。

所以礦工們會拼命的投入人力物力去競爭,去爭奪記賬權(quán)跳仿,爭奪獎勵诡渴,加入挖礦的人越多比特幣的系統(tǒng)就越安全,就越是被信任菲语,它的價值就越被認(rèn)同妄辩,然后又吸引更多的人來挖礦,這就是一個正循環(huán)山上。


三眼耀,憑什么這個家伙得到獎勵?---工作量證明(POW)

工作量證明佩憾,礦工們?yōu)榱藸帄Z獎勵哮伟,大家競爭去算一道題,這道題的算法是:把上個區(qū)塊頭加上一個變量值-NONCE混一塊做哈希運(yùn)算妄帘,它的目標(biāo)是要求得一個值楞黄,這個值要小于難度目標(biāo)值(難度目標(biāo)值是由節(jié)點(diǎn)按公式自動算出的)每個礦工算的這道題由于它們搜集的交易各不相同,所以做的題目內(nèi)容不同抡驼,但算題的難度和規(guī)則是一樣的鬼廓。

關(guān)于nonce不太容易理解,打個比方:礦工算的題就相當(dāng)于在給一個方程式求解致盟,沒有任何捷徑或模式讓礦工能快速找到答案碎税,只能是一個數(shù)一個數(shù)帶進(jìn)去解方程,就這個笨辦法馏锡。這個方法求解的時候難雷蹂,但是驗(yàn)算起來特別容易。

在這就有個疑問杯道,這個nonce 一定存在嗎匪煌?要是算遍了都沒找到這個值怎么辦呢?

難度目標(biāo)值蕉饼,是不斷調(diào)整的虐杯,調(diào)整的根據(jù)就是看最近這2016個區(qū)塊在這20160分鐘里出塊的速度和理想的出塊速度去對比玛歌,太快了就把難度目標(biāo)值調(diào)小了(即難度大增大)昧港,太慢了就把難度目標(biāo)值調(diào)大了(即難度降低),當(dāng)然如何調(diào)整也是有一個預(yù)定的規(guī)則支子,有相應(yīng)的函數(shù)创肥,節(jié)點(diǎn)會自己去計(jì)算。

難度目標(biāo)值存在的意義是為了維持比特幣平均每十分鐘出一個塊的速度,也就是在維持比特幣的發(fā)行速度叹侄。出的太快了就往慢調(diào)一下巩搏,出的太慢了就往快調(diào)一下。

在這里我不由的想一個問題趾代,為什么要定成10分鐘出一個塊呢贯底?三分鐘、兩分鐘撒强、甚至一分鐘不是更快嗎禽捆,更好嗎?

工作量證明能說明一件事飘哨,就是你最聰明你最快胚想,這個帳給你記,這個獎勵給你芽隆,此外還說明一件事浊服,說明你是個好人,你是個善意節(jié)點(diǎn)胚吁,因?yàn)楫?dāng)壞人的話這個工作量就是成本牙躺,而這個成本太高了,于是也擋住了想到系統(tǒng)里搗亂的壞家伙們腕扶,從這個角度來說也維護(hù)了比特幣系統(tǒng)的安全性述呐。

說到這就真的能明白挖礦起到的重要作用,它是比特幣系統(tǒng)的重要一環(huán)蕉毯,是一個重要的參與者乓搬。

四,假如我是一個礦工

礦工有兩種:獨(dú)立礦工和屬于礦池的礦工代虾。

獨(dú)立礦工就是直接與比特幣網(wǎng)絡(luò)連接的挖礦節(jié)點(diǎn)进肯,而另一類礦工不是直接與比特幣網(wǎng)絡(luò)相連,是一群礦工連著礦池棉磨,由礦池連接著比特幣網(wǎng)絡(luò)江掩。

目前比特幣的算力太強(qiáng)大了,單獨(dú)的礦工是難以挖到礦了乘瓤,要加入礦池环形,礦池會把這個活分任務(wù)量攤給礦工們一起計(jì)算,幾十臺幾百臺礦機(jī)肯定比一臺礦機(jī)算的快衙傀。

假如我是一個礦工來捋捋我是怎么干活的抬吟。

1.先以一筆我接收到的交易為線索來描述它被打包進(jìn)區(qū)塊的過程。

假如我是個礦工的的話统抬,我的節(jié)點(diǎn)會收到交易火本,然后驗(yàn)證交易危队,驗(yàn)證合格的交易會放入一個內(nèi)存池。接著我會構(gòu)建一個候選區(qū)塊钙畔,這個區(qū)塊有區(qū)塊頭和區(qū)塊身體茫陆,區(qū)塊頭包括版本號、父區(qū)塊(頭部)哈希擎析、MERKLE根簿盅、時間戳、難度目標(biāo)值揍魂、NONCE(Nonce值是由計(jì)算得出后填入的)挪鹏。如果我是全網(wǎng)最快一個算出這道題的,我把去塊頭所有信息填上愉烙,再把交易的輸入輸出這些具體信息打包進(jìn)區(qū)塊的身體(輸入中包括coinbase)讨盒,這樣一個區(qū)塊新鮮出爐,然后我向全世界的其他節(jié)點(diǎn)發(fā)出這個區(qū)塊步责。其他節(jié)點(diǎn)接收到后驗(yàn)證我的這個區(qū)塊各個值是否正確返顺,里面的所有交易是否正確,一切無誤后把這個區(qū)塊加到它的鏈上并且把塊傳播到其他節(jié)點(diǎn)蔓肯。

2.?再以一個已經(jīng)打包好的區(qū)塊的角度看我的礦工節(jié)點(diǎn)是怎么干活的遂鹊。

假如上一個塊的高度是20000,我正在努力解答問題蔗包,想盡快獲得20001這個塊的打包記賬權(quán)秉扑,忽然我的網(wǎng)絡(luò)收到了叫20001的塊,我立刻停下解這道題的工作调限,一邊驗(yàn)證這個區(qū)塊舟陆,一邊構(gòu)造下一個區(qū)塊。我在內(nèi)存池里把屬于上一個區(qū)塊的交易揪出來耻矮,把剩下的不超過區(qū)塊SIZE的交易拿來重新構(gòu)建候選區(qū)塊秦躯,開始關(guān)于20002個區(qū)塊的解題比賽。

以上大概的描述了礦工是干什么的裆装,有什么作用踱承,它是怎樣工作的,也弄明白了POW的好與壞哨免。

五茎活,幾個思考題

在喬老師的《精通比特幣》關(guān)于這一章的學(xué)習(xí)中提到了幾個思考題:比特幣的挖礦到底在計(jì)算什么?數(shù)學(xué)模型是什么琢唾?這種計(jì)算是不是為了某些別的東西载荔,而比特幣只是個附屬商品?為什么我覺得比特幣更像商品慧耍,而這個商品的原料只是計(jì)算能力身辨?

我覺得比特幣的挖礦就是在用一個笨辦法找一個解丐谋,它運(yùn)用的數(shù)學(xué)方法書中描述這也是種哈希運(yùn)算芍碧。這種計(jì)算是為了讓比特幣網(wǎng)絡(luò)的參與者之一礦工來維持這個系統(tǒng)的安全煌珊,比特幣和這個系統(tǒng)渾然一體,究竟它是附屬還是最終目的呢泌豆?若說比特幣是目的定庵,那它更像是商品,算力是原料踪危,共識機(jī)制蔬浙,加密技術(shù)和分布式網(wǎng)絡(luò)只不過是生產(chǎn)比特幣并使其能夠有卓爾不群的優(yōu)良品質(zhì)的工藝而已,若說它是附屬贞远,那誰才是主角畴博,是底層的區(qū)塊鏈技術(shù)嗎?沒有比特幣的底層不就是一堆沒有生機(jī)無法活動起來的機(jī)器嗎蓝仲?你說呢俱病?

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市袱结,隨后出現(xiàn)的幾起案子亮隙,更是在濱河造成了極大的恐慌,老刑警劉巖垢夹,帶你破解...
    沈念sama閱讀 217,084評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件溢吻,死亡現(xiàn)場離奇詭異,居然都是意外死亡果元,警方通過查閱死者的電腦和手機(jī)促王,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來而晒,“玉大人硼砰,你說我怎么就攤上這事⌒琅穑” “怎么了题翰?”我有些...
    開封第一講書人閱讀 163,450評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長诈胜。 經(jīng)常有香客問我豹障,道長,這世上最難降的妖魔是什么焦匈? 我笑而不...
    開封第一講書人閱讀 58,322評論 1 293
  • 正文 為了忘掉前任血公,我火速辦了婚禮,結(jié)果婚禮上缓熟,老公的妹妹穿的比我還像新娘累魔。我一直安慰自己摔笤,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,370評論 6 390
  • 文/花漫 我一把揭開白布垦写。 她就那樣靜靜地躺著吕世,像睡著了一般。 火紅的嫁衣襯著肌膚如雪梯投。 梳的紋絲不亂的頭發(fā)上命辖,一...
    開封第一講書人閱讀 51,274評論 1 300
  • 那天,我揣著相機(jī)與錄音分蓖,去河邊找鬼尔艇。 笑死,一個胖子當(dāng)著我的面吹牛么鹤,可吹牛的內(nèi)容都是我干的终娃。 我是一名探鬼主播,決...
    沈念sama閱讀 40,126評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼蒸甜,長吁一口氣:“原來是場噩夢啊……” “哼棠耕!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起迅皇,我...
    開封第一講書人閱讀 38,980評論 0 275
  • 序言:老撾萬榮一對情侶失蹤昧辽,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后登颓,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體搅荞,經(jīng)...
    沈念sama閱讀 45,414評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,599評論 3 334
  • 正文 我和宋清朗相戀三年框咙,在試婚紗的時候發(fā)現(xiàn)自己被綠了咕痛。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,773評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡喇嘱,死狀恐怖茉贡,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情者铜,我是刑警寧澤腔丧,帶...
    沈念sama閱讀 35,470評論 5 344
  • 正文 年R本政府宣布,位于F島的核電站作烟,受9級特大地震影響愉粤,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜拿撩,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,080評論 3 327
  • 文/蒙蒙 一衣厘、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦影暴、人聲如沸错邦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽撬呢。三九已至,卻和暖如春早歇,著一層夾襖步出監(jiān)牢的瞬間倾芝,已是汗流浹背讨勤。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評論 1 269
  • 我被黑心中介騙來泰國打工箭跳, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人潭千。 一個月前我還...
    沈念sama閱讀 47,865評論 2 370
  • 正文 我出身青樓谱姓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親刨晴。 傳聞我的和親對象是個殘疾皇子屉来,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,689評論 2 354

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

  • 一、快速術(shù)語檢索 比特幣地址:(例如:1DSrfJdB2AnWaFNgSbv3MZC2m74996JafV)由一串...
    不如假如閱讀 15,945評論 4 87
  • 以下為金馬老師《精通比特幣》解讀的文稿整理狈癞。 第一章 介紹 1.1 什么是比特幣 (1)比特幣是一個區(qū)塊鏈實(shí)現(xiàn) (...
    夢之郎閱讀 13,246評論 6 61
  • “白駒過隙”是一個被用爛的詞茄靠。這里我想“時間是怎樣爬過了我的皮膚只有我自己最清楚”這句話來形容時間的殘忍更為恰當(dāng)吧...
    陳蓁蓁閱讀 208評論 0 0
  • 01 最近在看奇葩說慨绳,其中一期節(jié)目是“應(yīng)該鼓勵病危病人活下去嗎?現(xiàn)場的嘉賓說了很多自己身邊的例子來支持自己的觀點(diǎn)真竖,...
    有故事的董小姐c閱讀 365評論 0 0