區塊鏈是什麼?從經濟學角度切入分析


【本文刊登於雷鋒網:從經濟學角度看區塊鏈,作者敖萌,蘋果仁授權轉載】

雷鋒網AI金融評論按:本文作者為中國信息通信研究院(工信部電信研究院)專家敖萌博士,雷鋒網(公眾號:雷鋒網)獨家特約文章,雷鋒網與信通院聯合首發。 未來,敖萌博士原創的區塊鏈系列文章還將繼續刊出,雷鋒網與信通院相關平台同步更新,敬請關注!

提到區塊鏈,大家都會提到“拜占庭將軍問題”這個分佈式系統中的著名問題。

拜占庭將軍問題大概講的是:拜占庭N個在不同地方的將軍圍攻一個敵人,忠誠的將軍希望通過某種協議達成某個命令的一致(比如約定某個時間一起進攻),但其中一些背叛的將軍會通過發送錯誤的消息阻撓忠誠的將軍達成命令上的一致。 如果同時發起進攻的將軍數量少於M個,那麼不足以殲滅敵人反而容易被敵人全部殲滅。 怎樣做才能保證有多於M個將軍在同一時間一起發起進攻?

從經濟學角度看區塊鏈

拜占庭將軍問題是分佈式系統的一個經典模型,當分佈式系統沒有可靠的中心協調所有節點時,如何確保大多數節點的數據是一致的? 拜占庭將軍模型就是描述的這個問題。 一個區塊鏈系統能夠解決拜占庭將軍問題,那麼我們就說這個區塊鏈系統滿足拜占庭容錯。

需要注意一點:

在拜占庭將軍問題模型中,將軍們被分成了“忠誠的”和“背叛的”兩種。 這種分類事實上是以將軍們是否遵守“共識協議”來區分的。 在區塊鏈系統中,當一個節點不遵守共識協議,篡改正確的數據等行為,可以被看作是“背叛的”節點。

作為一個信息系統,從“拜占庭將軍問題”角度(即分佈式系統的數據一致性角度)分析就足夠了。 然而我在本系列的第一篇文章中就提到過,區塊鏈不僅僅是一個信息化的工具,區塊鍊是深入到業務內部,能夠對商業模式起到決定性作用的一種技術。 區塊鏈技術不僅僅是一個信息技術,更是一個“經濟技術”。 因此,我們就不能只從信息技術角度來分析區塊鏈了。

回到本章的正題,我們怎麼從經濟學角度來看區塊鏈? 這個題目太大了,並且我本人不是經濟學專業的,只能嘗試著從經濟學角度簡單分析一下比特幣區塊鏈系統。

從經濟學角度看區塊鏈

從經濟學角度來看,僅僅是遵守共識協議並不能保證一個經濟系統的穩定性。 事實上,“中本聰”在設計比特幣系統時,已經考慮到了很多經濟學方面的問題,因此比特幣系統中對礦工有挖礦獎勵,礦工還可以獲得轉賬手續費,以確保有足夠的算力能夠參與整個比特幣系統的維護。

經濟學的最基本假設:礦工是要追求利益最大化的

首先,對於礦工來說,遵守整個比特幣系統技術協議,有可能獲得比特幣。 不遵守,則直接就會被排除在系統之外,沒有收益。 因此,從“拜占庭將軍問題”分類來說,比特幣的礦工都是“忠誠的”,這就能夠使得整個比特幣系統是趨於穩定的。

從經濟學角度看區塊鏈

然而在遵守比特幣系統技術協議的前提下,其實還有很多種策略可以選擇。 這些策略都是在不違背技術協議的行動,但是對整個比特幣系統的經濟學運行穩定性有影響。 比如礦工可以選擇對其他礦工發起DDOS攻擊,拖慢競爭者的網絡,以提高自己挖到區塊的概率等。 這種情況可以讓礦工獲得更高的收益,但是一旦所有礦工之間都在相互DDOS攻擊,會造成整個比特幣網絡不可用,交易無法提交生效,進而導致整個比特幣的價值降低。

從經濟學角度看區塊鏈

還要注意一點, 礦工的身份有時候不僅僅是礦工,同時也是比特幣的交易者。 在這種情況下,礦工如果發起“雙花攻擊”,則礦工有可能獲取到大量的利益。

舉例來說,如果一個礦工Alice需要轉賬給Bob 1000比特幣,此時Alice在比特幣網絡上廣播一個Alice轉賬給Bob賬戶1000比特幣的交易,被其他礦工接收到,記入了他們的區塊中。 然而Alice自己則在區塊中記錄了另一筆交易——Alice轉賬給Alice_new賬戶1000比特幣,也就是說,Alice人為製造了一個分叉,在這個分叉點,製造了一筆雙花交易(一筆錢花了兩次)。

之後Alice一直默默的挖礦,直到產生了6個區塊後再次廣播挖礦結果。 如果Alice能夠掌握全網51%以上的算力,那麼這筆雙花交易最終被全網承認的將是Alice轉給Alice_new的這筆交易,而轉給Bob的將失效。 這時如果1比特幣的價格是3000美元,那麼Bob有可能損失掉了三百萬美元。 這是一筆非常大的數字。 這也就是我們經常提到的比特幣中的“51%攻擊”。

從經濟學角度看區塊鏈

由於整個比特幣系統是無中心化的,也就是說,我們沒有辦法記錄Alice這個礦工的信用,因此,即便發生了51%攻擊,Alice也得不到任何懲罰,相反,Alice還能夠繼續參與挖礦,並且繼續製造51%攻擊。 當然,如果這種事情頻繁發生,整個比特幣系統就會變得一文不值,因此,具有超級算力的礦工在發起51%攻擊時,也需要考慮是否會把整個比特幣系統拖垮。

其實不僅僅是算力超過51%的礦工可以發起雙花攻擊,如果一個礦工掌握了45%的算力,那麼他依然可以發起雙花攻擊,在我們通常認為6個區塊可以確認交易成功的概念下,45%算力發起雙花攻擊的成功率為(0.45/(1-0.45))的6次方——30%,(考慮到他掌握了45%的算力,那麼他單獨自己挖自己的分叉,另一個分叉就只有55%的算力了,所以是0.45/(1-0.45))也就是說,如果這個雙花交易的額度是1000比特幣,那麼他收益的期望是300比特幣,這種情況下,從博弈論角度來看,礦工發起雙花攻擊的可能性是極大的。

從經濟學角度看區塊鏈

由於比特幣區塊鏈系統的設計中,挖礦難度的變化率是比較慢的,因此,對於算力很高的礦工來說,在準備大幅增加硬件提高算力的同時發起雙花攻擊,這樣的行為有可能讓礦工獲得很高的收益。 當然,這種行為也同樣會導致比特幣的價值受到損害。

綜合上面的分析,我們可以得出結論:雖然比特幣區塊鏈系統在技術設計上已經非常成熟,但是一旦採用經濟學分析,仍然可以發現無中心化的比特幣系統依然存在很高的經濟風險,這種風險來源於算力的中心化。 目前整個比特幣網絡中,幾個大的礦池已經佔有了非常高的算力比例,在這種情況下,比特幣系統的價值已經很大程度上依賴於這些礦池的道德水平了。 不過,上面的所有分析是假設礦工發起了大額轉賬交易。 而目前由於比特幣價格非常高,大額交易是比較罕見的,因此,出現上述風險的概率是很低。