比特幣下次算力難度
A. 比特大陸究竟能不能、會不會發動51%算力攻擊
在比特幣世界中,算力的集中化與分散化一直是討論的焦點。隨著比特大陸的崛起,關於其是否有可能或是否會發動51%算力攻擊的問題,引發了不少關注。
比特大陸,以其巨大的礦機銷售量和市場佔有率,成為了算力領域的巨無霸。2017年,比特大陸的總收入達到了25億美元,其中九成來自礦機銷售。這一巨大收入的積累,不僅反映出比特大陸在挖礦行業的影響力,也引發了對51%算力攻擊可能性的探討。51%算力攻擊,意味著攻擊者掌握全網51%的算力,可以對區塊鏈進行修改,甚至重寫歷史。然而,隨著比特大陸算力的下降和市場環境的轉變,其發動51%算力攻擊的現實性受到質疑。
首先,從比特大陸自身的情況來看,其算力已經從41%降至33%,這表明其在市場中的影響力正在減弱。同時,隨著競爭對手7nm礦機的上市和比特幣價格的波動,全網算力難度上升,市場進入寒冬期。盡管比特大陸仍然在挖BCH,其算力也可能因此大漲,甚至可能達到51%算力。然而,這種可能性並非沒有門檻。發動51%算力攻擊不僅需要掌握全網51%的算力,還需要持有相當數量的比特幣,且攻擊鏈必須比原鏈多出兩個區塊,才能確保成功。這種復雜性使得攻擊行動既不簡單也不劃算。
其次,比特大陸的態度和策略也影響著其發動51%算力攻擊的可能性。吳忌寒多次強調,比特大陸並不打算將BCH切換為BTC網路,同時強調客戶有權選擇是否將算力指向比特大陸的礦池,這種受客戶監督的模式使得比特大陸在實際操作中難以進行惡意活動。此外,從經濟角度來看,發動51%算力攻擊並不劃算。一旦比特幣系統被攻破,比特幣的價值將大幅下跌,比特大陸持有的比特幣也難以從中獲利。
最後,從比特幣系統本身的設計來看,即使51%算力攻擊成功,系統也不會完全受制於攻擊者。攻擊者只能更改自己的交易信息,拿回付出的錢。社區可以通過發布補丁和多次確認來防止雙花,確保系統安全。比特幣系統走到今天,牽涉多方利益,沒有人願意看到其被摧毀。
綜上所述,盡管比特大陸擁有強大的算力,但發動51%算力攻擊的現實性受到多方面因素的限制。比特幣世界追求的是去中心化和分散化的算力分布,這不僅是技術發展的趨勢,也是保障系統安全和穩定性的關鍵。未來,隨著7nm礦機的退出市場和晶元巨頭的加入,比特大陸的王冠將面臨更大的挑戰。無論比特大陸是否會發起51%算力攻擊,其對比特幣行業的影響已不容忽視。比特幣永不會死亡,其生命力在於不斷演進的創新和技術發展。
B. 比特幣挖礦 個人電腦一天能挖多少
一天挖不了,需要2000年。
比特幣的全球統一計算難度是2621404453(預計兩天之後變化),一個2.5GHz的CPU,需要2000多年才能算出一個比特幣。
顯卡「挖礦」要讓顯卡長時間滿載,功耗會相當高,電費開支也會越來越高。國內外有不少專業礦場開在水電站等電費極其低廉的地區,而更多的用戶只能在家裡或普通礦場內挖礦,電費自然不便宜。甚至雲南某小區有人進行瘋狂挖礦導致小區大面積跳閘,變壓器被燒毀的案例。
(2)比特幣下次算力難度擴展閱讀:
比特幣網路通過「挖礦」來生成新的比特幣。所謂「挖礦」實質上是用計算機解決一項復雜的數學問題,來保證比特幣網路分布式記賬系統的一致性。
比特幣網路會自動調整數學問題的難度,讓整個網路約每10分鍾得到一個合格答案。隨後比特幣網路會新生成一定量的比特幣作為區塊獎勵,獎勵獲得答案的人。
2009年比特幣誕生的時候,區塊獎勵是50個比特幣。誕生10分鍾後,第一批50個比特幣生成了,而此時的貨幣總量就是50。隨後比特幣就以約每10分鍾50個的速度增長。當總量達到1050萬時(2100萬的50%),區塊獎勵減半為25個。
當總量達到1575萬(新產出525萬,即1050的50%)時,區塊獎勵再減半為12.5個。該貨幣系統曾在4年內只有不超過1050萬個,之後的總數量將被永久限制在約2100萬個。
C. 姣旂壒甯佺幇鍦ㄧ殑鎸栫熆鎴愭湰鏄澶氬皯鎬庝箞璁$畻
濡傛灉璇寸熆鏈24灝忔椂閮藉湪宸ヤ綔錛岃佹寲1涓狟TC錛岄偅涔堝氨瑕佹湁17.128P鐨勭畻鍔涖傚姞榛戣壊涓鍙拌殏鋩丼9 鏄13.5T鐨勭畻鍔涖傞偅涔堜箙闇瑕1300鍙皊9錛岃繖浜涚熆鏈24灝忔椂鍙浠ユ寲1涓狟TC錛屽傛灉鏀圭寽鍦嗘槸涓鍙皊9宸ヤ綔24灝忔椂錛岄偅涔堜箙闇瑕1.35*24=32.4搴︾數*1300鍙=42120搴︾數*0.6鍏冧竴搴=25727錛屽氨鐩鍓嶇殑闅懼害鏉ョ湅鐨勮瘽錛岄渶瑕佹嫢鏈17.128P鐨勭畻鍔涙墠鑳芥寲涓涓甯併
鎴戜滑閫氳繃浠ヤ笂鏍稿屽叧浜庢瘮鐗瑰竵鐜板湪鐨勬寲鐭挎垚鏈鏄澶氬皯鎬庝箞璁$畻鍐呭逛粙緇嶅悗,鐩鎬俊鍏嗗渾澶у朵細瀵規瘮鐗瑰竵鐜板湪鐨勬寲鐭挎垚鏈鏄澶氬皯鎬庝箞璁$畻鏈変竴瀹氱殑浜嗚В,鏇村笇鏈涘彲浠ュ逛綘鏈夋墍甯鍔┿
D. 比特幣挖礦的難度和算力
難度是對挖礦困難程度的度量,即指:計算符合給定目標的一個HASH值的困難程度。
difficulty = difficulty_1_target / current_target
difficulty_1_target 的長度為256bit, 前32位為0, 後面全部為1 ,一般顯示為HASH值:, difficulty_1_target 表示btc網路最初的目標HASH。 current_target 是當前塊的目標HASH,先經過壓縮然後存儲在區塊中,區塊的HASH值必須小於給定的目標HASH, 區塊才成立。
例如:如果區塊中存儲的壓縮目標HASH為 0x1b0404cb , 那麼未經壓縮的十六進制HASH為
所以,目標HASH為0x1b0404cb時, 難度為:
比特幣的挖礦的過程其實是通過隨機的hash碰撞,找到一個解 nonce ,使得 塊hash 小於 目標HASH 值。 而一個礦機每秒鍾能做多少次hash碰撞, 就是其「算力」的代表, 單位寫成 hash/s 或者 H/s
算力單位:
比特幣系統的難度是動態調整的, 每挖 2016 個塊便會做出一次調整, 調整的依據是前面2016個塊的出塊時間, 如果前一個周期平均出塊時間小於10分鍾,便會加大難度, 大於10分鍾,則減小難度,目的是為了保證系統穩定的每過 10分鍾 產出一個塊,所以難度調整的時間大概是2周(2016 * 10 分鍾)
全網算力是btc網路中參與競爭挖礦的所有礦機的算力總和。當前難度周期全網算力會影響下一個周期的難度調整, 如果全網算力增加,挖礦難度增大,單台礦機固定時間的產出就會減少。目前全網算力大概是24.42EH/s, 一台螞蟻S9礦機的算力大概是14TH/s
那麼, 已知當前全網算力,下一個周期難度將如何調整呢?
根據公式:
因為出塊時間要穩定在10分鍾, 也就是600s:
那麼,在3.46e+12的難度下, 一台算力為14TH/s的礦機平均要花多長時間才能出一個塊呢?
根據公式:
有:
結果大概是12270天
E. 姣旂壒甯佸叏緗戠畻鍔涢艱繎 100E 鍀滅畻鍔涗笌浠鋒牸銆佸噺鍗娿佸畨鍏ㄦф湁浣曞叧緋伙紵
鍦ㄥ姞瀵嗚揣甯佷笘鐣岄噷錛屾瘮鐗瑰竵鍏ㄧ綉綆楀姏鐨勫彉鍔ㄦ繪槸寮曚漢鍏蟲敞銆傚備粖錛屼漢浠鐑璁鐨勭劍鐐瑰凡鎺ヨ繎100浜誇嚎錛100 EH/s錛夊ぇ鍏籌紝榪欎釜閲岀▼紕戝紡鐨勬暟鎹鑳屽悗錛岄殣鈃忕潃鍝浜涘ゥ縐橈紵璁╂垜浠涓璧鋒帰緔錛岀畻鍔涖佷環鏍箋佸噺鍗婂拰瀹夊叏鎬т箣闂村井濡欑殑鍏崇郴銆
涓銆佹瘮鐗瑰竵鍏ㄧ綉綆楀姏錛氭牳蹇冩傚康瑙f瀽
姣旂壒甯佸叏緗戠畻鍔涳紝瀹炶川涓婃槸緗戠粶涓鎵鏈夌熆宸ユ寲鐭胯懼囩殑榪愮畻鑳藉姏鎬誨拰錛屽畠琛¢噺浜嗘瘮鐗瑰竵緗戠粶澶勭悊浜ゆ槗鐨勮兘鍔涖100 EH/s鎰忓懗鐫姣忕掕兘瀹屾垚100涓囦嚎嬈″搱甯岃繍綆楋紝鎹㈢畻鎴愭櫘閫氬崟浣嶏紝鍗10鐨20嬈℃柟嬈°
浜屻佸備綍璺熻釜鍏ㄧ綉綆楀姏錛
鏌ョ湅姣旂壒甯佸叏緗戠畻鍔涳紝閫氬父鍦ㄥ尯鍧楅摼嫻忚堝櫒涓婏紝濡俀KL123.COM鍜孊LOCKCHAIN.COM錛岄兘鎻愪緵浜嗗疄鏃舵暟鎹銆備絾闇瑕佹敞鎰忕殑鏄錛屾祻瑙堝櫒涓婃樉紺虹殑綆楀姏騫墮潪瀹炴椂鏁版嵁錛岃屾槸鍩轟簬闅懼害鍜屽嚭鍧楁椂闂寸殑浼扮畻錛屼笖鍙楀埌騫歌繍鍊肩殑褰卞搷錛屾墍浠ュ緩璁鍏蟲敞涓冩棩騫沖潎綆楀姏錛屼互鍑忓皯闅忔満娉㈠姩鐨勫獎鍝嶃
涓夈佺畻鍔涗笌鍑忓崐鍛ㄦ湡錛氭彁鍓嶉勮
姣旂壒甯佹瘡21涓囦釜鍖哄潡錛屽栧姳浼氬噺鍗婁竴嬈°傚叏緗戠畻鍔涚殑涓婂崌鍙鑳藉艱嚧鎸栫熆闅懼害璋冩暣鐨勬粸鍚庯紝浣垮緱鍑忓崐鏃墮棿鎻愬墠銆傝繎鏈燂紝鐢變簬綆楀姏嬋澧烇紝鍑忓崐鏃墮棿棰勬祴宸叉湁鎵鎻愬墠銆
鍥涖佸畨鍏ㄧ殑璇瑙o細綆楀姏涓庣綉緇滃畨鍏
璁稿氫漢璇璁や負綆楀姏瓚婇珮錛岀綉緇滆秺瀹夊叏銆傚疄闄呬笂錛屾瘮鐗瑰竵鐨勫畨鍏ㄦу彇鍐充簬51%鏀誨嚮鐨勬垚鏈錛岃岄潪鍗曠函鐨勭畻鍔涖傚叏緗戠畻鍔涙彁鍗囨彁楂樹簡鏀誨嚮闂ㄦ涳紝浣嗗崟浣嶇畻鍔涙垚鏈涔熸槸鍐沖畾鍥犵礌涔嬩竴銆
浜斻佷環鏍兼嘗鍔錛氱畻鍔涗笌甯佷環鐨勪簰鍔
綆楀姏涓庡竵浠峰苟闈炵畝鍗曠殑鍥犳灉鍏崇郴銆傚竵浠蜂笂娑ㄥ惛寮曟洿澶氱熆宸ユ姇鍏ワ紝瀵艱嚧綆楀姏涓婂崌銆傜劧鑰岋紝浠鋒牸鐨勫喅瀹氬洜緔犳洿涓哄嶆潅錛屼緵闇鍏崇郴鍜屾垚鏈閮借搗鐫鍏抽敭浣滅敤錛屾e傜瑧鏉ヨ佸笀鎵璦錛屾垚鏈鍦ㄦ煇縐嶇▼搴︿笂鏀鎾戜簡浠鋒牸銆
緇撹猴細鍏抽敭鐐瑰洖欏
- 鍏蟲敞涓冩棩騫沖潎綆楀姏鑰岄潪鏃ュ鉤鍧囷紝浠ュ噺灝戦殢鏈烘у獎鍝嶃
- 綆楀姏鎻愬崌鍙鑳藉姞閫熷噺鍗婃椂闂寸殑鍒版潵錛屼絾涓嶇洿鎺ュ獎鍝嶅畨鍏ㄦс
- 綆楀姏涓嶇洿鎺ュ獎鍝嶅竵浠鳳紝浠鋒牸鍙椾緵闇鍜屾垚鏈鍙岄噸褰卞搷銆
姣旂壒甯佺殑涓栫晫鍏呮弧浜嗗嶆潅鎬э紝浣嗙悊瑙h繖浜涘熀鏈姒傚康錛屾湁鍔╀簬鎴戜滑鏇村ソ鍦版妸鎻″競鍦哄姩鎬併傚笇鏈涜繖涓瑙f瀽鑳戒負浣犺В寮姣旂壒甯佸叏緗戠畻鍔涚殑璋滃洟錛岃╂垜浠涓鍚岃佽瘉鍔犲瘑璐у竵棰嗗煙鐨勯潻鏂頒笌鍙樿縼銆
F. 比特幣多久調整一次難度
每14天左右。比特幣大約每10分鍾挖出一個塊,每挖出2016個塊調整一次,正常情況下,每14天左右會調整一次難度,挖礦的難度是根據之前一個周期的比特幣全網算力來調整,所以難度和全網算力是相關的,時間上有一定程度的滯後。
G. 什麼是比特幣挖礦難度如何調整原理是什麼
比特幣挖礦難度(Difficulty),是對挖礦困難程度的度量,挖礦難度越大,挖出區塊就越困難。目標值(Target)與挖礦難度成反比。難度越高,目標值越小。而難度目標是目標值通過轉化得到,是一個只有 4 個位元組的欄位(為了便於理解,本文將難度目標等同目標值處理)。比特幣系統正是通過調整區塊頭中難度目標來控制挖出區塊所需平均時間的。
目標值是個長度為 256 比特的字元串,換句話說目標值約有 2^256 種可能的取值。調整難度目標就是調整目標值在整個輸出空間的佔比。
舉例說明:挖礦就如射擊,所有射出去的子彈都會落在一個很大的靶子上。難度目標就是這個大靶子上圈出一個范圍,這個范圍越小,被射中的難度就越高。調節難度目標,就是調節這個圈在整個靶子上的佔比。
挖礦算力增大,單位時間射擊的次數就越多,目標范圍被射中所需的時間就越短。反之,挖礦算力減小,目標范圍被擊中所需的時間就越長。而比特幣系統追求的平均出塊時間為 10 分鍾,這時候就需要調整難度目標來實現。
02 如何調整難度目標?
比特幣系統是怎樣調整難度目標的呢?在《白話區塊鏈入門 080 | 數說比特幣,了解 比特幣 必須知道這 10 個數字》一文中,我們介紹了比特幣系統每過 2016 區塊(大約為 14 天時間),會自動調整一次難度目標。所有區塊高度為 2016 整數倍的區塊,系統就會自動調整難度目標。如果上一個難度目標調整周期(也就是之前 2016 個區塊),平均出塊時間大於 10 分鍾,說明挖礦難度偏高,需要降低挖礦難度,增大難度目標(准確地說是目標值);反之,前一個難度目標調整周期,平均出塊時間小於 10 分鍾,說明挖礦難度偏低,需要縮小難度目標。
03 難度目標的可調范圍
比特幣系統設定,難度目標上調和下調的范圍都有 4 倍的限制。舉例說明:假設上一個難度目標調整周期內的 2016 個區塊,由於算力暴漲,只用 7 天就全部挖出來了,通過難度目標調整,將難度目標縮小一倍,可以將平均出塊時間維持在 10 分鍾左右,但如果算力暴漲,前 2016 個區塊全部挖出只用了 1 天,那麼難度目標最小隻能調整為原來的四分之一。
04 總結
比特幣的算力是持續波動的,比特幣系統通過難度目標的調整,使得平均出塊時間維持在 10 分鍾左右。難度目標和挖礦難度成反比,挖礦難度越大,難度目標越小。當區塊高度為 2016 的整數倍時,比特幣系統就會在該區塊上,自動調整難度目標。如果上一個難度目標調整周期內,平均出塊時間超過 10 分鍾,那麼降低挖礦難度,增大難度目標;反之則提高挖礦難度,減小難度目標。難度目標上調和下調的范圍都有 4 倍的限制。
比特幣每 2016 個區塊(大約 14 天)調整一次挖礦難度,相比於 BCH 每個區塊都調整(大約 10 分鍾調整一次),有明顯的滯後性。你認為是哪種調整方式更合理呢?為什麼呢?歡迎在留言區分享你的觀點。