當前位置:首頁 » 挖礦知識 » 礦工挖礦為什麼會壓死

礦工挖礦為什麼會壓死

發布時間: 2023-03-27 14:55:35

A. 開源礦工挖礦內核啟動失敗

開源礦工挖礦內核啟動失敗有以下幾種原因:
1、高級設置的附加參數錯誤。
2、顯卡不支持該幣種。
3、虛擬內存設置的不夠。
4、內核選擇錯誤。
5、內核文件被殺毒軟體刪除。

B. 火幣礦池不能挖礦了

由於火幣礦池近期業務調整,將集中精力拓展全球業務,因此決定停止該平台的運營工作. 生態交易所上所有交易對將於新加坡時間2021 年7 月14 日截止
拓展資料
一、由於比特幣全網的運算水準在不斷的呈指數級別上漲,單個設備或少量的算力都無法在比特幣網路上獲取到比特幣網路提供的區塊獎勵。在全網算力提升到了一定程度後,過低的獲取獎勵的概率,促使一些「bitcointalk」上的極客開發出一種可以將少量算力合並聯合運作的方法,使用這種方式建立的網站便被稱作「礦池」(Mining Pool)。 在此機制中,不論個人礦工所能使用的運算力多寡,只要是透過加入礦池來參與挖礦活動,無論是否有成功挖掘出有效資料塊,皆可經由對礦池的貢獻來獲得少量比特幣獎勵,亦即多人合作挖礦,獲得的比特幣獎勵也由多人依照貢獻度分享。 截止2019年1月,全球算力排名前五的比特幣礦池有:BTC.com 、Poolin、AntPool、slush pool、、F2Pool,全球約70%的算力在中國礦工手中。
1. PPS模式:Pay-Per-Share方式---該方式為立即為每一個share支付報酬。該支出來源於礦池現有的比特幣資金,因此可以立即取現,而不用等待區塊生成完畢或者確認。這樣可以避免礦池運營者幕後操縱。這種方法減少了礦工的風險,但將風險轉移給了礦池的運營者。運營者可以收取手續費來彌補這些風險可能造成的損失。為了解決PPLNS那種有時候收益很高,有時候沒有收益的情況,PPS採用了新的演算法。PPS根據你的算力在礦池中的佔比,並估算了礦池每天可以獲得的礦產,給你每天基本固定的收益。
2. PROP模式:比特幣區塊的產生是:由礦池發現區塊後向全網路廣播,經過120次確認後,才會產生區塊。PPS模式是:礦工每貢獻一點速度,礦池就向礦工支付相應的比特幣,礦池的幣還是要來自真正的區塊產生,只不過在真正的區塊產生之前,礦池就提前支付給了礦工。PROP模式是:礦池經過120次確認產生真正區塊後,會把比特幣按每個礦工的貢獻分配給礦工,這種模式更符合比特幣區塊的產生。在PROP模式,即使暫時沒有產生真正的區塊,以後產生出來了真正的區塊,還是會根據挖這個區塊的貢獻,分配給每個礦工。礦工挖礦至少都是挖幾個月,甚至幾年,所以從長遠來看,這兩種模式挖出幣的數量是一樣。

C. 挖礦的風險有哪些在世鏈礦業的礦場挖礦能有保障嗎

挖礦的風險多可多了,除了幣價不穩定,挖礦隨著出礦的速度變得越來越難之外,還有斷電、機器維護等風險。斷電對礦機的影響非常大,不僅使得挖礦收益受到影響,關鍵是會縮短礦機的使用壽命,且機器維護要是不及時的話,也能影響其壽命及挖礦收益,造成礦工的經濟損失。總之,要是想降低挖礦的風險的話,可以找一個優質的礦場進行挖礦,盡最大可能地降低挖礦風險。世鏈礦業作為國內頂尖的礦企,在消費者眼中口碑相當不錯。它的俄羅斯礦場,更是成為了眾多礦工嚮往之地,在他們家的礦場里挖礦,能有效降低挖礦風險,礦工挖礦收益能夠到一個質的保障不妨刁解一下。

D. Filecoin礦工為什麼會掉算力

IPFS中Filecoin礦工為什麼會掉算力?

掉算力會影響兩個方面:

NO.1影響礦工的 挖礦 效率。

因為掉算力之後,算力基本上要第二天時間才能恢復,(每天在一個特定時間才能提交提交時空證明,如果不能及時提交,就會掉算力)

NO.2礦商會被官方罰款,扣掉一些質押幣

當然罰款沒有想像中的那麼嚴重,因為在官方網站上查到的扇區錯誤的罰款基本是錯誤扇區未來兩天的收益。按照目前而言,如果出現1 t 的扇區錯誤,罰款基本是0.5枚幣。然而通過查數據,掉算力的罰款沒有扇區錯誤的罰款要少,雖然顯示的都是扇區錯誤,但這兩種扇區錯誤的性質是不一樣的。

掉算力的原因

1

錢包未同步

錢包高度不等於區塊高度,就會導致錢包發出的信息鏈上接收不到,這種問題也會導致掉算力。

2

時空證明提交失敗

存儲結構不合理,每天大概70 t 需要提交一次證明,且提交證明時需要從70t的扇區中收取部分數據進行提交證明。如果存儲結構不合理,收取數據的效率就會大大降低,會導致在提交時空證明的過程當中耗時太長,沒有在規定時間內提交完時間證明,需要等到第二天才能提交數據,所以也會導致掉算力。

3

消息池堵塞

礦工的一切准備都已經完成,只需將證明提交上鏈,但是鏈上消息堵塞不通,這是官方在技術上存在bug-rpc 的問題,目前官方還未能解決,但有實力的礦工通過技術手段的優化,可以在很大程度上降低該問題發生的概率,而中小型礦工及礦商如果沒有實力解決此問題,基本遇到一次消息池堵塞問題就會被懲罰。

4

Miner機配置不合理,穩定性不夠

Miner機性能不穩定,比如在工作中出現崩潰,也會導致掉算力。

除了看封裝速度的大小,算力的穩定性也同樣非常重要,如果經常掉算力,挖礦效率就會大大降低,而且還會被罰款。因此,在挖礦的過程當中,機器效率的發揮跟算力的穩定性都是非常重要的!

星際聯盟文件系統IPFS是一個面向全球的、點對點的分布式版本文件系統。IPFS項目穩步發展中,在長期規劃里處於初期階段,正是適合投資者入場的好時機,任何一方都有很多參與的機會。

E. 山西沁源縣一煤礦發生事故致5人被困,挖礦都存在哪些風險

挖礦是一個危險工作,長期從事該工作,對身體健康有害。在我個人看來,挖礦過程中存在風險,主要有三個。第一個是瓦斯爆炸,第二個則是礦洞坍塌,第三個是遇上暗流。這三個風險一旦出現,都會危及到井下作業人員生命安全。

山西沁源縣一煤礦發生事故,致使5人被困井下。讓人心痛的是,被困5名礦工,被救援人員找到時候,已經失去了生命體征。類似事情在礦山中時有發生,也正因為這樣,才使得這份工作,帶來高收入同時,也伴隨著巨大的風險。

地下存在著眾多未知風險,除了坍塌和瓦斯外,還可能存在暗河。一旦遇上暗河,也會使得礦洞內水位急劇上升,這對於井下作業人員,也是一個潛在風險。

F. 最近聽到很多人說采礦工程的畢業生去礦上就是去做苦力,挖煤這是不是真的啊真的是做苦力嗎求真相

您好,本人礦大采礦畢業生。
你說的是真的,采礦畢業生去了就是去挖煤。的確有一些人聲稱,畢業後到了礦上直接是辦公室工作人員,這些人一般是「煤礦子弟」,也就是說,他的父母在礦上是領導,所以他們去了直接就是小頭目,不用下井。那些「成功人士」的經歷不值得被我們這些「草根人士」所參考。實話說,采礦畢業生,如果家裡沒背景,去了就是個礦工。
為什麼現在要這么做呢?主要是各個礦區都缺人,想招人去挖礦。傳統的農民工都是老油條,幹活太累的就不幹了,沒事還會罷工、漲工資、磨洋工。只有大學生才是最聽話的。沒事領導嚇唬一下,就不敢不幹了;偶爾再予以小利,就樂得屁顛屁顛的。
一般到了礦上,都是干力氣活,一般人都吃不消。打鑽孔、注漿(注水)、扛支架(100斤)、等等。這些工作一干就是4-5年,幾年後,才有提乾的機會。如果你運氣夠好,能堅持這么久、並且花錢送禮足夠,提干就能提拔為小領導,你就可以在辦公室工作了。但是,如果你沒有站對隊(自己領悟)、沒送錢,最後你一輩子就是個礦工。
說的殘酷一點,可能很多人也會持反對意見。但是這就是實情。我就說個最簡單的例子,倘若采礦畢業去礦上,直接就是坐辦公室,那麼為什麼我們的老師不去礦上,還在這里拿著微薄的收入教書?!
自己人不騙自己人,說的真心話,望採納。

G. 輕松礦工一開始挖礦就死機

系統不兼容或者缺少數據包就會出現死機和閃退。
1、系統不兼容.
部分軟體對版本有一定的要求,如果系統版本過低,軟體是不能支持的,所以會閃退。2、解析度不兼容。
一些軟體對手機解析度有一定的要求,如果手機解析度不兼容,有部分軟體就容易出現閃退或其它錯誤。

H. 魔力寶貝中,礦工挖礦有掉魂的危險嗎

不會掉魂!我的礦工從1級沖到10級挖礦經常掛著睡覺!回來在看大紅傷!= =.
雖然不會掉魂但是挖礦的MISS明顯提高!半天挖不到1組的>_<。。

I. 比特幣挖礦原理

比特幣的挖礦原理,實際上就是一個 數據記錄的過程。

區塊鏈是- -個人人都可以參與數據處理的資料庫,每隔一段時間, 就需要礦工將之前沒有經過大家確認的交易數據收集起來,進行處理。

但問題就來了,礦工那麼多,到底用誰處理的數據?所以,系統就有了一個特殊的機制。

所有參與的礦工,把數據打包的時候,必須加入一個叫做「哈希值」的東西,而且這個哈希值必須滿足一定的條件,系統才會認可你處理的數據。誰能最先完成這件事,並把自己的工作成果廣播給其他的礦工確認,_部分認為沒問題,誰就能獲得記錄數據的權利,以及很多的比特幣作為獎勵。

這就有點像一個海賊王留下了大筆的金銀珠寶,然後跟所有人說,尋找吧,誰能找到開啟我寶藏大i ]的鑰匙,誰就能獲得我的全部財富。

當然,礦工挖礦不僅僅是為了比特幣,因為這是維護整個區塊鏈網路的重要環節,挖礦的人越多,參與數據確認的人也就越多,我們的數據也就越安全。所以,不要小瞧礦工,真的到了數據爆炸的那天,礦工拯救世界,可不是說說而已

拓展資料
一、比特幣的原理:
與現實貨幣不同,比特幣不依靠特定貨幣機構發行,它依據特定演算法,通過大量的計算產生。從比特幣的本質來看,是一些_雜演算法所生成的特解。每-個特解都能解開方程並且是唯一 的,破解之後就相當於擁有了這個特殊貨幣。

2、虛擬貨幣定義非常簡單,就是指非真實的貨幣。
虛擬貨幣有以下幾類:
1. 游戲貨幣。對,你沒聽錯,可以在網路游戲里進行交易的貨幣也能叫虛擬貨幣。不過單機游戲里的貨幣不能叫虛擬貨幣,因為其不能聯網與其它玩家進行市場交易。
2. 網站貨幣。一些網站推出的可以購買網站增值服務的貨幣。比如騰訊的Q幣。
3. 電子錢包。大家平時常用的微信支付,支付寶等等。
4. 區塊鏈貨幣。大家比較熟悉的區塊鏈,以太坊和我經常說的 FIL。
3、那上面這些貨幣都合法嗎?
答案是都是合法貨幣。不過先別急著蓋棺定論,雖然它們都是合法貨幣,但是離「法定貨幣」還有十萬八千里。就拿區塊鏈貨幣來說,國家已經將區塊鏈貨幣列為法定財產,2019年9月28日,海南成立了區塊中心。區塊中心是由火幣集團牽頭成立的。據報道稱,數字貨幣也是我國經濟增長的主要動力,國家也肯定了區塊產業的技術,這次區塊中心的成立,是央視首次報道虛擬貨幣的進展。
雖然當前國內能夠交易得到的數字貨幣有非常多,但其中絕大多數都是打著區塊鏈的幌子進行圈錢的代幣。如果對於數字貨幣投資比較感興趣的話,那麼還是盡可能地去選擇投資市值排名前20的幣種。

J. 詳解比特幣挖礦原理

可以將區塊鏈看作一本記錄所有交易的公開總帳簿(列表),比特幣網路中的每個參與者都把它看作一本所有權的權威記錄。

比特幣沒有中心機構,幾乎所有的完整節點都有一份公共總帳的備份,這份總帳可以被視為認證過的記錄。

至今為止,在主幹區塊鏈上,沒有發生一起成功的攻擊,一次都沒有。

通過創造出新區塊,比特幣以一個確定的但不斷減慢的速率被鑄造出來。大約每十分鍾產生一個新區塊,每一個新區塊都伴隨著一定數量從無到有的全新比特幣。每開采210,000個塊,大約耗時4年,貨幣發行速率降低50%。

在2016年的某個時刻,在第420,000個區塊被「挖掘」出來之後降低到12.5比特幣/區塊。在第13,230,000個區塊(大概在2137年被挖出)之前,新幣的發行速度會以指數形式進行64次「二等分」。到那時每區塊發行比特幣數量變為比特幣的最小貨幣單位——1聰。最終,在經過1,344萬個區塊之後,所有的共20,999,999.9769億聰比特幣將全部發行完畢。換句話說, 到2140年左右,會存在接近2,100萬比特幣。在那之後,新的區塊不再包含比特幣獎勵,礦工的收益全部來自交易費。

在收到交易後,每一個節點都會在全網廣播前對這些交易進行校驗,並以接收時的相應順序,為有效的新交易建立一個池(交易池)。

每一個節點在校驗每一筆交易時,都需要對照一個長長的標准列表:

交易的語法和數據結構必須正確。

輸入與輸出列表都不能為空。

交易的位元組大小是小於MAX_BLOCK_SIZE的。

每一個輸出值,以及總量,必須在規定值的范圍內 (小於2,100萬個幣,大於0)。

沒有哈希等於0,N等於-1的輸入(coinbase交易不應當被中繼)。

nLockTime是小於或等於INT_MAX的。

交易的位元組大小是大於或等於100的。

交易中的簽名數量應小於簽名操作數量上限。

解鎖腳本(Sig)只能夠將數字壓入棧中,並且鎖定腳本(Pubkey)必須要符合isStandard的格式 (該格式將會拒絕非標准交易)。

池中或位於主分支區塊中的一個匹配交易必須是存在的。

對於每一個輸入,如果引用的輸出存在於池中任何的交易,該交易將被拒絕。

對於每一個輸入,在主分支和交易池中尋找引用的輸出交易。如果輸出交易缺少任何一個輸入,該交易將成為一個孤立的交易。如果與其匹配的交易還沒有出現在池中,那麼將被加入到孤立交易池中。

對於每一個輸入,如果引用的輸出交易是一個coinbase輸出,該輸入必須至少獲得COINBASE_MATURITY (100)個確認。

對於每一個輸入,引用的輸出是必須存在的,並且沒有被花費。

使用引用的輸出交易獲得輸入值,並檢查每一個輸入值和總值是否在規定值的范圍內 (小於2100萬個幣,大於0)。

如果輸入值的總和小於輸出值的總和,交易將被中止。

如果交易費用太低以至於無法進入一個空的區塊,交易將被拒絕。

每一個輸入的解鎖腳本必須依據相應輸出的鎖定腳本來驗證。

以下挖礦節點取名為 A挖礦節點

挖礦節點時刻監聽著傳播到比特幣網路的新區塊。而這些新加入的區塊對挖礦節點有著特殊的意義。礦工間的競爭以新區塊的傳播而結束,如同宣布誰是最後的贏家。對於礦工們來說,獲得一個新區塊意味著某個參與者贏了,而他們則輸了這場競爭。然而,一輪競爭的結束也代表著下一輪競爭的開始。

驗證交易後,比特幣節點會將這些交易添加到自己的內存池中。內存池也稱作交易池,用來暫存尚未被加入到區塊的交易記錄。

A節點需要為內存池中的每筆交易分配一個優先順序,並選擇較高優先順序的交易記錄來構建候選區塊。

一個交易想要成為「較高優先順序」,需滿足的條件:優先值大於57,600,000,這個值的生成依賴於3個參數:一個比特幣(即1億聰),年齡為一天(144個區塊),交易的大小為250個位元組:

High Priority > 100,000,000 satoshis * 144 blocks / 250 bytes = 57,600,000

區塊中用來存儲交易的前50K位元組是保留給較高優先順序交易的。 節點在填充這50K位元組的時候,會優先考慮這些最高優先順序的交易,不管它們是否包含了礦工費。這種機制使得高優先順序交易即便是零礦工費,也可以優先被處理。

然後,A挖礦節點會選出那些包含最小礦工費的交易,並按照「每千位元組礦工費」進行排序,優先選擇礦工費高的交易來填充剩下的區塊。

如區塊中仍有剩餘空間,A挖礦節點可以選擇那些不含礦工費的交易。有些礦工會竭盡全力將那些不含礦工費的交易整合到區塊中,而其他礦工也許會選擇忽略這些交易。

在區塊被填滿後,內存池中的剩餘交易會成為下一個區塊的候選交易。因為這些交易還留在內存池中,所以隨著新的區塊被加到鏈上,這些交易輸入時所引用UTXO的深度(即交易「塊齡」)也會隨著變大。由於交易的優先值取決於它交易輸入的「塊齡」,所以這個交易的優先值也就隨之增長了。最後,一個零礦工費交易的優先值就有可能會滿足高優先順序的門檻,被免費地打包進區塊。

UTXO(Unspent Transaction Output) : 每筆交易都有若干交易輸入,也就是資金來源,也都有若干筆交易輸出,也就是資金去向。一般來說,每一筆交易都要花費(spend)一筆輸入,產生一筆輸出,而其所產生的輸出,就是「未花費過的交易輸出」,也就是 UTXO。

塊齡:UTXO的「塊齡」是自該UTXO被記錄到區塊鏈為止所經歷過的區塊數,即這個UTXO在區塊鏈中的深度。

區塊中的第一筆交易是筆特殊交易,稱為創幣交易或者coinbase交易。這個交易是由挖礦節點構造並用來獎勵礦工們所做的貢獻的。假設此時一個區塊的獎勵是25比特幣,A挖礦的節點會創建「向A的地址支付25.1個比特幣(包含礦工費0.1個比特幣)」這樣一個交易,把生成交易的獎勵發送到自己的錢包。A挖出區塊獲得的獎勵金額是coinbase獎勵(25個全新的比特幣)和區塊中全部交易礦工費的總和。

A節點已經構建了一個候選區塊,那麼就輪到A的礦機對這個新區塊進行「挖掘」,求解工作量證明演算法以使這個區塊有效。比特幣挖礦過程使用的是SHA256哈希函數。

用最簡單的術語來說, 挖礦節點不斷重復進行嘗試,直到它找到的隨機調整數使得產生的哈希值低於某個特定的目標。 哈希函數的結果無法提前得知,也沒有能得到一個特定哈希值的模式。舉個例子,你一個人在屋裡打檯球,白球從A點到達B點,但是一個人推門進來看到白球在B點,卻無論如何是不知道如何從A到B的。哈希函數的這個特性意味著:得到哈希值的唯一方法是不斷的嘗試,每次隨機修改輸入,直到出現適當的哈希值。

需要以下參數

• block的版本 version

• 上一個block的hash值: prev_hash

• 需要寫入的交易記錄的hash樹的值: merkle_root

• 更新時間: ntime

• 當前難度: nbits

挖礦的過程就是找到x使得

SHA256(SHA256(version + prev_hash + merkle_root + ntime + nbits + x )) < TARGET

上式的x的范圍是0~2^32, TARGET可以根據當前難度求出的。

簡單打個比方,想像人們不斷扔一對色子以得到小於一個特定點數的游戲。第一局,目標是12。只要你不扔出兩個6,你就會贏。然後下一局目標為11。玩家只能扔10或更小的點數才能贏,不過也很簡單。假如幾局之後目標降低為了5。現在有一半機率以上扔出來的色子加起來點數會超過5,因此無效。隨著目標越來越小,要想贏的話,扔色子的次數會指數級的上升。最終當目標為2時(最小可能點數),只有一個人平均扔36次或2%扔的次數中,他才能贏。

如前所述,目標決定了難度,進而影響求解工作量證明演算法所需要的時間。那麼問題來了:為什麼這個難度值是可調整的?由誰來調整?如何調整?

比特幣的區塊平均每10分鍾生成一個。這就是比特幣的心跳,是貨幣發行速率和交易達成速度的基礎。不僅是在短期內,而是在幾十年內它都必須要保持恆定。在此期間,計算機性能將飛速提升。此外,參與挖礦的人和計算機也會不斷變化。為了能讓新區塊的保持10分鍾一個的產生速率,挖礦的難度必須根據這些變化進行調整。事實上,難度是一個動態的參數,會定期調整以達到每10分鍾一個新區塊的目標。簡單地說,難度被設定在,無論挖礦能力如何,新區塊產生速率都保持在10分鍾一個。

那麼,在一個完全去中心化的網路中,這樣的調整是如何做到的呢?難度的調整是在每個完整節點中獨立自動發生的。每2,016個區塊(2周產生的區塊)中的所有節點都會調整難度。難度的調整公式是由最新2,016個區塊的花費時長與20,160分鍾(兩周,即這些區塊以10分鍾一個速率所期望花費的時長)比較得出的。難度是根據實際時長與期望時長的比值進行相應調整的(或變難或變易)。簡單來說,如果網路發現區塊產生速率比10分鍾要快時會增加難度。如果發現比10分鍾慢時則降低難度。

為了防止難度的變化過快,每個周期的調整幅度必須小於一個因子(值為4)。如果要調整的幅度大於4倍,則按4倍調整。由於在下一個2,016區塊的周期不平衡的情況會繼續存在,所以進一步的難度調整會在下一周期進行。因此平衡哈希計算能力和難度的巨大差異有可能需要花費幾個2,016區塊周期才會完成。

舉個例子,當前A節點在挖277,316個區塊,A挖礦節點一旦完成計算,立刻將這個區塊發給它的所有相鄰節點。這些節點在接收並驗證這個新區塊後,也會繼續傳播此區塊。當這個新區塊在網路中擴散時,每個節點都會將它作為第277,316個區塊(父區塊為277,315)加到自身節點的區塊鏈副本中。當挖礦節點收到並驗證了這個新區塊後,它們會放棄之前對構建這個相同高度區塊的計算,並立即開始計算區塊鏈中下一個區塊的工作。

比特幣共識機制的第三步是通過網路中的每個節點獨立校驗每個新區塊。當新區塊在網路中傳播時,每一個節點在將它轉發到其節點之前,會進行一系列的測試去驗證它。這確保了只有有效的區塊會在網路中傳播。

每一個節點對每一個新區塊的獨立校驗,確保了礦工無法欺詐。在前面的章節中,我們看到了礦工們如何去記錄一筆交易,以獲得在此區塊中創造的新比特幣和交易費。為什麼礦工不為他們自己記錄一筆交易去獲得數以千計的比特幣?這是因為每一個節點根據相同的規則對區塊進行校驗。一個無效的coinbase交易將使整個區塊無效,這將導致該區塊被拒絕,因此,該交易就不會成為總賬的一部分。

比特幣去中心化的共識機制的最後一步是將區塊集合至有最大工作量證明的鏈中。一旦一個節點驗證了一個新的區塊,它將嘗試將新的區塊連接到到現存的區塊鏈,將它們組裝起來。

節點維護三種區塊:

· 第一種是連接到主鏈上的,

· 第二種是從主鏈上產生分支的(備用鏈),

· 第三種是在已知鏈中沒有找到已知父區塊的。

有時候,新區塊所延長的區塊鏈並不是主鏈,這一點我們將在下面「 區塊鏈分叉」中看到。

如果節點收到了一個有效的區塊,而在現有的區塊鏈中卻未找到它的父區塊,那麼這個區塊被認為是「孤塊」。孤塊會被保存在孤塊池中,直到它們的父區塊被節點收到。一旦收到了父區塊並且將其連接到現有區塊鏈上,節點就會將孤塊從孤塊池中取出,並且連接到它的父區塊,讓它作為區塊鏈的一部分。當兩個區塊在很短的時間間隔內被挖出來,節點有可能會以相反的順序接收到它們,這個時候孤塊現象就會出現。

選擇了最大難度的區塊鏈後,所有的節點最終在全網范圍內達成共識。隨著更多的工作量證明被添加到鏈中,鏈的暫時性差異最終會得到解決。挖礦節點通過「投票」來選擇它們想要延長的區塊鏈,當它們挖出一個新塊並且延長了一個鏈,新塊本身就代表它們的投票。

因為區塊鏈是去中心化的數據結構,所以不同副本之間不能總是保持一致。區塊有可能在不同時間到達不同節點,導致節點有不同的區塊鏈視角。解決的辦法是, 每一個節點總是選擇並嘗試延長代表累計了最大工作量證明的區塊鏈,也就是最長的或最大累計難度的鏈。

當有兩個候選區塊同時想要延長最長區塊鏈時,分叉事件就會發生。正常情況下,分叉發生在兩名礦工在較短的時間內,各自都算得了工作量證明解的時候。兩個礦工在各自的候選區塊一發現解,便立即傳播自己的「獲勝」區塊到網路中,先是傳播給鄰近的節點而後傳播到整個網路。每個收到有效區塊的節點都會將其並入並延長區塊鏈。如果該節點在隨後又收到了另一個候選區塊,而這個區塊又擁有同樣父區塊,那麼節點會將這個區塊連接到候選鏈上。其結果是,一些節點收到了一個候選區塊,而另一些節點收到了另一個候選區塊,這時兩個不同版本的區塊鏈就出現了。

分叉之前

分叉開始

我們看到兩個礦工幾乎同時挖到了兩個不同的區塊。為了便於跟蹤這個分叉事件,我們設定有一個被標記為紅色的、來自加拿大的區塊,還有一個被標記為綠色的、來自澳大利亞的區塊。

假設有這樣一種情況,一個在加拿大的礦工發現了「紅色」區塊的工作量證明解,在「藍色」的父區塊上延長了塊鏈。幾乎同一時刻,一個澳大利亞的礦工找到了「綠色」區塊的解,也延長了「藍色」區塊。那麼現在我們就有了兩個區塊:一個是源於加拿大的「紅色」區塊;另一個是源於澳大利亞的「綠色」。這兩個區塊都是有效的,均包含有效的工作量證明解並延長同一個父區塊。這個兩個區塊可能包含了幾乎相同的交易,只是在交易的排序上有些許不同。

比特幣網路中鄰近(網路拓撲上的鄰近,而非地理上的)加拿大的節點會首先收到「紅色」區塊,並建立一個最大累計難度的區塊,「紅色」區塊為這個鏈的最後一個區塊(藍色-紅色),同時忽略晚一些到達的「綠色」區塊。相比之下,離澳大利亞更近的節點會判定「綠色」區塊勝出,並以它為最後一個區塊來延長區塊鏈(藍色-綠色),忽略晚幾秒到達的「紅色」區塊。那些首先收到「紅色」區塊的節點,會即刻以這個區塊為父區塊來產生新的候選區塊,並嘗試尋找這個候選區塊的工作量證明解。同樣地,接受「綠色」區塊的節點會以這個區塊為鏈的頂點開始生成新塊,延長這個鏈。

分叉問題幾乎總是在一個區塊內就被解決了。網路中的一部分算力專注於「紅色」區塊為父區塊,在其之上建立新的區塊;另一部分算力則專注在「綠色」區塊上。即便算力在這兩個陣營中平均分配,也總有一個陣營搶在另一個陣營前發現工作量證明解並將其傳播出去。在這個例子中我們可以打個比方,假如工作在「綠色」區塊上的礦工找到了一個「粉色」區塊延長了區塊鏈(藍色-綠色-粉色),他們會立刻傳播這個新區塊,整個網路會都會認為這個區塊是有效的,如上圖所示。

所有在上一輪選擇「綠色」區塊為勝出者的節點會直接將這條鏈延長一個區塊。然而,那些選擇「紅色」區塊為勝出者的節點現在會看到兩個鏈: 「藍色-綠色-粉色」和「藍色-紅色」。 如上圖所示,這些節點會根據結果將 「藍色-綠色-粉色」 這條鏈設置為主鏈,將 「藍色-紅色」 這條鏈設置為備用鏈。 這些節點接納了新的更長的鏈,被迫改變了原有對區塊鏈的觀點,這就叫做鏈的重新共識 。因為「紅」區塊做為父區塊已經不在最長鏈上,導致了他們的候選區塊已經成為了「孤塊」,所以現在任何原本想要在「藍色-紅色」鏈上延長區塊鏈的礦工都會停下來。全網將 「藍色-綠色-粉色」 這條鏈識別為主鏈,「粉色」區塊為這條鏈的最後一個區塊。全部礦工立刻將他們產生的候選區塊的父區塊切換為「粉色」,來延長「藍色-綠色-粉色」這條鏈。

從理論上來說,兩個區塊的分叉是有可能的,這種情況發生在因先前分叉而相互對立起來的礦工,又幾乎同時發現了兩個不同區塊的解。然而,這種情況發生的幾率是很低的。單區塊分叉每周都會發生,而雙塊分叉則非常罕見。

比特幣將區塊間隔設計為10分鍾,是在更快速的交易確認和更低的分叉概率間作出的妥協。更短的區塊產生間隔會讓交易清算更快地完成,也會導致更加頻繁地區塊鏈分叉。與之相對地,更長的間隔會減少分叉數量,卻會導致更長的清算時間。

熱點內容
螞蟻礦池產量 發布:2025-07-09 18:58:14 瀏覽:184
比特幣私鑰與公鑰 發布:2025-07-09 18:50:28 瀏覽:12
幣圈推單的大神 發布:2025-07-09 18:30:48 瀏覽:789
區塊鏈認證測試 發布:2025-07-09 18:30:13 瀏覽:982
比特幣玩波段 發布:2025-07-09 18:23:24 瀏覽:614
菲律賓區塊鏈博彩 發布:2025-07-09 18:16:16 瀏覽:766
區塊鏈有哪些應用領域 發布:2025-07-09 18:16:13 瀏覽:744
btc哪個礦池收益高6 發布:2025-07-09 17:56:17 瀏覽:467
怎麼做區塊鏈節點 發布:2025-07-09 17:52:21 瀏覽:793
eth鳳凰礦機 發布:2025-07-09 17:28:04 瀏覽:299