區塊鏈證明方式
A. 區塊鏈和零知識證明在信用系統中的作用方式
區塊鏈中的零知識證明在隱私保護方面起重大作用,它在信用系統中自然不例外,但在系統中的哪個環節以及以何種方式發揮作用卻是一個值得思考和研究的問題。
第一,信用問題,不能完全依賴技術上的可靠,有些問題政府權威就足夠,比如戶籍與身份信息,這些並無必要有進一步的追問。
第二,區塊鏈存證的使用場景,應該是那種存在較長的數量化的證據鏈條的場景,比如根據流水統計月度年度匯總,保證匯總的計算過程沒有欺詐。而流水明細是在證據鏈的上游,時間上是在事前,在上游作假,提前幾個月幾年作假,對攻擊者計劃能力以及作假成本都要高的多。高到一定程度,從經濟學意義上就具有達到防止欺詐經濟可行性。
事實上這里涉及到前文所說領域事件在鏈上的閉合度問題。對於幾乎沒有可能,或者在可見未來不具備完全閉合的現實可能性的領域,閉合度是一個有灰度級別的問題,如果沿事件的邏輯鏈條向上游追溯將其上鏈,達到一定程度使得攻擊者的攻擊變得相當或極度困難,區塊鏈應用就會產生價值,並不要求完全的閉合,這樣區塊鏈的價值領域就會突破虛擬幣以及去中心化金融defi這類完全閉合於鏈上的系統,得以擴展。這個邏輯並不限於信用系統,而適用於區塊鏈與領域結合應用的一般邏輯。再舉一例,溯源系統到底是否能夠達成防偽的作用,這個問題取決於溯源在證據鏈條的上溯深度是否足以造成作假者的困境,不考察這一點,僅僅是形式上使用了區塊鏈存證是沒有意義的。
所以我們幾乎可以得到一個定理:
區塊鏈在領域應用中的價值水平與證據鏈的上溯深度成正比例關系。
然後隨之而來的第二個問題是:沿著證據鏈的反向上溯,越是上游越接近主體(公民隱私或組織的商業機密)隱私。這個問題的解決就是零知識證明的作用領地,也是它的作用方式。很多零知識證明的應用價值含混不清,現在我們把它放在證據鏈條的上下文中加以考量就會清晰起來:
1. 零知識證明是用來處理數量化的證據鏈追溯過程中,在不泄露上游證據鏈明文細節的前提下完成追溯,既發揮了區塊鏈沿證據鏈存追溯的作用,又保護了隱私。
2. 對於沒有追溯必要的場景,證據鏈不存在,零知識證明的作用與意義也是不明確的。比如一般身份戶籍信息,行政權威應被視為可信,並無追溯必要。注意這里說的證據鏈並非物理意義上的因果關系,而是經過系統應用目標的價值取捨。
總結一下:
1. 用區塊鏈技術保留證據鏈上游。2. 證據鏈越是上游越接近公民隱私,使用零知識證明來保護隱私
1. 參考MIT媒體實驗室的zkledger,使用區塊鏈結合零知識證明來處理公民和組織的財務與稅務等流水的匯總報告問題。
2. 技術上需要解決的問題是,zkledger的場景中,很有限的幾個銀行的大額交易,數據量少,而用於公民個人場景,數據量巨大,要找到方法解決性能問題。
B. 區塊鏈中的權益證明機制(PoS)是什麼
比特幣挖礦採用工作量證明機制,是什麼意思呢?
權益證明機制(Proof of Stake),簡稱POS,也稱股權證明機制,類似於把資產存在銀行里,銀行會通過你持有數字資產的數量和時間給你分配相應的收益。
同理,採用PoS的數字資產,系統根據你的幣齡給你分配相應的權益,幣齡是你持幣數量和時間的乘積。比如你持有100個幣,總共持有了30天,那麼,此時你的幣齡就為3000。
相較PoW(工作量證明機制),PoS存在2個優勢。第一,PoS不會造成過多的電力浪費,因為PoS不需要靠比拼算力挖礦。第二,POS更難進行51%攻擊。擁有51%幣才能發起攻擊,網路受到攻擊卻會造成自己利益受損,顯然很不劃算。
相較PoW(工作量證明機制),PoS存在2個優勢。第一,PoS不會造成過多的電力浪費,因為PoS不需要靠比拼算力挖礦。第二,POS更難進行51%攻擊。擁有51%幣才能發起攻擊,網路受到攻擊卻會造成自己利益受損,顯然很不劃算。
目前,有很多數字資產用PoW發行新幣,用PoS維護區塊鏈網路安全。
C. 區塊鏈常見的三大共識機制
區塊鏈是建立在P2P網路,由節點參與的分布式賬本系統,最大的特點是「去中心化」。也就是說在區塊鏈系統中,用戶與用戶之間、用戶與機構之間、機構與機構之間,無需建立彼此之間的信任,只需依靠區塊鏈協議系統就能實現交易。
可是,要如何保證賬本的准確性,權威性,以及可靠性?區塊鏈網路上的節點為什麼要參與記賬?節點如果造假怎麼辦?如何防止賬本被篡改?如何保證節點間的數據一致性?……這些都是區塊鏈在建立「去中心化」交易時需要解決的問題,由此產生了共識機制。
所謂「共識機制」,就是通過特殊節點的投票,在很短的時間內完成對交易的驗證和確認;當出現意見不一致時,在沒有中心控制的情況下,若干個節點參與決策達成共識,即在互相沒有信任基礎的個體之間如何建立信任關系。
區塊鏈技術正是運用一套基於共識的數學演算法,在機器之間建立「信任」網路,從而通過技術背書而非中心化信用機構來進行全新的信用創造。
不同的區塊鏈種類需要不同的共識演算法來確保區塊鏈上最後的區塊能夠在任何時候都反應出全網的狀態。
目前為止,區塊鏈共識機制主要有以下幾種:POW工作量證明、POS股權證明、DPOS授權股權證明、Paxos、PBFT(實用拜占庭容錯演算法)、dBFT、DAG(有向無環圖)
接下來我們主要說說常見的POW、POS、DPOS共識機制的原理及應用場景
概念:
工作量證明機制(Proof of work ),最早是一個經濟學名詞,指系統為達到某一目標而設置的度量方法。簡單理解就是一份證明,用來確認你做過一定量的工作,通過對工作的結果進行認證來證明完成了相應的工作量。
工作量證明機制具有完全去中心化的優點,在以工作量證明機制為共識的區塊鏈中,節點可以自由進出,並通過計算隨機哈希散列的數值解爭奪記賬權,求得正確的數值解以生成區塊的能力是節點算力的具體表現。
應用:
POW最著名的應用當屬比特幣。在比特幣網路中,在Block的生成過程中,礦工需要解決復雜的密碼數學難題,尋找到一個符合要求的Block Hash由N個前導零構成,零的個數取決於網路的難度值。這期間需要經過大量嘗試計算(工作量),計算時間取決於機器的哈希運算速度。
而尋找合理hash是一個概率事件,當節點擁有佔全網n%的算力時,該節點即有n/100的概率找到Block Hash。在節點成功找到滿足的Hash值之後,會馬上對全網進行廣播打包區塊,網路的節點收到廣播打包區塊,會立刻對其進行驗證。
如果驗證通過,則表明已經有節點成功解迷,自己就不再競爭當前區塊,而是選擇接受這個區塊,記錄到自己的賬本中,然後進行下一個區塊的競爭猜謎。網路中只有最快解謎的區塊,才會添加的賬本中,其他的節點進行復制,以此保證了整個賬本的唯一性。
假如節點有任何的作弊行為,都會導致網路的節點驗證不通過,直接丟棄其打包的區塊,這個區塊就無法記錄到總賬本中,作弊的節點耗費的成本就白費了,因此在巨大的挖礦成本下,也使得礦工自覺自願的遵守比特幣系統的共識協議,也就確保了整個系統的安全。
優缺點
優點:結果能被快速驗證,系統承擔的節點量大,作惡成本高進而保證礦工的自覺遵守性。
缺點:需要消耗大量的演算法,達成共識的周期較長
概念:
權益證明機制(Proof of Stake),要求證明人提供一定數量加密貨幣的所有權。
權益證明機制的運作方式是,當創造一個新區塊時,礦工需要創建一個「幣權」交易,交易會按照預先設定的比例把一些幣發送給礦工本身。權益證明機制根據每個節點擁有代幣的比例和時間,依據演算法等比例地降低節點的挖礦難度,從而加快了尋找隨機數的速度。
應用:
2012年,化名Sunny King的網友推出了Peercoin(點點幣),是權益證明機制在加密電子貨幣中的首次應用。PPC最大創新是其采礦方式混合了POW及POS兩種方式,採用工作量證明機制發行新幣,採用權益證明機制維護網路安全。
為了實現POS,Sunny King借鑒於中本聰的Coinbase,專門設計了一種特殊類型交易,叫Coinstake。
上圖為Coinstake工作原理,其中幣齡指的是貨幣的持有時間段,假如你擁有10個幣,並且持有10天,那你就收集到了100天的幣齡。如果你使用了這10個幣,幣齡被消耗(銷毀)了。
優缺點:
優點:縮短達成共識所需的時間,比工作量證明更加節約能源。
缺點:本質上仍然需要網路中的節點進行挖礦運算,轉賬真實性較難保證
概念:
授權股權證明機制(Delegated Proof of Stake),與董事會投票類似,該機制擁有一個內置的實時股權人投票系統,就像系統隨時都在召開一個永不散場的股東大會,所有股東都在這里投票決定公司決策。
授權股權證明在嘗試解決傳統的PoW機制和PoS機制問題的同時,還能通過實施科技式的民主抵消中心化所帶來的負面效應。基於DPoS機制建立的區塊鏈的去中心化依賴於一定數量的代表,而非全體用戶。在這樣的區塊鏈中,全體節點投票選舉出一定數量的節點代表,由他們來代理全體節點確認區塊、維持系統有序運行。
同時,區塊鏈中的全體節點具有隨時罷免和任命代表的權力。如果必要,全體節點可以通過投票讓現任節點代表失去代表資格,重新選舉新的代表,實現實時的民主。
應用:
比特股(Bitshare)是一類採用DPOS機制的密碼貨幣。通過引入了見證人這個概念,見證人可以生成區塊,每一個持有比特股的人都可以投票選舉見證人。得到總同意票數中的前N個(N通常定義為101)候選者可以當選為見證人,當選見證人的個數(N)需滿足:至少一半的參與投票者相信N已經充分地去中心化。
見證人的候選名單每個維護周期(1天)更新一次。見證人然後隨機排列,每個見證人按序有2秒的許可權時間生成區塊,若見證人在給定的時間片不能生成區塊,區塊生成許可權交給下一個時間片對應的見證人。DPoS的這種設計使得區塊的生成更為快速,也更加節能。
DPOS充分利用了持股人的投票,以公平民主的方式達成共識,他們投票選出的N個見證人,可以視為N個礦池,而這N個礦池彼此的權利是完全相等的。持股人可以隨時通過投票更換這些見證人(礦池),只要他們提供的算力不穩定,計算機宕機,或者試圖利用手中的權力作惡。
優缺點:
優點:縮小參與驗證和記賬節點的數量,從而達到秒級的共識驗證
缺點:中心程度較弱,安全性相比POW較弱,同時節點代理是人為選出的,公平性相比POS較低,同時整個共識機制還是依賴於代幣的增發來維持代理節點的穩定性。
D. 如何用最簡單的方式解讀區塊鏈
大家最近天天都能聽到區塊鏈這個詞,那什麼是區塊鏈呢?「分布式、難以篡改、一致存儲」等解釋太技術化且較為干澀。我這里來通俗的科普下:區塊鏈主要為了解決互不信任的個體之間的信任問題。
舉個通俗的例子:話說老李和老王一個村,老李最近手頭有點緊,想向老王借點錢。老王呢,擔心借了老李後他賴賬怎麼辦,於是找來「德高望重」的村長,不過想想,村長也不可信,以前村長還偷過別人家的地瓜啊!怎麼辦?
區塊鏈的方法是:老王借了1000塊錢給老李後,然後用大喇叭在村裡大喊「我老王今天借了老李1000元錢,大家都趕緊記錄下」,於是村裡的所有人都記錄在了自己家裡的賬本上,謹慎的保管了起來。這下可好,老李再也賴不過了,村裡即便有不守信的人,那還是好人多呀,老李也不可能找村裡全部的人偷偷抹掉自己的借錢記錄的。就這樣,區塊鏈解決了互不信任的老王和老李之間的借錢的信任問題。
在沒有出現區塊鏈之前,我們是如何解決互不信任個體間的信任問題呢?簡單啊,找兩者都信任的「德高望重」的「見證人」就好了,例如故事裡的村長,例如買賣雙方之間的支付寶,例如公證處等等。不過可能這類「見證人」也不一定一直誠信下去,所以區塊鏈乾脆就讓大家都作為見證人。
老王放心了,但老李頭疼啊!老李要等村裡人都記錄好了才能拿到借給他的錢,誰家還沒個大爺大媽手腳慢一些的。所以目前區塊鏈距離應用還有一定的距離,效率問題需要得到大幅提升才可以。
回想一下,你平時是怎麼和別人交易的:一件漂亮的衣服,你可以在實體店挑好,確認好了對方衣服質量不錯,對方確認你的錢是真錢,那麼我們面對面一手交錢一手拿貨。
要是我們隔著十萬八千里,彼此既不認識也不信任還是想交易呢?那就要有我們都信任的第三方了,也就是達成所謂的共識機制。比如:你可以在淘寶通過第三方見證擔保完成交易,錢先給支付寶——支付寶收款讓賣家發貨——賣家發貨——你確認收貨——支付寶再把錢給賣家。
但是,倘若這個中心化的機構作惡了,馬爸爸撕了賬本,不承認你給了錢,或者和賣家聯合起來騙你錢,那可怎麼辦?
又或者政府借了你一100萬,最後用超發貨幣的方式還給你錢,100萬縮水到1萬,由你來承受通貨膨脹的損失,你又怎麼辦?
有沒有不被任何政府、組織機構控制,能公開透明的完成仲裁,記錄了就不被篡改,沒有跑路風險的第三方呢?
別著急,我們的主角區塊鏈技術解決就是這樣的問題——你們之間的交易可以被所有在這個區塊鏈系統的人見證,大家的小賬本里頭都會記錄你們的交易。B如果否認收了A的錢,或者A說自己借了300塊錢,都會被路人甲乙丙丁質疑。具體是如何做到的呢?
1)系統給每個人都發了個小賬本,讓每個人都有記賬的權利,咱們稱之為分布式記賬。
2)為了鼓勵大家幫別人記賬,系統代碼設定將比特幣這樣的代幣獎勵給記賬者,為了防止一堆人記賬堵死,還將代幣設為有限個,甲乙丙丁需要通過系統規定的機制進行計算,算的最快最好的才能獲得記賬的權利,記錄之後通過系統廣播給大家,所有人復制一份相同的賬本,這個通過計算獲得獎勵的過程就叫挖礦,記賬的路人甲乙丙丁就是礦工。
3)有一天,最初記錄這筆交易的甲Game Over了,這個賬本卻還是存在在其他人的賬本里,A和B誰想否認都不行。我們把通過代碼寫好了如何仲裁和分配,無需銀行、政府、企業等中心化組織機構作為第三方見證(去中心化),直接點對點(P2P)交易的方式,稱為去中心化。
4)系統把多個交易打包成區塊,按時間順序鏈接起來成為最後人手一本的賬本,這就是區塊鏈技術
其實把區塊鏈簡單理解為賬本不過是最淺顯的解讀了,把它的每個特點拆分開來,所能應用的領域很多很多。
現在傳統金融行業、券商、投資機構正在跑步入場,物聯網, 游戲 ,儲存,版權,防偽,徵信,支付,預測市場(賭博之類)、社區等眾多領域已經開始了區塊鏈的 探索 應用。
互聯網讓萬物皆可連,區塊鏈能否讓所連皆可信呢?
我用天地自然運化的奇石解讀一下區塊鏈:
所有科學、哲學、道義⋯⋯天地都包涵著。任何一個事物、任何一種文化都與天地道化有關。
區塊鏈自然逃不脫天地運化法:即順然、隨然、無窮、無常。
它就是這塊奇石,其表面整體上的數據運化,一是,整體向著無形無象。二是線點守著一個規律:即無常之道。就是說它們每條線,每個點,追求的都不是一個閉合的目標和一個局限的目的。這樣說大家我好理解了:一個畫家要畫一隻雞,是有目的的,有終結相的,而奇石,大自然造化時,是沒有終結相的。所以相不閉合,線、點數據也不終結。區塊連接之技術,就是這個天運之道。無常運化無形無象,永無終結。(無中心化,就是無形無相,形式不封閉,結構不封閉,思想不封閉⋯⋯如「石」辦事就行)。
山東曲阜孔子靈石館
大家好,我是皮皮,我在這里用幾個生活小例子給大家解讀一下什麼叫區塊鏈?
去中心化,不可篡改級,分布式存貯的,以加密信息做鏈接地址的數據區塊鏈接系統,叫區塊鏈
這玩意本來就是許多高 科技 的復合品,沒法簡單,再簡單也是一大段話,而且未必能說清楚
區塊鏈(Blockchain)嚴格的定義是指通過基於密碼學技術設計的共識機制方式,在對等網路中多個節點共同維護一個持續增長,由時間戳和有序記錄數據塊所構建的鏈式列表賬本的分布式資料庫技術。該技術方案讓參與系統中的任意多個節點,把一段時間系統內全部信息交流的數據,通過密碼學演算法計算和記錄到一個數據塊(block),並且生成該數據塊的指紋用於鏈接(chain)下個數據塊和校驗,系統所有參與節點來共同認定記錄是否為真。
區塊鏈是一種類似於NoSQL(非關系型資料庫)這樣的技術解決方案統稱,並不是某種特定技術,能夠通過很多編程語言和架構來實現區塊鏈技術。並且實現區塊鏈的方式種類也有很多,目前常見的包括POW(Proof of Work,工作量證明),POS(Proof of Stake,權益證明),DPOS(Delegate Proof of Stake,股份授權證明機制)等。
區塊鏈的概念首次在論文《比特幣:一種點對點的電子現金系統(Bitcoin: A Peer-to-Peer Electronic Cash System)》中提出,作者為自稱中本聰(Satoshi Nakamoto)的個人(或團體)。因此可以把比特幣看成區塊鏈的首個在金融支付領域中的應用。
【通俗解釋】
無論多大的系統或者多小的網站,一般在它背後都有資料庫。那麼這個資料庫由誰來維護?在一般情況下,誰負責運營這個網路或者系統,那麼就由誰來進行維護。如果是微信資料庫肯定是騰訊團隊維護,淘寶的資料庫就是阿里的團隊在維護。大家一定認為這種方式是天經地義的,但是區塊鏈技術卻不是這樣。
如果我們把資料庫想像成是一個賬本:比如支付寶就是很典型的賬本,任何數據的改變就是記賬型的。資料庫的維護我們可以認為是很簡單的記賬方式。在區塊鏈的世界也是這樣,區塊鏈系統中的每一個人都有機會參與記賬。系統會在一段時間內,可能選擇十秒鍾內,也可能十分鍾,選出這段時間記賬最快最好的人,由這個人來記賬,他會把這段時間資料庫的變化和賬本的變化記在一個區塊(block)中,我們可以把這個區塊想像成一頁紙上,系統在確認記錄正確後,會把過去賬本的數據指紋鏈接(chain)這張紙上,然後把這張紙發給整個系統裡面其他的所有人。然後周而復始,系統會尋找下一個記賬又快又好的人,而系統中的其他所有人都會獲得整個賬本的副本。這也就意味著這個系統每一個人都有一模一樣的賬本,這種技術,我們就稱之為區塊鏈技術(Blockchain),也稱為分布式賬本技術。
由於每個人(計算機)都有一模一樣的賬本,並且每個人(計算機)都有著完全相等的權利,因此不會由於單個人(計算機)失去聯系或宕機,而導致整個系統崩潰。既然有一模一樣的賬本,就意味著所有的數據都是公開透明的,每一個人可以看到每一個賬戶上到底有什麼數字變化。它非常有趣的特性就是,其中的數據無法篡改。因為系統會自動比較,會認為相同數量最多的賬本是真的賬本,少部分和別人數量不一樣的賬本是虛假的賬本。在這種情況下,任何人篡改自己的賬本是沒有任何意義的,因為除非你能夠篡改整個系統裡面大部分節點。如果整個系統節點只有五個、十個節點也許還容易做到,但是如果有上萬個甚至上十萬個,並且還分布在互聯網上的任何角落,除非某個人能控制世界上大多數的電腦,否則不太可能篡改這樣大型的區塊鏈。
【要素】
結合區塊鏈的定義,我們認為必須具有如下四點要素才能被稱為公開區塊鏈技術,如果只具有前3點要素,我們將認為其為私有區塊鏈技術(私有鏈)。
1、點對點的對等網路(權力對等、物理點對點連接)
2、可驗證的數據結構(可驗證的PKC體系,不可篡改資料庫)
3、分布式的共識機制(解決拜占庭將軍問題,解決雙重支付)
4、納什均衡的博弈設計(合作是演化穩定的策略)
【特性】
結合定義區塊鏈的定義,區塊鏈會現實出四個主要的特性:去中心化(Decentralized)、去信任(Trustless)、集體維護(Collectively maintain)、可靠資料庫(Reliable Database)。並且由四個特性會引申出另外2個特性:開源(Open Source)、隱私保護(Anonymity)。如果一個系統不具備這些特徵,將不能視其為基於區塊鏈技術的應用。
去中心化(Decentralized):整個網路沒有中心化的硬體或者管理機構,任意節點之間的權利和義務都是均等的,且任一節點的損壞或者失去都會不影響整個系統的運作。因此也可以認為區塊鏈系統具有極好的健壯性。
去信任(Trustless):參與整個系統中的每個節點之間進行數據交換是無需互相信任的,整個系統的運作規則是公開透明的,所有的數據內容也是公開的,因此在系統指定的規則范圍和時間范圍內,節點之間是不能也無法欺騙其它節點。
集體維護(Collectively maintain):系統中的數據塊由整個系統中所有具有維護功能的節點來共同維護的,而這些具有維護功能的節點是任何人都可以參與的。
可靠資料庫(Reliable Database):整個系統將通過分資料庫的形式,讓每個參與節點都能獲得一份完整資料庫的拷貝。除非能夠同時控制整個系統中超過51%的節點,否則單個節點上對資料庫的修改是無效的,也無法影響其他節點上的數據內容。因此參與系統中的節點越多和計算能力越強,該系統中的數據安全性越高。
開源(Open Source):由於整個系統的運作規則必須是公開透明的,所以對於程序而言,整個系統必定會是開源的。
隱私保護(Anonymity):由於節點和節點之間是無需互相信任的,因此節點和節點之間無需公開身份,在系統中的每個參與的節點的隱私都是受到保護的。
【區塊鏈意義之一 :解決拜占庭將軍問題】
區塊鏈解決的核心問題不是「數字貨幣」,而是在信息不對稱、不確定的環境下,如何建立滿足經濟活動賴以發生、發展的「信任」生態體系。而這個問題稱之為「拜占庭將軍問題」,也可稱為「拜占庭容錯」或者「兩軍問題」,這是一個分布式系統中進行信息機交互時面臨的難題,即在整個網路中的任意節點都無法信任與之通信的對方時,如何能創建出共識基礎來進行安全的信息交互而無需擔心數據被篡改。區塊鏈使用演算法證明機制來保證整個網路的安全,藉助它,整個系統中的所有節點能夠在去信任的環境下自動安全的交換數據。更多介紹請參見《比特幣與拜占庭將軍問題》。
【區塊鏈意義之二:實現跨國價值轉移】
互聯網誕生最初,最早核心解決的問題是信息製造和傳輸,我們可以通過互聯網將信息快速生成並且復制到全世界每一個有著網路的角落,但是它尚始終不能解決價值轉移和信用轉移。這里所謂的價值轉移是指,在網路中每個人都能夠認可和確認的方式,將某一部分價值精確的從某一個地址轉移到另一個地址,而且必須確保當價值轉移後,原來的地址減少了被轉移的部分,而新的地址增加了所轉移的價值。這里說的價值可以是貨幣資產,也可以是某種實體資產或者虛擬資產(包括有價證券、金融衍生品等)。而這操作的結果必須獲得所有參與方的認可,且其結果不能受到任何某一方的操縱。
在目前的互聯網中也有各種各樣的金融體系,也有許多政府銀行提供或者第三方提供的支付系統,但是它還是依靠中心化的方案來解決。所謂中心化的方案,就是通過某個公司或者政府信用作為背書,將所有的價值轉移計算放在一個中心伺服器(集群)中,盡管所有的計算也是由程序自動完成,但是卻必須信任這個中心化的人或者機構。事實上通過中心化的信用背書來解決,也只能將信用局限在一定的機構、地區或者國家的范圍之內。由此可以看出,必須要解決的這個根本問題,那就是信用。所以價值轉移的核心問題是跨國信用共識。
在如此紛繁復雜的全球體系中,要憑空建立一個全球性的信用共識體系是很難的,由於每個國家的政治、經濟和文化情況不同,對於兩個國家的企業和政府完全互信是幾乎做不到的,這也就意味著無論是以個人抑或企業政府的信用進行背書,對於跨國之間的價值交換即使可以完成,也有著巨大的時間和經濟成本。但是在漫長的人類 歷史 中,無論每個國家的宗教、政治和文化是如何的不同,唯一能取得共識的是數學(基礎科學)。因此,可以毫不誇張的說,數學(演算法)是全球文明的最大公約數,也是全球人類獲得最多共識的基礎。如果我們以數學演算法(程序)作為背書,所有的規則都建立一個公開透明的數學演算法(程序)之上,能夠讓所有不同政治文化背景的人群獲得共識。
【未來的發展】
互聯網將使得全球之間的互動越來越緊密,伴隨而來的就是巨大的信任鴻溝。目前現有的主流資料庫技術架構都是私密且中心化的,在這個架構上是永遠無法解決價值轉移和互信問題。所以區塊鏈技術有可能將成為下一代資料庫架構。通過去中心化技術,將能夠在大數據的基礎上完成數學(演算法)背書、全球互信這個巨大的進步。
區塊鏈技術作為一種特定分布式存取數據技術,它通過網路中多個參與計算的節點開共同參與數據的計算和記錄,並且互相驗證其信息的有效性(防偽)。從這一點來,區塊鏈技術也是一種特定的資料庫技術。互聯網剛剛進入大數據時代,但是從目前來看,大數據還處於非常基礎的階段。但是當進入到區塊鏈資料庫階段,將進入到真正的強信任背書的大數據時代。這裡面的所有數據都獲得堅不可摧的質量,任何人都沒有能力也沒有必要去質疑。
也許我們現在正處在一個重大的轉折點之上——和工業革命所帶來的深刻變革幾乎相同的重大轉折的早期階段。不僅僅是新技術指數級、數字化和組合式的進步與變革,更多的驚喜也許還會在我們前面。在未來的24個月里,這個星球所增長的計算機算力和記錄的數據將會超過所有 歷史 階段的總和。在過去的24個月里,這個增值可能已經超過了1000倍。這些數字化的數據信息還在以比摩爾定律更快的速度增長。區塊鏈技術將不僅僅應用在金融支付領域,而是將會擴展到目前所有應用范圍,諸如去中心化的微博、微信、搜索、租房,甚至是打車軟體都有可能會出現。因為區塊鏈將可以讓人類無地域限制的、去信任的方式來進行大規模協作。
區塊鏈是一種技術,基於這項技術產生很多應用,包括與數據和信息相關的一切行業業務,比特幣就是其中最為人熟知的一種應用。對於區塊鏈的通俗解釋就是,假如在網上買一隻口紅,首先找到心儀的產品和賣家下單,先把錢給中間平台,等到賣家發貨買家確認收貨以後,中間平台再把錢轉給賣家,因為信任問題買賣家之間都依賴於中間平台,而區塊鏈作為去中心化的分布式賬本資料庫,則著力於去掉這個中間平台但同時又解決信任問題。在區塊鏈中每個人擁有自己的記賬本,用來記錄發生的每一件事,假如在交易中出現賣家拿錢不發貨的行為,這一條記錄將永久存在不可修改,不需要互相交換信息,區塊鏈的世界會選擇在同一個時間節點記錄最快質量最好的那個人的記賬本進行復制發送並串聯,最後越疊越厚形成區塊。
大家在談論虛擬貨幣時,往往離不開區塊鏈這個概念,那麼區塊鏈到底是個神馬玩意呢?
區塊鏈是一種底層技術,本質上是一個去中心化的分布式賬本資料庫。聽起來好像十分高端,遙不可及,其實是很容易理解的。
舉個例子,假如要在淘寶上購買商品,那麼一般首先要做的就是打開淘寶,找到想要的商品並下單將錢支付給作為交易中介的淘寶。等收到商品並確認收貨後淘寶便會將貨款打給賣家。這本來只是我和賣家的交易,但卻多了個「中心」,即淘寶。
在交易進行的過程中,這個「中心」擁有無限大的權力,甚至隨意修改賬單。因此,「中心」往往需要強大的後台為其背書。
於是,有一個名叫中本聰的男人想要幹掉這個權力無窮大的中心,他想創造一個去中心化的系統,在這個系統里,每個人都是中心,都有記賬的權力。於是,他創造了比特幣。
在比特幣的系統中,每個人都有一個小賬本用以記錄發生的每一筆交易。一筆交易只有經過大部分人確認後才有效。如果賣家不發貨,那麼每個人的小賬本都會將這件事記錄下來,讓他無處可逃。
這時候大家可能會有疑問,既然只是一個公開的賬本,那麼為什麼又要叫區塊鏈呢?這就涉及到了共識問題,區塊鏈系統是一個由眾多「中心」組成的系統,整個區塊鏈是屬於所有參與記賬的個體的。這時候就產生了新的問題,一個系統必須要有秩序才能長遠的存在。假如記賬者可以不計成本地胡作非為,那就可能出現本來只是購買一台手機,但收到的卻是一台特斯拉的情況。
於是,中本聰發明了一種名為PoW的共識方式。這種方式提高了記賬者記賬的成本,讓其不能輕易作惡。PoW通過密碼學的方式要求記賬者需要通過競爭計算能力來獲取記賬權,第一個計算出結果的記賬者即可獲得一個由若干筆交易打包而來的區塊的記賬權,同時獲得一定的代幣作為獎勵。這就是我們俗稱的「挖礦」。
既然記賬者已經將一個包含了若干筆交易的區塊記錄了下來,那麼系統就需要進行整理排序,不可能讓無數的區塊雜亂無章地分布在系統中。於是就需要把所有區塊按照時間順序首尾相連鏈接鏈接起來,這時,區塊鏈便誕生了。區塊鏈的核心是技術。
E. 區塊鏈中的工作量證明機制(POW)是什麼
比特幣挖礦採用工作量證明機制,是什麼意思呢?
工作量證明(Proof of Work,簡稱POW)是共識機制的一種,可簡單理解為一份證明,證明你做過一定量的工作,即我通過查看工作結果就能知道你完成了指定量的工作。
比特幣挖礦採用的就是工作量證明機制,比特幣網路通過調節計算難度,保證每次競爭記賬都需要全網礦工計算約10分鍾,才能算出一個滿足條件的結果。該結果即「區塊頭」里包含的隨機數。
工作量證明是指,如果礦工找到了一個滿足條件的結果,我們便可以認為全網礦工完成了指定難度系數的工作量。獲得記賬權的幾率取決於礦工工作量佔比全網的比例,如果佔比30%,那麼獲得記賬權的幾率也是30%。所以提高工作量佔比才能提高競爭力,才能獲得更多新誕生的比特幣!
F. 深入了解區塊鏈的共識機制及演算法原理
所謂「共識機制」,是通過特殊節點的投票,在很短的時間內完成對交易的驗證和確認;對一筆交易,如果利益不相乾的若干個節點能夠達成共識,我們就可以認為全網對此也能夠達成共識。再通俗一點來講,如果中國一名微博大V、美國一名虛擬幣玩家、一名非洲留學生和一名歐洲旅行者互不相識,但他們都一致認為你是個好人,那麼基本上就可以斷定你這人還不壞。
要想整個區塊鏈網路節點維持一份相同的數據,同時保證每個參與者的公平性,整個體系的所有參與者必須要有統一的協議,也就是我們這里要將的共識演算法。比特幣所有的節點都遵循統一的協議規范。協議規范(共識演算法)由相關的共識規則組成,這些規則可以分為兩個大的核心:工作量證明與最長鏈機制。所有規則(共識)的最終體現就是比特幣的最長鏈。共識演算法的目的就是保證比特幣不停地在最長鏈條上運轉,從而保證整個記賬系統的一致性和可靠性。
區塊鏈中的用戶進行交易時不需要考慮對方的信用、不需要信任對方,也無需一個可信的中介機構或中央機構,只需要依據區塊鏈協議即可實現交易。這種不需要可信第三方中介就可以順利交易的前提是區塊鏈的共識機制,即在互不了解、信任的市場環境中,參與交易的各節點出於對自身利益考慮,沒有任何違規作弊的動機、行為,因此各節點會主動自覺遵守預先設定的規則,來判斷每一筆交易的真實性和可靠性,並將檢驗通過的記錄寫入到區塊鏈中。各節點的利益各不相同,邏輯上將它們沒有合謀欺騙作弊的動機產生,而當網路中有的節點擁有公共信譽時,這一點尤為明顯。區塊鏈技術運用基於數學原理的共識演算法,在節點之間建立「信任」網路,利用技術手段從而實現一種創新式的信用網路。
目前區款連行業內主流的共識演算法機制包含:工作量證明機制、權益證明機制、股份授權證明機制和Pool驗證池這四大類。
工作量證明機制即對於工作量的證明,是生成要加入到區塊鏈中的一筆新的交易信息(即新區塊)時必須滿足的要求。在基於工作量證明機制構建的區塊鏈網路中,節點通過計算隨機哈希散列的數值解爭奪記賬權,求得正確的數值解以生成區塊的能力是節點算力的具體表現。工作量證明機制具有完全去中心化的優點,在以工作量證明機制為共識的區塊鏈中,節點可以自由進出。大家所熟知的比特幣網路就應用工作量證明機制來生產新的貨幣。然而,由於工作量證明機制在比特幣網路中的應用已經吸引了全球計算機大部分的算力,其他想嘗試使用該機制的區塊鏈應用很難獲得同樣規模的算力來維持自身的安全。同時,基於工作量證明機制的挖礦行為還造成了大量的資源浪費,達成共識所需要的周期也較長,因此該機制並不適合商業應用。
2012年,化名Sunny King的網友推出了Peercoin,該加密電子貨幣採用工作量證明機制發行新幣,採用權益證明機制維護網路安全,這是權益證明機制在加密電子貨幣中的首次應用。與要求證明人執行一定量的計算工作不同,權益證明要求證明人提供一定數量加密貨幣的所有權即可。權益證明機制的運作方式是,當創造一個新區塊時,礦工需要創建一個「幣權」交易,交易會按照預先設定的比例把一些幣發送給礦工本身。權益證明機制根據每個節點擁有代幣的比例和時間,依據演算法等比例地降低節點的挖礦難度,從而加快了尋找隨機數的速度。這種共識機制可以縮短達成共識所需的時間,但本質上仍然需要網路中的節點進行挖礦運算。因此,PoS機制並沒有從根本上解決PoW機制難以應用於商業領域的問題。
股份授權證明機制是一種新的保障網路安全的共識機制。它在嘗試解決傳統的PoW機制和PoS機制問題的同時,還能通過實施科技式的民主抵消中心化所帶來的負面效應。
股份授權證明機制與董事會投票類似,該機制擁有一個內置的實時股權人投票系統,就像系統隨時都在召開一個永不散場的股東大會,所有股東都在這里投票決定公司決策。基於DPoS機制建立的區塊鏈的去中心化依賴於一定數量的代表,而非全體用戶。在這樣的區塊鏈中,全體節點投票選舉出一定數量的節點代表,由他們來代理全體節點確認區塊、維持系統有序運行。同時,區塊鏈中的全體節點具有隨時罷免和任命代表的權力。如果必要,全體節點可以通過投票讓現任節點代表失去代表資格,重新選舉新的代表,實現實時的民主。
股份授權證明機制可以大大縮小參與驗證和記賬節點的數量,從而達到秒級的共識驗證。然而,該共識機制仍然不能完美解決區塊鏈在商業中的應用問題,因為該共識機制無法擺脫對於代幣的依賴,而在很多商業應用中並不需要代幣的存在。
Pool驗證池基於傳統的分布式一致性技術建立,並輔之以數據驗證機制,是目前區塊鏈中廣泛使用的一種共識機制。
Pool驗證池不需要依賴代幣就可以工作,在成熟的分布式一致性演算法(Pasox、Raft)基礎之上,可以實現秒級共識驗證,更適合有多方參與的多中心商業模式。不過,Pool驗證池也存在一些不足,例如該共識機制能夠實現的分布式程度不如PoW機制等
這里主要講解區塊鏈工作量證明機制的一些演算法原理以及比特幣網路是如何證明自己的工作量的,希望大家能夠對共識演算法有一個基本的認識。
工作量證明系統的主要特徵是客戶端要做一定難度的工作來得到一個結果,驗證方則很容易通過結果來檢查客戶端是不是做了相應的工作。這種方案的一個核心特徵是不對稱性:工作對於請求方是適中中的,對於驗證方是易於驗證的。它與驗證碼不同,驗證碼是易於被人類解決而不是易於被計算機解決。
下圖所示的為工作量證明流程。
舉個例子,給個一個基本的字元創「hello,world!」,我們給出的工作量要求是,可以在這個字元創後面添加一個叫做nonce(隨機數)的整數值,對變更後(添加nonce)的字元創進行SHA-256運算,如果得到的結果(一十六進制的形式表示)以「0000」開頭的,則驗證通過。為了達到這個工作量證明的目標,需要不停地遞增nonce值,對得到的字元創進行SHA-256哈希運算。按照這個規則,需要經過4251次運算,才能找到前導為4個0的哈希散列。
通過這個示例我們對工作量證明機制有了一個初步的理解。有人或許認為如果工作量證明只是這樣一個過程,那是不是只要記住nonce為4521使計算能通過驗證就行了,當然不是了,這只是一個例子。
下面我們將輸入簡單的變更為」Hello,World!+整數值」,整數值取1~1000,也就是說將輸入變成一個1~1000的數組:Hello,World!1;Hello,World!2;...;Hello,World!1000。然後對數組中的每一個輸入依次進行上面的工作量證明—找到前導為4個0的哈希散列。
由於哈希值偽隨機的特性,根據概率論的相關知識容易計算出,預計要進行2的16次方次數的嘗試,才能得到前導為4個0的哈希散列。而統計一下剛剛進行的1000次計算的實際結果會發現,進行計算的平均次數為66958次,十分接近2的16次方(65536)。在這個例子中,數學期望的計算次數實際就是要求的「工作量」,重復進行多次的工作量證明會是一個符合統計學規律的概率事件。
統計輸入的字元創與得到對應目標結果實際使用的計算次數如下:
對於比特幣網路中的任何節點,如果想生成一個新的區塊加入到區塊鏈中,則必須解決出比特幣網路出的這道謎題。這道題的關鍵要素是工作量證明函數、區塊及難度值。工作量證明函數是這道題的計算方法,區塊是這道題的輸入數據,難度值決定了解這道題的所需要的計算量。
比特幣網路中使用的工作量證明函數正是上文提及的SHA-256。區塊其實就是在工作量證明環節產生的。曠工通過不停地構造區塊數據,檢驗每次計算出的結果是否滿足要求的工作量,從而判斷該區塊是不是符合網路難度。區塊頭即比特幣工作量證明函數的輸入數據。
難度值是礦工們挖掘的重要參考指標,它決定了曠工需要經過多少次哈希運算才能產生一個合法的區塊。比特幣網路大約每10分鍾生成一個區塊,如果在不同的全網算力條件下,新區塊的產生基本都保持這個速度,難度值必須根據全網算力的變化進行調整。總的原則即為無論挖礦能力如何,使得網路始終保持10分鍾產生一個新區塊。
難度值的調整是在每個完整節點中獨立自動發生的。每隔2016個區塊,所有節點都會按照統一的格式自動調整難度值,這個公式是由最新產生的2016個區塊的花費時長與期望時長(按每10分鍾產生一個取款,則期望時長為20160分鍾)比較得出來的,根據實際時長一期望時長的比值進行調整。也就是說,如果區塊產生的速度比10分鍾快,則增加難度值;反正,則降低難度值。用公式來表達如下:
新難度值=舊難度值*(20160分鍾/過去2016個區塊花費時長)。
工作量證明需要有一個目標值。比特幣工作量證明的目標值(Target)的計算公式如下:
目標值=最大目標值/難度值,其中最大目標值為一個恆定值
目標值的大小與難度值成反比,比特幣工作量證明的達成就是礦中計算出來的區塊哈希值必須小於目標值。
我們也可以將比特幣工作量的過程簡單的理解成,通過不停變更區塊頭(即嘗試不同nonce值)並將其作為輸入,進行SHA-256哈希運算,找出一個有特定格式哈希值的過程(即要求有一定數量的前導0),而要求的前導0個數越多,難度越大。
可以把比特幣將這道工作量證明謎題的步驟大致歸納如下:
該過程可以用下圖表示:
比特幣的工作量證明,就是我們俗稱「挖礦」所做的主要工作。理解工作量證明機制,將為我們進一步理解比特幣區塊鏈的共識機制奠定基礎。
G. 什麼是區塊鏈
【定義】
區塊鏈(Blockchain)是指通過去中心化和去信任的方式集體維護一個可靠資料庫的技術方案。該技術方案讓參與系統中的任意多個節點,把一段時間系統內全部信息交流的數據,通過密碼學演算法計算和記錄到一個數據塊(block),並且生成該數據塊的指紋用於鏈接(chain)下個數據塊和校驗,系統所有參與節點來共同認定記錄是否為真。
區塊鏈是一種類似於NoSQL(非關系型資料庫)這樣的技術解決方案統稱,並不是某種特定技術,能夠通過很多編程語言和架構來實現區塊鏈技術。並且實現區塊鏈的方式種類也有很多,目前常見的包括POW(Proof of Work,工作量證明),POS(Proof of Stake,權益證明),DPOS(Delegate Proof of Stake,股份授權證明機制)等。
區塊鏈的概念首次在論文《比特幣:一種點對點的電子現金系統(Bitcoin:A Peer-to-Peer Electronic Cash System)》中提出,作者為自稱中本聰(Satoshi Nakamoto)的個人(或團體)。因此可以把比特幣看成區塊鏈的首個在金融支付領域中的應用。
【通俗解釋】
無論多大的系統或者多小的網站,一般在它背後都有資料庫。那麼這個資料庫由誰來維護?在一般情況下,誰負責運營這個網路或者系統,那麼就由誰來進行維護。如果是微信資料庫肯定是騰訊團隊維護,淘寶的資料庫就是阿里的團隊在維護。大家一定認為這種方式是天經地義的,但是區塊鏈技術卻不是這樣。
如果我們把資料庫想像成是一個賬本:比如支付寶就是很典型的賬本,任何數據的改變就是記賬型的。資料庫的維護我們可以認為是很簡單的記賬方式。在區塊鏈的世界也是這樣,區塊鏈系統中的每一個人都有機會參與記賬。系統會在一段時間內,可能選擇十秒鍾內,也可能十分鍾,選出這段時間記賬最快最好的人,由這個人來記賬,他會把這段時間資料庫的變化和賬本的變化記在一個區塊(block)中,我們可以把這個區塊想像成一頁紙上,系統在確認記錄正確後,會把過去賬本的數據指紋鏈接(chain)這張紙上,然後把這張紙發給整個系統裡面其他的所有人。然後周而復始,系統會尋找下一個記賬又快又好的人,而系統中的其他所有人都會獲得整個賬本的副本。這也就意味著這個系統每一個人都有一模一樣的賬本,這種技術,我們就稱之為區塊鏈技術(Blockchain),也稱為分布式賬本技術。
由於每個人(計算機)都有一模一樣的賬本,並且每個人(計算機)都有著完全相等的權利,因此不會由於單個人(計算機)失去聯系或宕機,而導致整個系統崩潰。既然有一模一樣的賬本,就意味著所有的數據都是公開透明的,每一個人可以看到每一個賬戶上到底有什麼數字變化。它非常有趣的特性就是,其中的數據無法篡改。因為系統會自動比較,會認為相同數量最多的賬本是真的賬本,少部分和別人數量不一樣的賬本是虛假的賬本。在這種情況下,任何人篡改自己的賬本是沒有任何意義的,因為除非你能夠篡改整個系統裡面大部分節點。如果整個系統節點只有五個、十個節點也許還容易做到,但是如果有上萬個甚至上十萬個,並且還分布在互聯網上的任何角落,除非某個人能控制世界上大多數的電腦,否則不太可能篡改這樣大型的區塊鏈。
【要素】
結合區塊鏈的定義,我們認為必須具有如下四點要素才能被稱為公開區塊鏈技術,如果只具有前3點要素,我們將認為其為私有區塊鏈技術(私有鏈)。
1、點對點的對等網路(權力對等、物理點對點連接)
2、可驗證的數據結構(可驗證的PKC體系,不可篡改資料庫)
3、分布式的共識機制(解決拜占庭將軍問題,解決雙重支付)
4、納什均衡的博弈設計(合作是演化穩定的策略)
【特性】
結合定義區塊鏈的定義,區塊鏈會現實出四個主要的特性:去中心化(Decentralized)、去信任(Trustless)、集體維護(Collectively maintain)、可靠資料庫(Reliable Database)。並且由四個特性會引申出另外2個特性:開源(Open Source)、隱私保護(Anonymity)。如果一個系統不具備這些特徵,將不能視其為基於區塊鏈技術的應用。
去中心化(Decentralized):整個網路沒有中心化的硬體或者管理機構,任意節點之間的權利和義務都是均等的,且任一節點的損壞或者失去都會不影響整個系統的運作。因此也可以認為區塊鏈系統具有極好的健壯性。
去信任(Trustless):參與整個系統中的每個節點之間進行數據交換是無需互相信任的,整個系統的運作規則是公開透明的,所有的數據內容也是公開的,因此在系統指定的規則范圍和時間范圍內,節點之間是不能也無法欺騙其它節點。
集體維護(Collectively maintain):系統中的數據塊由整個系統中所有具有維護功能的節點來共同維護的,而這些具有維護功能的節點是任何人都可以參與的。
可靠資料庫(Reliable Database):整個系統將通過分資料庫的形式,讓每個參與節點都能獲得一份完整資料庫的拷貝。除非能夠同時控制整個系統中超過51%的節點,否則單個節點上對資料庫的修改是無效的,也無法影響其他節點上的數據內容。因此參與系統中的節點越多和計算能力越強,該系統中的數據安全性越高。
開源(Open Source):由於整個系統的運作規則必須是公開透明的,所以對於程序而言,整個系統必定會是開源的。
隱私保護(Anonymity):由於節點和節點之間是無需互相信任的,因此節點和節點之間無需公開身份,在系統中的每個參與的節點的隱私都是受到保護的。
H. 區塊鏈共識機制之一:POW工作量證明機制
區塊鏈可以理解為一個不可篡改的公共賬本,所有參與者都能驗證交易並進行記賬,即為分布式賬本。那到底由誰來記賬?又如何保證賬本的一致性、准確性呢?也就是區塊鏈的共識機制是如何的?
區塊鏈的共識機制就是解決由誰來記賬(構造區塊),以及如何維護區塊鏈的一致性問題。目前區塊鏈項目採用的共識機制有多種,如:POW工作量證明機制,POS權益證明機制,DPOS股份授權證明機制等等。本文說明POW工作量證明機制。
區塊鏈的第一個成功應用比特幣系統採用的POW工作量證明機制。即以比特幣系統為例說明POW機制,首先比特幣系統有一套激勵機制讓所有參與者競爭記賬的權利,即誰擁有記賬權誰將獲取構造新區塊的比特幣獎勵(目前獎勵為12.5比特幣),同時獲取新區塊內所有交易的手續費作為獎勵。
參與者如何競爭記賬權利呢?參與者通過自己的算力計算一道數學難題,誰先計算的結果,誰就擁有了記賬的權利,也就可獲得構造新區塊的獎勵。這道數學難題就是尋找一個隨機數Nonce,使得對區塊頭的哈希計算的結果小於目標值,Nonce本身是區塊頭中的一個欄位,所以通過不斷的嘗試Nonce的值,以滿足區塊頭的哈希計算結果小於目標值。通過動態調整目標值,即可調整計算的Nonce值的難度。
關於哈希計算Nonce的過程通常類比為擲篩子游戲,基於參與游戲的篩子的個數通過調整擲得篩子的點數可調整游戲的難度。例如:100個人參與擲篩子,總共有100個篩子,要求擲得點數為100為贏,則100個人誰先擲得點數100即為勝利者,即擁有了記賬權。如果發現大家擲出100點的時間太快,則可增加難度,要求擲得點數為80為贏。如果又有100個人參與游戲,則游戲中增加了篩子數,如:篩子數增加為200個,同樣通過設置擲得點數來調整游戲的難度。
篩子類似於比特幣網路的算力,擲得點數類似於比特幣網路可動態調整的目標值。
區塊鏈以最長的鏈條視為正確的鏈條,如果存在同時出現兩個區塊,會暫時並行記錄兩個區塊,後續再生成的區塊基於其中的某一個區塊,將會形成的最長的鏈條作為一致性的鏈條,另外一個區塊將會被丟棄,比特幣是基於6個區塊的確認,所以被丟棄的區塊將不會獲得比特幣系統的獎勵,也就是白白將競爭記賬權的算力(電費)浪費了。基於工作量的激勵,參與者必然盡最大能力構造正確的區塊,也就是滿足區塊鏈的一致性。即全網的所有用戶可以達成唯一的一致性的公共賬本。
目前比特幣系統全網算力已達到驚人的24.75EH/s,其中1E=1000P,1P=1000T,1T=1000G,1G=1000M,1M=1000K,1K=1000,H/s為每秒一次哈希計算(哈希碰撞),也就是每秒進行24.75E次哈希計算,且仍有持續的算力加入比特幣系統。比特幣記賬權的競爭,提供算力的硬體從CPU,GPU,專業礦機,礦池。目前單機版的專業礦機已無法競爭到記賬權,必須由多台礦機組合為礦池才能競爭到記賬權。