A. 簡單解釋何為51%攻擊
你可能會下意識認為加密貨幣是安全可靠的。怎麼說呢,即使網路犯罪分子以不可思議的規律頻繁攻擊交易所和熱錢包,但底層的區塊鏈技術本身天然抗攻擊,不是嗎?
好吧,其實不然。區塊鏈容易遭受所謂的「51%攻擊」傷害。
當有一組礦工控制超過Token哈希算力(計算能力)的50%時,可能會發生51%的攻擊(也稱為「多數攻擊」)。 實際上,「51%」其實用詞不當; 一個成功的攻擊實際上僅需要50%+ 1的哈希算力。
如果一個群體可以達到如此高水平的控制,就可以通過以下方式輕易毀掉相關幣種。
不進行確認從而阻止產生新的區塊
撤消當前塊上已完成的事務
在網路上發起「雙花」
50%+ 1是確保攻擊成功所需的哈希算力。 但是,也有可能以較低的哈希算力成功進行攻擊。 安全團隊使用統計建模來表明當被控制的哈希算力達到約30%時,漏洞風險可能會開始增加。
比特幣以及其他幾個主流幣種使用工作量證明機制來驗證交易並將其廣播到區塊鏈上。
在白皮書中,比特幣的創始人中本聰簡明扼要地將這個過程概括為「一CPU,一票」:
「工作量證明「實質上是一CPU一票,最長的鏈條代表大多數判斷,因為該鏈條擁有最大量「工作量證明」投入。如果CPU算力的大多數由誠實的節點控制,誠實的鏈條將以超過其他與之競爭鏈條的速度快速生長。
您可能已經注意到上述引文中的大問題:「如果大部分CPU功率由誠實節點控制......」
當不誠實的節點數量超過誠實節點時,問題就出現了。 在這些情況下,他們可以「投票孤立」合法的礦工,確保他們自己控制最長的鏈條,從而控制整個加密貨幣。
中本聰假定,即使礦工可以控制超過50%的節點,他仍然可能「遵守規則」來保護自己的財富:
如果一個貪婪的攻擊者有能力比誠實礦工控制更多CPU算力,他將被迫進行選擇,是通過欺詐以偷回其支付的款項(譯者註:即雙重支付攻擊),還是通過(獲取)生成的新貨幣。他應當會發現,按照規則行事更加有利可圖,這樣的規則有利於他比其他聯合起來的每一個人獲取更多的新貨幣,亦優於破壞系統以及損害自己擁有財富的有效性。
不幸的是,網路犯罪分子並不完全遵循規則。 自中本聰的白皮書發布以來,已有無數的51%攻擊案例。
到目前為止,我們已經利用比特幣來說明51%的攻擊是如何發生的。
然而,雖然在技術層面上比特幣易受攻擊,但在更實際的層面上,由於三個原因,它不太可能成為這個受害者:
1、成本
比特幣網路規模巨大,想要獲得足夠用於攻擊的哈希算力,需要相當大量的資金投入。
據Crypto51稱,對比特幣進行長達一小時的黑客攻擊需要花費237,941美元。 對以太坊進行攻擊的成本同樣令人望而卻步 ——將花費74,837美元。
2、礦池
如今,最大的加密貨幣的礦池分布廣泛。
情況並非總是如此;2014年,Ghash.io大概掌握量51%的比特幣哈希算力。比特幣當時顯然遠不如現在影響大,但仍然令人擔憂。
不得不說Ghash.io賊靠譜,他們幾乎立即放棄了10%算力,並要求社區自願將自己的算力限制在40%內,以保護區塊鏈的長期完整性。
現在最大的比特幣礦池的哈希算力徘徊在20%左右。
3、NiceHash
NiceHash是世界上最大的加密貨幣挖礦算力市場。
據Crypto51估計,NiceHash可以產生的總功率不到比特幣網路總功率的百分之一。 以太坊是5%,比特幣現金是2%。 所有主流幣的百分比都保持相似的低百分比。
因此,即使是武器化的NiceHash也沒有足夠的力量對主流幣進行51%的攻擊。
當你研究較小的幣種時,事情開始發生巨大變化。
就像市值排名前十的幣種,對其發動攻擊基本都是天價,而排名再往後就不好說了。其對應的NiceHash百分比也開始增加。 也有一些較大幣種的百分比令人擔憂。 以太坊經典為82%,門羅幣79%……
2018年5月比特幣黃金遭遇51%的攻擊時,小幣種的脆弱性成為焦點。
比特黃金 ——來自2017年比特幣的硬分叉 - 當時甚至出現不到六個月。
以至於該項目的發言人愛德華·伊斯克拉爾必須告知所有可以交易比特黃金的交易所,將確認數從5個增加到50個,並手動審查大額交易是否存在可疑活動。
「持續攻擊的成本很高。 由於成本很高,攻擊者只有從虛假存款中快速獲得高價值的東西才能獲利。 像交易所這樣的場所,可以自動接受大額存款,允許用戶快速交易另一個幣種,然後自動撤離。 在清算交易資金之前,我們一直建議設置上限以防止此類攻擊,並敦促人工審查BTG的大額存款。「
在很長是一段時間,我們幾乎可以肯定的是,51%攻擊的次數會不斷增加。
但是會有一線希望嗎? 很難說目前存在的數千種山寨幣給最終用戶帶來了什麼實實在在的好處。 如果由此加密世界能圍繞一些較大的幣種進行鞏固,那麼對於該行業的長期健康來說,51%攻擊可能不是一件絕對的壞事。
B. 什麼是 51% 攻擊
51% 攻擊是對比特幣(或其他區塊鏈網路)的潛在危機,利用比特幣是用算力作為競爭條件的特點,使用算力優勢撤銷自己已經發生的交易。51%的攻擊者將擁有足夠的礦池算力從而能夠故意排除或篡改交易順序。
惡意行為者或組織掌握全網 50% 以上的哈希率,他們就能夠凌駕於網路的共識機制之上,實施雙重支付等惡意行為。成功的 51%攻擊還能允許攻擊者阻止某些或所有交易被確認(亦指:交易拒絕服務),亦可以阻止一些或所有其他礦工繼續進行采礦,而導致礦業壟斷。
另一方面,多數攻擊是不允許攻擊者阻止事務廣播,也不允許反向來自其他用戶的事務。另外,改變區塊獎金,憑空創造幣或竊取從未屬於攻擊者的幣也是非常不可能的。
51% 的攻擊有多大可能?
區塊鏈網路是由非中心化及分布式節點網路來維護的,並要求所有參與者必須達成共識的過程中合作工作。這亦是區塊鏈網路為什麼高度安全的主要原因之一。網路越大防禦力越好,保護及防禦攻擊和數據損壞能力越高級。
C. 區塊鏈如何被攻擊(區塊鏈被攻擊達到多少才能被篡改記錄)
區塊鏈科普指南:什麼是51%攻擊?在加密世界中,當一個人或一群人控制了50%+1的網路單元時,就會發生51%的攻擊。沒有人說50%+1單位,所以簡稱為51%攻擊。
當一個團隊設法控制鏈接到一個特定區塊鏈的網路的大部分,它被認為對它有絕對的權力控制整個區塊鏈,這意味著交易的完整性和安全性不能再得到保證。
區塊鏈如何抵禦51%的攻擊?
加密貨幣有不同的方式可以保護自己免受51%的攻擊。毫無疑問,最為人所知的是,全球擁有龐大的礦商網路,其中包括數萬甚至數十萬人,這使得控制這一網路極為昂貴。
在這種情況下,區塊鏈通常是自動保護的,因為接管加密貨幣所需的資源要重要得多,而且一旦網路得到控制,攻擊不一定涵蓋費用。
不需要太多的細節,我們只想說,可以添加額外的安全機制,目的是使這種攻擊不可能發生。這可以通過使用一個具有多個控制項的系統來實現,這有時會將這種攻擊的需求從計算能力的51%提高到75%、90%,有時甚至是99%。
在其他情況下,一些區塊鏈已經選擇授權交易驗證的有信譽的集中參與者,以避免這種攻擊。然而,一些純粹主義者不喜歡這個想法,因為它違背了區塊鏈的宗旨,即分散交易。
我們真的應該擔心51%的攻擊嗎?
比特幣自誕生以來從未遭受過51%的攻擊,也不太可能遭受這樣的攻擊。這個網路如此龐大,以至於做這件事的成本會高得驚人。
此外,當一個區塊鏈正在經歷一個51%的攻擊變得清晰時,幾乎可以肯定的是,所有令牌持有者將決定立即出售他們的資產,這將導致資產的價值損失。所以,從數學上來說,一群人試圖控制一種加密貨幣是沒有多大意義的。
為了了解實施51%攻擊所需的資源,有一個不錯的小網站叫做Crypto51,它可以讓你找出實施這種攻擊所需的散列速率和每小時的美元成本。
對51%攻擊的結論
我們希望您現在有一個更好的理解的概念,51%的攻擊和他們如何工作。正如你所看到的,他們需要巨大的資源,可能仍然不值得麻煩。
51%的攻擊,理論上,是工作證明(PoW)系統的一個主要問題。然而,在實踐中,一旦一個區塊鏈已經足夠發達,風險接近於零。
對於新的或小盤數字貨幣,再一次,沒有真正的利益為黑客進行這樣的攻擊,因為加密貨幣的價格可以下降到0非常快,防止該組收獲經濟利益。
區塊鏈會被黑客攻擊嗎
區塊鏈是一種「共識」實現技術,通過區塊鏈可以記錄網際間所有的交易,供區塊鏈的用戶見證實現「共識」,且鏈上信息內容「不可篡改」。而這種「不可篡改」性是通過系統內多個副本的存在增加了內容被惡意篡改的成本。「區塊鏈不是一個隱私解決方案。它是一個驗證解決方案。了解這一點非常重要。區塊鏈完全可以與其他技術組合,創造出各種系統,幫助用戶更好地管理他們的數據,但是這些系統不能阻止數據泄露。」區塊鏈技術可以解決身份黑客襲擊問題,因為如果你的身份由一個私鑰控制,而你自己保存著那把私鑰,那麼就沒有方法去黑客你的身份,或者至少與傳統資料庫系統相比,襲擊發生的可能性很低」。區塊鏈都基於一種機制,而區塊鏈上的信息是不可改變的。「區塊鏈的最大價值之一是你不能以管理員身份隨意改變價值,沒人控制區塊鏈,這是短期的。」從技術上來講,單獨的區塊鏈也許不會成為數據黑客攻擊和身份竊取的解決方案,但它依然是個人信息安全的一大技術飛躍,信息安全從網路空間變為常規。
區塊鏈如何保證使用安全?區塊鏈項目(尤其是公有鏈)的一個特點是開源。通過開放源代碼,來提高項目的可信性,也使更多的人可以參與進來。但源代碼的開放也使得攻擊者對於區塊鏈系統的攻擊變得更加容易。近兩年就發生多起黑客攻擊事件,近日就有匿名幣Verge(XVG)再次遭到攻擊,攻擊者鎖定了XVG代碼中的某個漏洞,該漏洞允許惡意礦工在區塊上添加虛假的時間戳,隨後快速挖出新塊,短短的幾個小時內謀取了近價值175萬美元的數字貨幣。雖然隨後攻擊就被成功制止,然而沒人能夠保證未來攻擊者是否會再次出擊。
當然,區塊鏈開發者們也可以採取一些措施
一是使用專業的代碼審計服務,
二是了解安全編碼規范,防患於未然。
密碼演算法的安全性
隨著量子計算機的發展將會給現在使用的密碼體系帶來重大的安全威脅。區塊鏈主要依賴橢圓曲線公鑰加密演算法生成數字簽名來安全地交易,目前最常用的ECDSA、RSA、DSA等在理論上都不能承受量子攻擊,將會存在較大的風險,越來越多的研究人員開始關注能夠抵抗量子攻擊的密碼演算法。
當然,除了改變演算法,還有一個方法可以提升一定的安全性:
參考比特幣對於公鑰地址的處理方式,降低公鑰泄露所帶來的潛在的風險。作為用戶,尤其是比特幣用戶,每次交易後的余額都採用新的地址進行存儲,確保有比特幣資金存儲的地址的公鑰不外泄。
共識機制的安全性
當前的共識機制有工作量證明(ProofofWork,PoW)、權益證明(ProofofStake,PoS)、授權權益證明(DelegatedProofofStake,DPoS)、實用拜占庭容錯(,PBFT)等。
PoW面臨51%攻擊問題。由於PoW依賴於算力,當攻擊者具備算力優勢時,找到新的區塊的概率將會大於其他節點,這時其具備了撤銷已經發生的交易的能力。需要說明的是,即便在這種情況下,攻擊者也只能修改自己的交易而不能修改其他用戶的交易(攻擊者沒有其他用戶的私鑰)。
在PoS中,攻擊者在持有超過51%的Token量時才能夠攻擊成功,這相對於PoW中的51%算力來說,更加困難。
在PBFT中,惡意節點小於總節點的1/3時系統是安全的。總的來說,任何共識機制都有其成立的條件,作為攻擊者,還需要考慮的是,一旦攻擊成功,將會造成該系統的價值歸零,這時攻擊者除了破壞之外,並沒有得到其他有價值的回報。
對於區塊鏈項目的設計者而言,應該了解清楚各個共識機制的優劣,從而選擇出合適的共識機制或者根據場景需要,設計新的共識機制。
智能合約的安全性
智能合約具備運行成本低、人為干預風險小等優勢,但如果智能合約的設計存在問題,將有可能帶來較大的損失。2016年6月,以太坊最大眾籌項目TheDAO被攻擊,黑客獲得超過350萬個以太幣,後來導致以太坊分叉為ETH和ETC。
對此提出的措施有兩個方面:
一是對智能合約進行安全審計,
二是遵循智能合約安全開發原則。
智能合約的安全開發原則有:對可能的錯誤有所准備,確保代碼能夠正確的處理出現的bug和漏洞;謹慎發布智能合約,做好功能測試與安全測試,充分考慮邊界;保持智能合約的簡潔;關注區塊鏈威脅情報,並及時檢查更新;清楚區塊鏈的特性,如謹慎調用外部合約等。
數字錢包的安全性
數字錢包主要存在三方面的安全隱患:第一,設計缺陷。2014年底,某簽報因一個嚴重的隨機數問題(R值重復)造成用戶丟失數百枚數字資產。第二,數字錢包中包含惡意代碼。第三,電腦、手機丟失或損壞導致的丟失資產。
應對措施主要有四個方面:
一是確保私鑰的隨機性;
二是在軟體安裝前進行散列值校驗,確保數字錢包軟體沒有被篡改過;
三是使用冷錢包;
四是對私鑰進行備份。
區塊鏈它是如何安全的?區塊鏈中的安全性來自一些屬性。
1.挖掘塊需要使用資源。
2.每個塊包含之前塊的哈希值。
想像一下,如果攻擊者想要通過改變5個街區之前的交易來改變鏈條。如果他們篡改了塊,則塊的哈希值會發生變化。然後攻擊者必須將指針從下一個塊更改為更改的塊,然後更改下一個塊的哈希值...這將一直持續到鏈的末尾。這意味著塊體在鏈條的後面越遠,其變化的阻力就越大。
實際上,攻擊者必須模擬整個網路的哈希能力,直到鏈的前端。然而,當攻擊者試圖攻擊時,鏈繼續向前移動。如果攻擊者的哈希值低於鏈的其餘部分(當攻擊者擁有51%的哈希值時,他們可以使用有效事務列表重寫網路歷史記錄。這是因為他們可以比網路的其他部分更快地重新計算任何塊排序的哈希值,因此它們最終可以保證更長的鏈。51%攻擊的主要危險是雙重花費的可能性。這簡單的意思是攻擊者可以購買一件物品並表明他們已經在區塊鏈上用任意數量的確認付款。一旦他們收到了該物品,他們就可以對區塊鏈進行重新排序,使其不包括發送交易,從而獲得退款。
即使攻擊者擁有50%的哈希值,攻擊者也只能造成這么大的傷害。他們不能做諸如將錢從受害者的賬戶轉移到他們的賬戶或列印更多硬幣之類的事情。這是因為所有交易都由帳??戶所有者簽署,因此即使他們控制整個網路,也無法偽造帳戶簽名。
D. 區塊鏈科普指南:什麼是51%攻擊
在加密世界中,當一個人或一群人控制了50% + 1的網路單元時,就會發生51% 的攻擊。沒有人說50% + 1單位,所以簡稱為51%攻擊。
當一個團隊設法控制鏈接到一個特定區塊鏈的網路的大部分,它被認為對它有絕對的權力控制整個區塊鏈,這意味著交易的完整性和安全性不能再得到保證。
區塊鏈如何抵禦51% 的攻擊?
加密貨幣有不同的方式可以保護自己免受51% 的攻擊。毫無疑問,最為人所知的是,全球擁有龐大的礦商網路,其中包括數萬甚至數十萬人,這使得控制這一網路極為昂貴。
在這種情況下,區塊鏈通常是自動保護的,因為接管加密貨幣所需的資源要重要得多,而且一旦網路得到控制,攻擊不一定涵蓋費用。
不需要太多的細節,我們只想說,可以添加額外的安全機制,目的是使這種攻擊不可能發生。這可以通過使用一個具有多個控制項的系統來實現,這有時會將這種攻擊的需求從計算能力的51% 提高到75% 、90% ,有時甚至是99% 。
在其他情況下,一些區塊鏈已經選擇授權交易驗證的有信譽的集中參與者,以避免這種攻擊。然而,一些純粹主義者不喜歡這個想法,因為它違背了區塊鏈的宗旨,即分散交易。
我們真的應該擔心51% 的攻擊嗎?
比特幣自誕生以來從未遭受過51% 的攻擊,也不太可能遭受這樣的攻擊。這個網路如此龐大,以至於做這件事的成本會高得驚人。
此外,當一個區塊鏈正在經歷一個51% 的攻擊變得清晰時,幾乎可以肯定的是,所有令牌持有者將決定立即出售他們的資產,這將導致資產的價值損失。所以,從數學上來說,一群人試圖控制一種加密貨幣是沒有多大意義的。
為了了解實施51% 攻擊所需的資源,有一個不錯的小網站叫做 Crypto51,它可以讓你找出實施這種攻擊所需的散列速率和每小時的美元成本。
對51%攻擊的結論
我們希望您現在有一個更好的理解的概念,51% 的攻擊和他們如何工作。正如你所看到的,他們需要巨大的資源,可能仍然不值得麻煩。
51% 的攻擊,理論上,是工作證明(PoW)系統的一個主要問題。然而,在實踐中,一旦一個區塊鏈已經足夠發達,風險接近於零。
對於新的或小盤數字貨幣,再一次,沒有真正的利益為黑客進行這樣的攻擊,因為加密貨幣的價格可以下降到0非常快,防止該組收獲經濟利益。
E. 區塊鏈51攻擊是什麼
51%攻擊是什麼?當有一組礦工控制超過Token哈希算力(計算能力)的50%時,可能會發生51%的攻擊(也稱為「多數攻擊」)。實際上,「51%」其實用詞不當;一個成功的攻擊實際上僅需要50%+1的哈希算力。
簡單解釋下,51%攻擊又叫大多數攻擊,是指惡意礦工控制了區塊鏈網路50%以上的哈希率(hashrate,即算力),隨後對網路發動攻擊,接管區塊鏈網路讓不法分子得以逆轉交易、停止支付或者防止新交易予以確認。
因此,51%攻擊成本巨大,收益卻很小,僅能實現「雙重支付」而已,所以51%攻擊很多時候又被稱為「雙花攻擊」。「雙花」是數字貨幣要解決的第一個核心問題,比特幣通過共享賬本和工作量證明共識機制比較完美地解決了這個問題。
所謂51%的攻擊,就是利用比特幣網路採用PoW競爭記賬權和「最長鏈共識」的特點,使用算力優勢生成一條更長的鏈「回滾」已經發生的「交易行為」。
比特幣百分之51什麼意思1、憑空生成比特幣;修改每個區塊產生的比特幣數量。因此,51%攻擊成本巨大,收益卻很小,僅能實現「雙重支付」而已,所以51%攻擊很多時候又被稱為「雙花攻擊」。
2、%是指算力佔全網算力的51%,比特幣網路需要通過哈希碰撞來匹配隨機數從而獲得記賬權,算力衡量的是一台計算機每秒鍾能進行哈希碰撞的次數。算力越高,意味著每秒鍾能進行越多次的哈希碰撞,即獲得記賬權的幾率越高。
3、一提到對比特幣的攻擊,大部分人想到的就是51%攻擊。所謂51%攻擊,就是利用比特幣使用算力作為競爭條件的特點,使用算力優勢撤銷自己已經發生的付款交易。
簡單解釋何為51%攻擊
1、當有一組礦工控制超過Token哈希算力(計算能力)的50%時,可能會發生51%的攻擊(也稱為「多數攻擊」)。實際上,「51%」其實用詞不當;一個成功的攻擊實際上僅需要50%+1的哈希算力。
2、發動算力攻擊也是為了有利可圖,但從經濟角度來看,51%算力攻擊的成本太高,利潤太少,無法產生大量資金,並且會有受到重大損失的風險。由於所涉及的成本和風險,進行51%攻擊確實沒有任何意義,而誠實挖礦則有利可圖的多。
3、簡單解釋下,51%攻擊又叫大多數攻擊,是指惡意礦工控制了區塊鏈網路50%以上的哈希率(hashrate,即算力),隨後對網路發動攻擊,接管區塊鏈網路讓不法分子得以逆轉交易、停止支付或者防止新交易予以確認。
4、%攻擊能帶來的收益是非常有限的,只能做到:修改自己的交易記錄,如雙重支付;阻止確認部分或全部交易。而下面這些即使是51%攻擊也沒法做到的:憑空生成比特幣;修改每個區塊產生的比特幣數量。
5、雙花(DoubleSpending)。雙花的意思是一份錢花了兩次甚至多次。51%算力攻擊是如何做到雙花的呢?假設小黑有666BTC,他把這些幣支付的大白同時,也把這些幣發到自己的另一錢包地址上。
F. 區塊鏈中,什麼是51%算力攻擊
比特幣白皮書中,有過這樣的表述:誠實節點控制算力的總和,大於有合作關系的攻擊者算力的總和,該系統就是安全的。
換句說,當系統中有合作關系的惡意節點所控制的算力,超過誠實節點所控制的算力,系統就是有被攻擊的風險。這種由惡意節點控制超過50%算力所發起的攻擊,稱為51%算力攻擊(51% Attack)。
那是不是所有的加密貨幣系統都有可能遭遇51%算力攻擊的風險呢?其實並不是的,只有基於PoW(工作量證明)共識機制的加密貨幣,才存在51%算力攻擊,比如比特幣、比特現金和目前階段的以太坊等;而非PoW共識演算法的加密貨幣則不存在51%算力攻擊,如基於DPoS(委託權益證明)共識機制的EOS、TRON等。
在了解了51%算力攻擊之後,你肯定好奇,這種攻擊能做哪些壞事。
1、雙花(Double Spending)。雙花的意思是一份"錢"花了兩次甚至多次。
51%算力攻擊是如何做到雙花的呢?假設小黑有666BTC,他把這些幣支付的大白同時,也把這些幣發到自己的另一錢包地址上。換一句話說,小黑的一份錢,同時轉給兩個人。最終,發給大白那筆交易先被得到了確認,並打包在區塊高度為N的區塊內。
這時,控制了超過50%算力的小黑,發起51%算力攻擊。他通過重新組裝第N個區塊,將發給自己那筆交易打包進區塊里,並持續在這條鏈上延展區塊,由於算力的優勢,這條量將成為最長合法鏈。這樣小黑666BTC雙花成功,大白錢包里的666BTC"不翼而飛"了。
鏈喬教育在線旗下學碩創新區塊鏈技術工作站是中國教育部學校規劃建設發展中心開展的「智慧學習工場2020-學碩創新工作站 」唯一獲準的「區塊鏈技術專業」試點工作站。專業站立足為學生提供多樣化成長路徑,推進專業學位研究生產學研結合培養模式改革,構建應用型、復合型人才培養體系。
G. 「51%攻擊」是什麼它是比特幣最大的威脅
所謂51%攻擊,就是利用比特幣使用算力作為競爭條件的特點,使用算力優勢撤銷自己已經發生的付款交易。
如果有人掌握了50%以上的算力,他能夠比其他人更快地找到開采區塊需要的那個隨機數,因此他實際上擁有了絕對哪個一區塊的有效權利。
他能夠:
1、修改自己的交易記錄,這可以使他進行雙重支付
2、阻止區塊確認部分或者全部交易
3、阻止部分或全部礦工開採到任何有效的區塊
H. 區塊鏈鼻祖比特幣之8:分叉帶來的雙花支付、51%攻擊與解決辦法
分叉
前面講到了比特幣通過區塊鏈+工作量證明的獨特設計來解決了時間順序,但是不能保證在同一時刻有兩個節點算出了正確的解,雖然這種可能性很低很低。這就帶來了區塊的分叉。
雖然說幾乎同時有兩個節點計算出這一數學問題的可能性微乎其微,但是仍然存在這樣的可能性,所以分叉就以為著同一個區塊的後面可能會跟上兩個不同的區塊。
規則的打破一直要到下一個區塊被人解開。則會立即轉向最長的區塊,而那些短的區塊則會被拋棄。數學問題使得區塊很難被同時拆解。要連續發生多次更是困難。最終區塊鏈會穩定下來。也就是說所有人對最後幾個區塊順序達成共識。分叉意味著,譬如,若你的交易出現在較短的支鏈,它就會失去進入區塊鏈的位置。一般而言,只代表他會回到未確認交易池。然後被納入到下一個區塊。
比特幣網路如何解決分叉帶來的雙花支付
可惜,交易失去區塊位置的潛在可能,給了本來定序系統防範的重復支付攻擊機會。考慮下面的一個攻擊者A,其首先用自己的比特幣交換B節點的貨物,其立即又支付給自己。然後其通過努力的製造更長的鏈條來讓自己的支付替代掉B節點的支付,從而實現了雙重支付,B節點既得不到錢,還失去了貨物。
這時交易會退回到未確認池中,因為A節點已經利用參照同樣的input交易取而代之。節點就會認為Bob的交易無效。因為已使用掉。
你可能會猜測A節點會預先的計算出一支區塊鏈,然後抓住時機發布到網路。但是每個區塊的數學謎題阻擋了這個可能性。如前面所訴,解開區塊是猜測出一個隨機數的過程。一旦得出答案,解出的哈希值就會成為指紋一樣的區塊識別。只要區塊內容有一丁點變化,下一個區塊的參考值就會完全不同。此機制的結果就是無法在區塊鏈中置換區塊。在得到前一個區塊之前,下位區塊無法被解開。前一個區塊的指紋也是雜湊函數的引數之一。
同時,該工作量證明機制還解決了在集體投票表決時,誰是大多數的問題。如果決定大多數的方式是基於IP地址的,一IP地址一票,那麼如果有人擁有分配大量IP地址的權力,則該機制就被破壞了。而工作量證明機制的本質則是一CPU一票。「大多數」的決定表達為最長的鏈,因為最長的鏈包含了最大的工作量。如果大多數的CPU為誠實的節點控制,那麼誠實的鏈條將以最快的速度延長,並超越其他的競爭鏈條。如果想要對業已出現的區塊進行修改,攻擊者必須重新完成該區塊的工作量外加該區塊之後所有區塊的工作量,並最終趕上和超越誠實節點的工作量。我們將證明,設想一個較慢的攻擊者試圖趕上隨後的區塊,那麼其成功概率將呈指數化遞減。另一個問題是,硬體的運算速度在高速增長,而節點參與網路的程度則會有所起伏。為了解決這個問題,工作量證明的難度(the proof-of-work difficulty)將採用移動平均目標的方法來確定,即令難度指向令每小時生成區塊的速度為某一個預定的平均數。如果區塊生成的速度過快,那麼難度就會提高。
如果有一台超級電腦,能夠在區塊解題中獲勝?
即便是一台超級電腦,或者時幾百上千台電腦也很難贏得解一個區塊的勝利,因為競爭對手不是任一台電腦,而是整個比特幣網路。你可以用買彩票來比擬。操作千百台電腦,如同買了千百張彩票一樣。
51%攻擊是指的什麼
根據前面的例子,我們知道,要想有50%的概率領先其他人解題得到勝利,就需要掌握全網50%以上的算力。要連續領先他人解出區塊,掌握的運算能力還需要高得多。所以區塊鏈中的交易是受到數學競賽所保護。惡意用戶必須和整個網路較量。區塊連接建立的結果,使得在支鏈越前方的交易越安全。惡意的用戶必須在更長的時間贏過全網路,來達成重復支付,替換前面的區塊鏈。所以,系統只有支端末尾易受到重復支付攻擊。這也是為什麼系統建議多等幾個區塊,才能確認收款成功。
個人博客:https://dreamerjonson.com/
I. 區塊鏈為什麼是51%,區塊鏈為什麼是一些不出名的大學開設
什麼是51%算力攻擊?讓盈富財經學院的老師給你普及下,算力是指每秒鍾可以計算的哈希值次數。而51%算力攻擊一般是指利用算力優勢來修改區塊鏈記錄,從而達到撤銷已付款交易的目的。
當一個掌握51%算力攻擊後,將有可能創造出一條比當前主鏈更長的交易鏈,這對整個比特幣安全市場,將會是巨大的打擊,從而引發價格暴跌。
區塊鏈的特徵是什麼?
區塊鏈的特徵
區塊鏈的四大特徵之一:不可篡改
區塊鏈最容易被理解的特性是不可篡改的特性。
不可篡改是基於「區塊+鏈」(block+chain)的獨特賬本而形成的:存有交易的區塊按照時間順序持續加到鏈的尾部。要修改一個區塊中的數據,就需要重新生成它之後的所有區塊。
共識機制的重要作用之一是使得修改大量區塊的成本極高,從而幾乎是不可能的。以採用工作量證明的區塊鏈網路(比如比特幣、以太坊)為例,只有擁有51%的算力才可能重新生成所有區塊以篡改數據。但是,破壞數據並不符合擁有大算力的玩家的自身利益,這種實用設計增強了區塊鏈上的數據可靠性。
通常,在區塊鏈賬本中的交易數據可以視為不能被「修改」,它只能通過被認可的新交易來「修正」。修正的過程會留下痕跡,這也是為什麼說區塊鏈是不可篡改的,篡改是指用作偽的手段改動或曲解。
在現在常用的文件和關系型數據中,除非採用特別的設計,否則系統本身是不記錄修改痕跡的。區塊鏈賬本採用的是與文件、資料庫不同的設計,它借鑒的是現實中的賬本設計——留存記錄痕跡。因此,我們不能不留痕跡地「修改」賬本,而只能「修正」賬本(見圖2)。
圖2:區塊鏈賬本「不能修改、只能修正」
區塊鏈的數據存儲被稱為「賬本」(leger,總賬),這是非常符合其實質的名稱。區塊鏈賬本的邏輯和傳統的賬本相似。比如,我可能因錯漏轉了一筆錢給你,這筆交易被區塊鏈賬本接受,記錄在其中。修正錯漏的方式不是直接修改賬本,將它恢復到這個錯誤交易前的狀態;而是進行一筆新的修正交易,你把這筆錢轉回給我。當新交易被區塊鏈賬本接受,錯漏就被修正,所有的修正過程都記錄在賬本之中,有跡可循。
將區塊鏈投入使用的第一類設想正是利用它的不可篡改特性。農產品或商品溯源的應用是將它們的流通過程記錄在區塊鏈上,以確保數據記錄不被篡改,從而提供追溯的證據。在供應鏈領域應用區塊鏈的一種設想是,確保接觸賬本的人不能修改過往記錄,從而保障記錄的可靠性。
2018年3月,在網路零售集團京東發布的《區塊鏈技術實踐白皮書》中,京東認為,區塊鏈技術(分布式賬本)的三種應用場景是:跨主體協作,需要低成本信任,存在長周期交易鏈條。這三個應用場景所利用的都是區塊鏈的不可篡改特性。多主體在一個不可篡改的賬本上協作,降低了信任成本。區塊鏈賬本中存儲的是狀態,未被涉及的數據的狀態不會發生變化,且越早前的數據越難被篡改,這使得它適用於長周期交易。
區塊鏈的四大特徵之二:表示價值所需要的唯一性
不管是可互換通證(ERC20),還是不可互換通證(ERC721),又或者是其他提議中的通證標准,以太坊的通證都展示了區塊鏈的一個重要特徵:表示價值所需要的唯一性。
在數字世界中,最基本單元是比特,比特的根本特性是可復制。但是價值不能被復制,價值必須是唯一的。之前我們已經討論過,這正是矛盾所在:在數字世界中,我們很難讓一個文件是唯一的,至少很難普遍地做到這一點。這是現在我們需要中心化的賬本來記錄價值的原因。
在數字世界中,我們沒法像擁有現金一樣,手上拿著鈔票。在數字世界中,我們需要銀行等信用中介,我們的錢是由銀行賬本幫忙記錄的。
比特幣系統帶來的區塊鏈技術可以說第一次把「唯一性」普遍地帶入了數字世界,而以太坊的通證將數字世界中的價值表示功能普及開來。
2018年年初,中國的兩位科技互聯網企業領袖不約而同地強調了區塊鏈帶來的「唯一性」。騰訊主要創始人、CEO馬化騰說:「區塊鏈確實是一項具有創新性的技術,用數字化表達唯一性,區塊鏈可以模擬現實中的實物唯一性。」
網路創始人、CEO李彥宏說:「區塊鏈到來之後,可以真正使虛擬物品變得唯一,這樣的互聯網跟以前的互聯網會是非常不一樣的。」
對於通證經濟的探討和展望正是基於,在數字世界中,在網路基礎層次上區塊鏈提供了去中心化的價值表示和價值轉移的方式。在以以太坊為代表的區塊鏈2.0時代,出現了更通用的價值代表物——通證,從區塊鏈1.0的數字現金時期進入到數字資產時期。
區塊鏈的四大特徵之三:智能合約
從比特幣到以太坊,區塊鏈最大的變化是「智能合約」(見圖3)。比特幣系統是專為一種數字貨幣而設計的,它的?UTXO?和腳本也可以處理一些復雜的交易,但有很大的局限性。而維塔利克創建了以太坊區塊鏈,他的核心目標都是圍繞智能合約展開的:一個圖靈完備的腳本語言、一個運行智能合約的虛擬機(EVM),以及後續發展出來的一系列標准化的用於不同類型通證的智能合約等。
圖3:區塊鏈2.0的關鍵改進是「智能合約」
智能合約的出現使得基於區塊鏈的兩個人不只是可以進行簡單的價值轉移,而可以設定復雜的規則,由智能合約自動、自治地執行,這極大地擴展了區塊鏈的應用可能性。
當前把焦點放在通證的創新性應用上的項目,在軟體層面都是通過編寫智能合約來實現的。利用智能合約,我們可以進行復雜的數字資產交易。
在討論以太坊的發展過程時,在冷知識專欄「智能合約」「以太坊的智能合約」中,我們對智能合約進行了很多討論,在此不再贅述。這里再借維塔利克的討論,重復一下我們認同的智能合約的軟體性質——它相當於一種特殊的服務端後台程序(daemon)。在以太坊白皮書中,維塔利克寫道:
(合約)應被看成是存在於以太坊執行環境中的「自治代理」(autonomousagents),它擁有自己的以太坊賬戶,收到交易信息,它們就相當於被捅了一下,然後它就自動執行一段代碼。
智能合約的執行流程如圖4所示。區塊鏈的第五、第六個定義如圖5所示。
圖4:智能合約的執行流程
圖5:區塊鏈的定義之五、之六
區塊鏈的四大特徵之四:去中心自組織
區塊鏈的第四大特徵是去中心自組織。到目前為止,主要區塊鏈項目的自身組織和運作都與這個特徵緊密相關。很多人對區塊鏈項目的理想期待是,它們成為自治運轉的一個社區或生態。
匿名的中本聰在完成比特幣的開發和初期的迭代開發之後,就完全從互聯網上消失了。但他創造的比特幣系統持續地運轉著:無論是比特幣這個加密數字貨幣,比特幣協議即它的發行與交易機制,比特幣的分布式賬本、去中心網路,還是比特幣礦工和比特幣開發,都去中心化、自組織地運轉著。
我們可以合理地猜測,在比特幣之後出現了眾多修改參數分叉形成的競爭幣、硬分叉形成的比特幣現金(BCH),可能都符合中本聰的設想。他選擇了「失控」,失控可視為自治的同義詞。
到目前為止,以太坊項目仍在維塔利克的「領導」之下,但正如本章一開始討論的,他是以領導一個開源組織的方式引領著這個項目,就像林納斯領導開源的Linux操作系統和Linux基金會一樣。
維塔利克可能是對去中心自組織思考得最多的人之一,他一直強調和採用基於區塊鏈的治理方式。2016年以太坊的硬分叉是他提議的,但需要通過鏈上的社區投票,獲得通過方可施行。在以太坊社區中,包括ERC20等在內的眾多標準是社區開發者自發形成的。
在《去中心化應用》一書中,作者西拉傑·拉瓦爾(SirajRaval)還從另一個角度進行了區分,他的這個區分有助於我們更好地理解未來的應用與組織。他從兩個維度看現有的互聯網技術產品:一個維度是,在組織上是中心化的,還是去中心化的;另一個維度是,在邏輯上是中心化的,還是去中心化的。
他認為:「比特幣在組織上去中心化,在邏輯上集中。」而電子郵件系統在組織上和邏輯上都是去中心化的(見圖6)。
圖6:比特幣在組織上去中心化,在邏輯上集中
在設想未來的組織時,我們心中的理想原型常是比特幣的組織:完全去中心化的自治組織。但在實踐過程中,為了效率和能夠推進,我們又會略微往中心化組織靠攏,最終找到一個合適的平衡點。
現在,在通過以太坊的智能合約創建和發放通證,並以社區或生態方式運行的區塊鏈項目中,不少項目的理想狀態是類似於比特幣的組織,但實際情況是介於完全的去中心化組織和傳統的公司之間。
在討論區塊鏈的第四個特徵去中心自組織時,其實我們已經在從代碼的世界往外走,涉及人的組織與協同了。現在,各種討論和實際探索也揭示了區塊鏈在技術之外的意義:它可能作為基礎設施支持人類的生產組織和協同的變革。這正是區塊鏈與互聯網是完全同構的又一例證,互聯網也不僅僅是一項技術,它改變了人們的組織和協同。
總的來說,以太坊把區塊鏈帶入了新的階段。在討論以太坊時,如果要總結兩個關鍵詞的話,那麼這兩個關鍵詞分別是智能合約和通證;而如果只能說一個的話,我會選擇「通證」。我會更願意從互聯網的歷史中找尋它的意義,重復之前的類比:作為價值表示物的通證,它的角色類似於HTML。在有了HTML之後,建什麼樣的網站完全取決於我們的想像力。
區塊鏈裡面什麼是51%攻擊?簡單解釋下,51%攻擊又叫大多數攻擊,是指惡意礦工控制了區塊鏈網路50%以上的哈希率(hashrate,即算力),隨後對網路發動攻擊,接管區塊鏈網路讓不法分子得以逆轉交易、停止支付或者防止新交易予以確認。
詳細有關51%攻擊可以在密碼財經網路了解,
為什麼區域鏈不能同時修改超過51%的節點區塊鏈的基本定義大家都應該了解了,說白了就是大家一起記賬,一個區塊鏈系統由許多節點組成,這些節點一般就是一台計算機。在該系統中,每個參與的節點都有機會去競爭記賬,即更新資料庫信息。系統會在一段時間內(可能是十分鍾,也可能是一秒鍾),選出其中記賬最快最好的一個節點,讓他在這一段時間內記賬,它會把這段時間內數據變化記錄在一個數據區塊中。
我們把這個數據區塊想像成一頁紙。在記完帳以後,該節點就會把這一頁的賬本發給其它節點。其它節點會核實這一頁賬本是否無誤,如果沒有問題就會放入自己的賬本中。在系統裡面,這一頁賬本的數據表現形式,稱為區塊。該區塊中就記錄了整個賬本數據在這段時間里的變化。然後把這個更新結果發給系統里的每一個節點。於是,整個系統的每個節點都有著完全一樣的賬本。
我們把這種記賬方式稱為方式區塊鏈技術或者分布式總賬技術。
那麼問題就來了,這個賬本內容安全嗎?
首先,每個節點的權利是一樣的,任意節點被摧毀都不會影響整個系統的安全,也不會造成數據丟失。而且,每個節點的賬本數據都是一模一樣的,也就意味著單個節點的數據篡改是沒有任何意義的。因為如果系統發現倆個賬本對不上,它就認為擁有相同賬本數量相對較多的節點的版本才是真實的數據版本。
我們再來說的簡單一點,我們都有微信群,微信群的聊天記錄就是不可篡改的。
一個微信群,有500人,每個人手機上都有聊天記錄的一個完整備份。任何群友都不可能去修改別人手機上的聊天記錄,只能修改自己的,哪怕是馬化騰也做不到修改別人手機的聊天記錄的。任何人即使修改了自己的記錄,但別的群友可以指正,只要更多的群友拿出證據,就可以證明這個心懷不軌的人修改了記錄。
區塊鏈也是存著一些特定的「聊天記錄」,這些記錄在區塊鏈世界裡有獨特的名字——交易。
其原理是和微信群是一樣的,所有玩這個區塊鏈的人(被稱為節點錢包)都完整地保留一份交易的歷史記錄。這樣任何單個人想修改這些歷史記錄,別的人都可以拿出自己的那一份備份,來證明這些心懷不軌的人試圖作弊,系統會自動舍棄這部分認為被篡改過的賬本。
「51%攻擊」是什麼?它是比特幣最大的威脅所謂51%攻擊,就是利用比特幣使用算力作為競爭條件的特點,使用算力優勢撤銷自己已經發生的付款交易。
如果有人掌握了50%以上的算力,他能夠比其他人更快地找到開采區塊需要的那個隨機數,因此他實際上擁有了絕對哪個一區塊的有效權利。
他能夠:
1、修改自己的交易記錄,這可以使他進行雙重支付
2、阻止區塊確認部分或者全部交易
3、阻止部分或全部礦工開採到任何有效的區塊
區塊鏈中,什麼是51%算力攻擊?比特幣白皮書中,有過這樣的表述:誠實節點控制算力的總和,大於有合作關系的攻擊者算力的總和,該系統就是安全的。
換句說,當系統中有合作關系的惡意節點所控制的算力,超過誠實節點所控制的算力,系統就是有被攻擊的風險。這種由惡意節點控制超過50%算力所發起的攻擊,稱為51%算力攻擊(51%Attack)。
那是不是所有的加密貨幣系統都有可能遭遇51%算力攻擊的風險呢?其實並不是的,只有基於PoW(工作量證明)共識機制的加密貨幣,才存在51%算力攻擊,比如比特幣、比特現金和目前階段的以太坊等;而非PoW共識演算法的加密貨幣則不存在51%算力攻擊,如基於DPoS(委託權益證明)共識機制的EOS、TRON等。
在了解了51%算力攻擊之後,你肯定好奇,這種攻擊能做哪些壞事。
1、雙花(DoubleSpending)。雙花的意思是一份"錢"花了兩次甚至多次。
51%算力攻擊是如何做到雙花的呢?假設小黑有666BTC,他把這些幣支付的大白同時,也把這些幣發到自己的另一錢包地址上。換一句話說,小黑的一份錢,同時轉給兩個人。最終,發給大白那筆交易先被得到了確認,並打包在區塊高度為N的區塊內。
這時,控制了超過50%算力的小黑,發起51%算力攻擊。他通過重新組裝第N個區塊,將發給自己那筆交易打包進區塊里,並持續在這條鏈上延展區塊,由於算力的優勢,這條量將成為最長合法鏈。這樣小黑666BTC雙花成功,大白錢包里的666BTC"不翼而飛"了。
鏈喬教育在線旗下學碩創新區塊鏈技術工作站是中國教育部學校規劃建設發展中心開展的「智慧學習工場2020-學碩創新工作站」唯一獲準的「區塊鏈技術專業」試點工作站。專業站立足為學生提供多樣化成長路徑,推進專業學位研究生產學研結合培養模式改革,構建應用型、復合型人才培養體系。