Ⅰ 區塊鏈中的硬分叉,以太經典ETC是什麼意思
以太經典(ETC)簡史
以太經典始於一個不幸的事件。
2016年5月,去中心化自治組織(DAO)舉行了一次代幣銷售,目標是建立一個基於區塊鏈的風險投資,以資助Ethereum生態系統內未來的去中心化應用(DApps)。
基本上,DAO是一個去中心化方式運作的復雜的智能合約–當條件滿足時自動在多方之間執行任務的計算機代碼。
盡管其有著雄心勃勃的目標以及成功的代幣銷售,DAO的代碼卻有一個重大漏洞,使得攻擊者可以從去中心化組織中竊取ETH。
攻擊者在2016年6月利用這一漏洞,引發了臭名昭著的DAO黑客事件,惡意竊取了大約價值5000萬美元的ETH。
毋庸置疑,DAO黑客事件曾震驚了Ethereum社區,也使得ETH價格從20美元跌至13美元。
在DAO黑客事件發生後,Ethereum社區不得不從三個選項中選擇。
什麼都不做,努力承受攻擊帶來的後果;
啟動軟分叉,收回資金;
部署一個硬分叉來恢復丟失的ETH。
軟分叉和硬分叉都是重大的網路升級。然而,軟分叉允許未升級的用戶和升級後的用戶相互交流,而硬分叉則不能向後兼容以前的版本。
由於開發人員意識到部署軟分叉會使網路受到分布式拒絕服務(DDoS)攻擊,Ethereum社區決定發起硬分叉,以恢復在DAO黑客攻擊中損失的資金。
雖然這一方案得到了大多數人的支持,但Ethereum社區中的一小部分人卻表示反對,他們認為 「代碼即律法」,區塊鏈網路應該是不可改變的。
由於雙方未能在解決方案上達成一致,最終導致了Ethereum區塊鏈的分裂。
那些試圖找回丟失的ETH的人選擇了硬分叉,開啟了我們今天所熟知的Ethereum(ETH)區塊鏈,而另一群人則留在了最初的Ethereum Classic(ETC)鏈上。
以太經典解決了那些問題?
以太經典(ETC)是一個允許開發者部署智能合約和DApps的區塊鏈平台。
雖然這個功能與Ethereum(ETH)的功能相同,但ETC區塊鏈有兩個主要區別。
首先,Ethereum Classic社區反對篡改分布式賬本,支持「區塊鏈網路不能也不該被修改」的觀點。
其次,雖然ETH總供應量沒有硬性上限,但以太經典採用恆定供應的貨幣政策,最多允許創建2.3億個ETC。
作為一個加分項,以太經典在去年啟動了Atlantis硬分叉,以增加與Ethereum的交互性,並通過zk-SNARKS提高交易的隱私保護程度。
以太經典ETC推薦的交易平台:火幣、OKEX、AAX等。
Ⅱ 以太坊分叉是什麼意思
君士坦丁堡,以太坊的下一次全系統升級,即將到達您附近的一個節點。
君士坦丁堡包括五個不同的以太坊改進建議(EIPs),已經於8月31日完成。一旦在以太坊上發布,這些提案將通過一系列新的向後兼容的升級永久地改變區塊鏈。
這意味著運行以太坊軟體的計算機網路的節點必須與整個系統一起更新,或者繼續作為單獨的區塊鏈實體運行。
系統范圍的升級在過去引發了相當多的戲劇性事件,更正式地說法應該是「硬分叉」。最值得注意的是,在一部分用戶不同意這種變化的情況下,這可能導致同一區塊鏈的兩個不同版本同時運行。目前想要投資以太坊的朋友,可以到比特網交易所進行交易。
Ⅲ 以太坊分叉是遵循什麼推理邏輯
以太霧EthereumFog,簡稱:ETF,是以太坊Ethereum的分叉鏈,是為了解決以太坊所缺乏的分布式存儲和分布式計算能力而生,後期會切換為POW+POS混合挖礦。原生Coin為ETF。
接下去,簡單闡述下之所以做出「分叉概念幣」的推理邏輯:
1、利益的需求。針對這一點,內參從來不掩飾。現在的分叉,或多或少都夾雜著背後利益團體的訴求。追求利益,追求高效的資金投資回報率是永恆的主題。
中國有句古話叫:一鼓作氣,再而衰,三而竭。比特幣經過多次的分叉,價格被推上新高,已經成為很多人「買不起」的標的,並且由於單價的高昂,使得分叉帶來的糖果越來越沒吸引力,用句玩笑話就是:比特幣稍微一哆嗦,也許你心心念念的糖果錢就跌進去了。
基於此,主力何嘗不明白。那麼,就順理成章轉而向其他主鏈尋求分叉利益。以太坊作為全球市值第二大數字貨幣,無論從規模還是群眾基礎,都是最佳的選擇對象。
當然,以太之後,還會有別的分叉主鏈被瞄上,我們不妨拭目以待。
2、進化的需求。這一點其實應該放在首位,但是在投機氛圍下,反而成了容易被忽視的點。
我們不得不承認,現在的比特幣也好,以太坊也罷。要想真正大規模商用,還存在諸多的問題,而且每個問題都是一塊硬骨頭。一隻「貓」給以太坊造成了不小的麻煩,有計劃說,一些團隊正在依葫蘆畫瓢,開發「狗、兔子」等以太坊鏈上養成游戲。以太坊對於技術(擴展性、處理能力、並發量、延時性等)的需求已經迫在眉睫。
而基於共識的分叉,是受大家歡迎的,也是必需的。
一切未完待續,大幕一旦拉開,分叉潮將滾滾而來。
Ⅳ 以太坊技術系列-以太坊共識機制
區塊鏈的特點之一是去中心化。也就是節點會分布在各個地方組成分布式系統。各個節點需要對1個問題達成一致,理想情況下,只需要同步狀態即可。
如上圖所示 B節點將a=1=> a=2的狀態同步給 ACDE四個節點,這時系統中狀態變為a=2, 但如果其中有惡意節點 AE 收到通知後把a=1=>a=3修改為錯誤的節點,這個時候大家的狀態就不一致了,此時需要共識機制使系統中得到1個唯一正確的狀態。
如上面說到分布式系統存在惡意節點導致系統中狀態不一致的情況有1個比較著名的虛擬問題-拜占庭將軍問題。
拜占庭將軍問題是指,N個將軍去攻打一座城堡,如果大於一定數量的將軍同時進攻則可以攻打成功,如果小於則進攻失敗。將軍中可能存在叛徒。
這個時候有2種情況
1.如果2個叛徒都在BCDE中,那麼共識演算法需要讓其餘2個將軍聽從A的正確決策進攻城堡。
2.如果A是1個叛徒,共識演算法需要讓BCDE中剩餘的3個忠誠將軍保持一致。
這個問題有很多種解法,大家有興趣可以自行查閱(推薦學習PBFT),我們重點來看看以太坊中目前正在使用的Nakamoto 共識和將要使用的 Casper Friendly Finality Gadget共識是如何解決拜占庭將軍問題的。
說到Nakamoto共識和Casper Friendly Finality Gadget共識可能大家不太熟悉,但他們的部分組成應該都比較熟悉-POW(工作量證明)和POS(權益證明)。
POW或POS稱之為Sybil抗性機制,為什麼需要Sybil抗性機制呢,剛剛我們說到拜占庭將軍問題,應該很容易看出惡意節點越多,達成正確共識的難度也就越大,Sybil攻擊就是指1個攻擊者可以偽裝出大量節點來進行攻擊,Sybil抗性是指抵禦這種攻擊能力。
POW通過讓礦工或驗證者投入算力,POS通過讓驗證者質押以太坊,如果攻擊者要偽裝多個節點攻擊則必將投入大量的算力或資產,會導致攻擊成本高於收益。在以太坊中保障的安全性是除非攻擊者拿到整個系統51%算力或資產否則不可能進攻成功。
在解決完Sybil攻擊後,通過選取系統中的最長鏈作為大家達成共識的鏈。
很多人平時為了簡化將pow和pos認為是共識機制,這不夠准確,但也說明了其重要作用,我們接下來分析pow和pos。
通過hash不可逆的特性,要求各個礦工不停地計算出某個值的hash符合某一特徵,比如前多少位是000000,由於這個過程只能依賴不停的試錯計算hash,所以是工作量證明。計算完成後其他節點驗證的值符合hash特徵非常容易驗證。驗證通過則成為成為合法區塊(不一定是共識區塊,需要在最長鏈中)。
以太坊中的挖礦演算法用到2個數據集,1個小數據集cache,1個大數據集DAG。這2個數據集會隨著區塊鏈中區塊增多慢慢變大,初始大小cache為16M DAG為1G。
我們先來看這2個數據集的生成過程
cache生成規則為有1個種子隨機數seed,cache中第1個元素對seed取hash,後面數組中每個元素都是前1個元素取hash獲得。
DAG生成規則為 找到cache中對應的元素後 根據元素中的值計算出下次要尋找的下標,循環256次後獲得cache中最終需要的元素值進行hash計算得到DAG中元素的值。
然後我們再看看礦工如何進行挖礦以及輕節點如何驗證
礦工挖礦的過程為,選擇Nonce值映射到DAG中的1個item,通過item中的值計算出下次要找的下標,循環64次,得到最終item,將item中的值hash計算得到結果,結果和target比較,符合條件
則證明挖到區塊,如果不符合則更換nonce繼續挖礦。礦工在挖礦過程中需要將1G的DAG讀取到內存中。
輕節點驗證過程和礦工挖礦過程基本一致,
將塊頭裡面的Nonce值映射到DAG中的1個item,然後通過cache數組計算出該item的值,通過item中的值計算出下次要找的下標,循環64次,得到最終item,將item中的值hash計算得到結果,結果和target比較,符合條件則驗證通過。輕節點在驗證過程中不需要將1G的DAG讀取到內存中。每次用到DAG的item值都使用cache進行計算。
以太坊為什麼需要這2個不同大小的數組進行輔助hash運算呢,直接進行hash運算會有什麼問題?
如果只是進行重復計算會導致挖礦設備專業化,減少去中心化程度。因為我們日常使用的計算機內存和計算力是都需要的,如果挖礦只需要hash運算,挖礦設備則會設計地擁有超高算力,但對內存可以縮小到很小甚至沒有。所以我們選用1G的大內存增加對內存訪問的頻率,增加挖礦設備對內存訪問需求,從而更接近於我們日常使用的計算機。
我們看看在Nakamoto共識是如何解決拜占庭將軍問題的。首先看看區塊鏈中的拜占庭將軍問題是什麼?
區塊鏈中需要達成一致的是哪條鏈為主鏈,雖然採用了最長鏈原則,但由於分叉問題,還是會帶來拜占庭將軍問題。
本來以太坊pow目標是抵抗51%以下的攻擊,但如上圖如果惡意節點沿著自己挖出的區塊不斷挖礦,由於主鏈上有分叉存在,惡意節點不需要達到51%算力就可以超過主鏈進而成為新的主鏈,為此以太坊使用了ghost協議給上圖中的B1和C1也分配出塊獎勵,盡快合並到主鏈中,這樣主鏈長度(按照合並後的總長度算,長度只是抽象概念,以太坊中按照區塊權重累加)還是大於惡意節點自己挖礦的。
網路中的用戶通過質押一定數量的以太坊成為驗證者。每次系統從這些驗證者從隨機選擇出區塊創建者,其餘驗證者去驗證創建出的區塊是否合法。驗證者會獲得出塊獎勵,沒有被選中的區塊不進行驗證則會被扣除一定質押幣,如果進行錯誤驗證則會被扣除全部質押幣。
如上圖,權益證明在每隔一定區塊的地方設置一個檢查點,對前面的區塊進行驗證,2/3驗證者通過則驗證通過,驗證通過則該區塊所在鏈成為最長合法鏈(不能被回滾)。
我們簡化地只分析了權益證明本身,在以太坊中權益證明較為復雜的點在於和分片機制結合在一起時的運行流程,這部分會在後面單獨將分片機制的一篇文章中詳述。
本篇文章主要討論了共識機制是解決分布式系統中的拜占庭將軍問題,以及分析了以太坊中的共識機制一般包括最長鏈選擇和一種sybil抗性機制(pow或pos)。重點分析了pow和pos的流程以及設計思想。後續將開始重點討論智能合約的部分。
Ⅳ 倫敦分叉在即,以太坊離「加密一哥」還有多遠
近日,以太幾乎連續兩周走出連陽的輝煌形態,這著實為沉寂的市場添上了一把大火。究其原因,BTC與亞馬遜的曖昧糾纏似乎僅僅是整個行情的導火線,而倫敦分叉和EIP1559或許才是驅動以太忘我上漲的內核動力。
談及分叉,不少幣民開始翹首以盼,是不是ETH要生出ETCplus了?或者乾脆在以太鏈上囤U吧,說不定分叉以後就各鏈一個,豈不是直接翻倍。
幣民腦洞之大真是令人嘆為觀止,但ETH要生出ETCplus似乎也不是沒有可能,因為倫敦分叉EIP1559激發的對立矛盾愈演愈烈,社區內部存在著不少分歧與僵持。但以太坊網路預計在8月5號就能達到12,965,000區塊高度,而目前反對派還沒有重大舉動,飛出黑天鵝的概率似乎已經微乎其微?
同時筆者認為1559提案是ETH從POW走向POS共識的壓力測試,還將會是以太坊登上「加密一哥」的重要奠基。那麼,分叉和EIP1559究竟是什麼,這對以太坊網路和ETH價格又會有什麼影響,本文將會從這一次倫敦分叉簡單說起。
硬分叉與軟分叉
比特幣劈腿事件過去了近3年,主流幣圈的精力也更多地集中於生態應用層面,硬分叉和軟分叉的輝煌已經不敵昔日。但作為曾經風靡圈內的兩個概念,硬分叉和軟分叉究竟是什麼呢?這有個最抽象簡單的解釋就是:硬分叉意味著新舊版本軟體已經無法兼容,二者開始各自記賬和各自建立生態,新舊兩派分道揚鑣並建立起兩條不同的區塊鏈;軟分叉則更加溫和,新版本在舊版本的基礎上建立了更嚴格的規則,但舊版本依舊對其兼容,二者仍可共存於一條鏈上而無需對立。
當然,也可以用一個具體的例子作比方:分叉就好比環境變化,而軟體設施就好比人們的衣著。那麼軟分叉就代表氣溫升高,人們可以繼續穿著原來的棉大衣,只不過需要薅出裡面的棉花,而且新產生的衣服也無法變回原來的大衣。而硬分叉就代表陸地變海洋,人們的棉衣已經不再可用,而是需要換成聚脂泳衣。
如果非要從最廣大的普通幣民來考慮,一般軟分叉只是升級迭代部分功能,而硬分叉需要切換成另一條主網鏈,同時也意味著你能映射到等數量的新幣,例如ETC、BCH和BSV。
其中以太經典ETC便是ETH的首個硬分叉項目,而在當時差點給以太坊帶來致命性打擊。2016年6月份,基於以太坊智能合約的眾籌平台The DAO被黑客擄走價值5000萬美金的ETH,當時社區投票表決在1,920,000區塊進行硬分叉並回滾所有交易。而反對派認為這種做法違背了區塊鏈去中心化和不可篡改的精神,以至於部分礦工仍堅持在原鏈上挖礦,形成了一條不接受回滾的以太經典鏈。
倫敦分叉與EIP1559
倫敦分叉是以太坊繼柏林分叉和伊斯坦布爾分叉之後的又一次升級,其中柏林分叉已經平穩運行,因為它主要是優化以太坊主網性能,對各方的利益影響都不大。而倫敦分叉則直接導致礦工們拉幫結派,因為EIP1559將可能直接導致礦工無礦可挖。
1559提案主要是優化平抑gas的波動,防止以太坊交易者盲目「內卷」,根據網路和區塊狀態為每一筆交易設定參考性的基礎費用。而在EIP1559之前,用戶大多數情況下只能在錢包里選擇慢、中、快三種gas費,同時為了提升速度,不少用戶開始盲目加價,這就直接導致gas費相當於一個沒有任何參考的拍賣會,參拍者進行著無腦抬價的活動。
如果只是設置固定費用,或許社區反映還不會這么劇烈,EIP1559同時規定這個基礎費用收到的ETH將被直接銷毀。這意味著,如果交易者不給超出基礎費用的小費,礦工將無法獲得任何收入,尤其是交易冷清的時候。
1559支持者大多是生態層面的參與者,因為該提案可以優化用戶體驗,減少盲目支付和手續費操縱。同時手續費一大部分被銷毀,也是對通脹模式做了動態調整,或將有利於網路的長期發展。
而1559反對者則應該是礦工了,因為他們直接面臨著收益降低的問題。除了收益問題以外,1559給小費的模式依然可以存在惡性「內卷」,這意味著用戶並不能實質性降低費用,而是相當於主網向礦工收稅。
目前很多人是認為分叉新幣的可能性不是很大的,因為V神還有生態站隊都是在1559這邊,但以Flexpool和Spark Pool為代表的反對算力已經高達60%,這足夠自建一條不含EIP1559的以太新鏈。那麼不惜嚴重損害礦工短時利益的1559提案究竟有什麼意義呢?或許這和未來即將登場的ETH2.0及POS有著重大關聯。
倫敦分叉助力POS
根據ETH開發社區的相關消息,ETH2.0已經敲定了完全過渡到權益證明挖礦(PoS)的相關規范,這被認為是區塊鏈能源消耗問題的解決方案,因為這將直接導致以太坊的能源消耗為原有的萬分之一。
而倫敦分叉和EIP1559似乎是POW過渡到POS的重要壓力測試,通過這次壓力測試,引導重要生態和社區逐步往POS改革,同時利用市場行為逐步清退原有的POW挖礦,這為ETH2.0及POS的真正到來和落地掃清了一定的障礙。
而針對這一不可調和的矛盾沖突,市場在5月初通過ETC的走勢得以表達。這是因為以太坊一旦過度到POS時代,礦工認為將手中的顯卡機器拿去挖ETC能獲得更大的收益,於是市場率先反應,出現了這么一場讓普通人看不懂的大暴漲。
推開社區矛盾不談,POS演算法對幣價勢必具有更深遠的影響。因為POW首先要求礦工進行大量的前期投資,而這些投資還將隨著時間的推移被壓縮利潤,以至於不得不進行持續性的再投資。這導致大部分礦工不得不充當賣家賣出手中的幣,以至於最終挖出來的幣被分配到二級市場,而不是積累到礦工的資產負債表。
POW礦工不得不賣幣以維持經營,而POS則全然不同,因為一旦礦工將一定數量的幣投入到了質押系統,在一個總量相對恆定的ETH系統中,礦工們相當於擁有了相對永久化的收益權,同時新產生的ETH還可以直接投入礦池,無需分配到二級市場。
因此,在POS系統中,礦工們已經將一塊蛋糕瓜分,而將這塊蛋糕做大會是他們的利益共同驅動。換言之,質押、拉盤和享受高分紅將會是未來POS礦工的三大標准動作。
以太坊的「加密一哥」指日可待
從1559提案到POS,市場一致認可降費提速的重要性,當前的區塊容量和速度直接抑制了幣價的上漲,這是因為當ETH幣價上漲之時,手續費也隨之水漲船高,這讓廣大的交易者苦不堪言。另一方面也抑制了生態的建設,導致了大量生態溢出,進而也抑制ETH的需求並打壓其價格。
似乎ETH的價格已經在完全競爭市場下形成了一個動態均衡,只要價格一漲就會抑制需求,進而壓低價格。而打破這一格局的重要舉措便是降費提速,於是EIP1559和後續一系列的改革方案就肩負了這個使命。
此外,POS共識讓廣大礦工形成了利益共同體,他們不再依靠晶元等硬體來相互競爭,而是通過質押來確定份額,為增加算力只能不斷地從市場買幣。等到形成了一定的格局之後,拉高ETH的價格或將是他們不謀而合的舉動,這也就是上文提到的做大蛋糕。
不難想像,在POS和ETH2.0完全落地的時候,速度緩慢、價格高昂的比特幣將會立即處於加密貨幣的劣勢,甚至逐步落後於使用POS共識機制的其他項目。
而憑借著優良技術和蓬勃生態的以太坊,無論是在市值還是共識上都勢必成為加密領域的「一哥」。而這,也讓我們拭目以待。
Ⅵ 以太幣分叉送幣嗎
送
然而,ICO被禁之後,幣圈又興起了新的玩法——IFO。所謂IFO是指基於biteb、以太坊等主流幣種而進行的分叉貨幣發行,在這些主流幣的原有區塊鏈基礎上,按照不同規則分裂出另
根據上面的定義,IFO也就是存在預挖行為的分叉幣項目,顯然對於項目方而言,它就相當於變相的ICO,也即是說ICO的好處與弊端,IFO基本都會具備。 以太坊官方發布消息,以太坊網路將在區塊高度9,200,000進行「繆爾冰川」硬分叉。事實上我們曾多次經歷過BTC的分叉,2017年還掀起了一股分叉得糖果的浪潮。
Ⅶ 以太坊硬分叉是什麼
硬分叉是一種不支持向後兼容的軟體升級方式。通常,這些情況發生在節點以與舊節點的規則沖突的方式添加新規則時。新節點只能與運行新版本的軟體節點進行交互。結果,區塊鏈發生了分裂,生產出兩個單獨的網路:一個按照舊規則運行,一個則按照新規則運行。節點在升級後變為藍色。之前的黃色節點拒絕藍色節點的連入,而藍色的節點之間可以相互連接。因此,現在有兩個網路並行運行。他們將繼續產生區塊和交易,但不再在同一區塊鏈上工作。在區塊鏈網路達到分叉區塊之前,所有節點都具有相同的區塊鏈(並且歷史記錄仍然存在),但是這之後它們將具有不同的區塊和交易。由於存在相同的歷史記錄,因此如果您在分叉之前持有代幣,那麼您將在這兩個網路上同時獲得代幣。假設在600,000區塊高度發生分叉時,您手裡有5 BTC。您可以選擇在區塊高度到達600,001時,在原始區塊鏈上將這5個代幣花費掉,但是在新產生的區塊鏈上並不會記錄這筆在600,001區塊高度的消費。假設加密方式沒有發生變化,那麼在新的分叉網路上您的私鑰中仍然會存在這5個代幣。 以太坊硬分叉的一個案例是2016 年 6 月 17 日,the DAO 合約上出現漏洞並被攻擊者乘虛而入,導致約三百六十萬 ETH 被盜取。根據該合約的設計,這些資金需要被凍結 28 天才能成功被轉移。如果沒有採取任何措施的話,黑客會擁有 ETH 總額的 4.4%。為解決這個問題,備受爭議的 EIP 779 被提出來,其目的在於修改攻擊者的鎖定合約。如此一來,ETH 持有者便可以從 the DAO 合約上提出其 ETH。7 月 20 日,以太坊大部分成員支持實行硬分叉,然而少數社區成員持反對意見,並決定實行硬分叉,分叉後的原鏈改名為以太坊經典 (Ethereum Classic)。
Ⅷ 區塊鏈為什麼有分叉分叉會發生什麼情況
區塊鏈的分叉(fork)的形成原因可能有多種。
當兩個結點幾乎在同一個時間挖到了礦並同時發布區塊,此時就出現臨時性的的分叉(state fork),
本質上是對比特幣這個區塊鏈當前的狀態產生了意見分歧,
當人為的發起分叉攻擊(forking attack),也就是故意造成這類分叉(deliberate fork)還有一類分叉是,當比特幣的協議發生了改變的時候,軟體需要升級。而在分布式系統中不能保證所有節點同時升級軟體,假設存在部分節點未升級,會導致協議分叉(protocol fork)。對協議修改的內容的不同,又可以將分叉分為硬分叉(hard fork)和軟分叉(soft fork);
比特幣協議增加新協議,擴展新功能,未升級軟體的舊節點會不認可這些修改,會認為這些特性是非法的。這也就是對比特幣協議內容產生分歧,從而導致的分叉叫 硬分叉 。此時,就出現了新節點永遠沿著新節點產生的鏈挖礦,舊節點永遠沿著舊節點鏈挖礦,由於新節點算力足夠強,所以形成兩條永遠都在延伸且平行的鏈。只要這部分舊節點永遠不更新,則舊鏈將一直延續,可見這種分叉是持久性的。
出現hard fork後,便變成了兩條平行的鏈,也就造成了社區分裂。社區中有一部分人,會認為下面的鏈才是根正苗紅,各個鏈上的貨幣獨立。以太坊歷史上的一件大事就是硬分叉事件。以太坊稱為ETH,但目前看到的ETH已經不是最初的ETH了,以太坊在歷史上發生過硬分叉,另一個鏈稱為ETC。實際上,ETC才是以太坊設計原本的協議,而ETH是黑客攻擊ETH上一個智能合約THE DAO後,進行回滾的協議鏈(將黑客攻擊偷取的以太幣採用硬分叉方式回滾回到另一智能合約,然後退還給真正擁有者)。
分叉之初,由於兩個鏈分叉造成了互相影響,產生了很多麻煩。比如:在ETH鏈上有一筆轉賬B->C,有人便在ETC鏈上回放,將ETC鏈上的貨幣頁轉給了C(C收到兩筆錢)。後來,對兩條鏈各添加了一個chainID,將兩個鏈區分開,才使得這兩條鏈真正分開。
如果對BTC協議添加限制,使得原本合法交易在新交易中不合法,便會形成軟分叉。
當大多數節點已經更新完畢之後,舊節點認可新節點挖出的區塊,因此發布自己挖出的區塊,但新節點不認可舊結點挖出的區塊,便沿著上一個新節點發布的區塊繼續挖礦,當新節點擁有大部分算力的時候,新鏈會越來越長,從而舊節點挖出並發布的區塊一直被拋棄,無法獲得出塊獎勵,最終倒逼舊節點升級軟體,實現所有節點認可新協議並進行升級。可見,只要系統中擁有半數以上算力節點更新軟體,此類分叉不會出現永久性分叉。比特幣腳本中的P2SH就是通過軟分叉方法加進去的。
這一部分我並沒有查到太多的資料,但是在絕大多數共識協議之中我們都假設需要過半算力;
在理論上,如果掌握了50%以上的算力,就擁有了獲得記賬權的絕對優勢,可以更快地生成區塊,也擁有了篡改區塊鏈數據的權利。因此,當具有過半的算力,也就是51%都是誠實可靠的,能保證整一個區塊鏈在合法有序的進行運行。
但是為什麼選擇過半的算力,而不是過半的用戶?比特幣系統,任何人都可以加入,且創建賬戶及其簡單,只需要本地產生公私鑰對即可。只有轉賬(交易)時候,比特幣系統才能知道該賬戶的存在。這樣,黑客可以使用計算機專門生成大量公私鑰對,當其產生大量公私鑰對超過系統中一半數目,就可以獲得支配地位(女巫攻擊)。因此,比特幣系統中很巧妙的使用算力作為投票的依據。