2018/06/15

區塊鏈 (Block Chain)

出處:
http://wiki.mbalib.com/zh-tw/%E5%8C%BA%E5%9D%97%E9%93%BE
https://www.hksilicon.com/articles/1423425

區塊鏈起源於中本聰的比特幣,作為比特幣的底層技術,本質上是一個去中心化的資料庫。是指通過去中心化和去信任的方式集體維護一個可靠資料庫的技術方案。

區塊鏈技術就指一種全民參與記賬的方式。所有的系統背後都有一個資料庫,你可以把資料庫看成是就是一個大賬本。系統中的每個人都可以有機會參與記賬。在一定時間段內如果有任何數據變化,系統中每個人都可以來進行記賬,系統會評判這段時間內記賬最快最好的人,把他記錄的內容寫到賬本,並將這段時間內賬本內容發給系統內所有的其他人進行備份。這樣系統中的每個人都了一本完整的賬本。這種方式,我們就稱它為區塊鏈技術。

在技術層面,區塊鏈尚需突破性進展。比之於互聯網技術,人們可以用瀏覽器、APP等具體應用程式,實現信息的瀏覽、傳遞、交換和應用,但區塊鏈明顯缺乏這類突破性的應用程式,面臨高技術門檻障礙。

再比如,區塊容量問題,由於區塊鏈需要承載複製之前產生的全部信息,下一個區塊信息量要大於之前區塊信息量,這樣傳遞下去,區塊寫入信息會無限增大,帶來的信息存儲、驗證、容量問題有待解決。

區塊鏈系統的運行方式

中本聰很清楚建立一個支付系統的信用必須解決防止“重覆支付”問題,也就是不能造假幣。中心化的信用系統是靠國家機器防止造假幣。“比特幣”怎麼辦呢?中本聰的偉大創新是給每一筆交易“蓋時間戳”(timestamp)。每十分鐘一個區塊(block:相當於網路賬簿),把這十分鐘的全網交易都正確的蓋上時間戳。問題是誰來蓋呢?

讓所謂自稱“礦工”的人去競爭這十分鐘一個區塊的記賬權,競爭的規則就是正確記賬的同時要去解SHA256難題,誰能證明自己的電腦算力最快(所謂PROOF OF WORK 機制),就能競爭到這十分鐘區塊的合法記賬權,並得到二十五個比特幣的獎勵。這就是所謂俗稱的“挖礦”過程,實際是建立一個全網總賬——區塊鏈的去中心化信用過程,所以礦工更本質的職能是“記賬員”!

採用了一種追蹤比特幣的流水賬記錄法——UXTO。本質上,就是只記錄交易本身,而不記錄交易的結果。從金融系統設計角度來說,這種方式有點「交易清算分離」的意思。區塊鏈系統只處理所有的交易,而需要清算、查看餘額等信息,由區塊鏈節點自行處理。

講一個故事來理解一下UXTO:淘金者Tom挖到了一塊黃金,重量是100克,於是首先記錄了一條挖礦記錄,有100克黃金進入了Tom的口袋。然後Tom把這塊黃金送給了Alice,於是系統記錄了一條交易----有100克黃金從Tom的口袋轉移到了Alice的口袋。後來Alice又把黃金切成了兩半,賣給了Bob和Charlie,於是系統又記錄了一條交易----有100克黃金從Alice口袋裡轉出,分別轉給了Bob 50克和Charlie 50克。


每一個根節點都是一個CoinBase(挖礦交易),也就是每一枚比特幣的最初來源。繼而隨着交易的變動,這棵樹不斷的生長,每個葉子節點就是一個UXTO----Unspent Transaction Output----未花費過的交易輸出。嚴格來說,比特幣系統並不是一個樹結構,而是一個單向圖。伴隨着交易的複雜程度,中間樹枝會有不斷的交錯,但是不妨礙我們利用樹結構來理解它。

 
比特幣的UXTO系統遵守兩個規則:
  • 1、 除了 CoinBase(挖礦交易)之外,所有的資金來源都必須來自前面某一個或者幾個交易的UXTO;
  • 2、任何一筆交易的輸入總量必須等於輸出總量,等式兩邊必須配平
UXTO模式最大的好處就是,它忠實地記錄了交易。我們的現實世界是隨着時間流動的,交易一筆一筆地發生,比特幣的區塊鏈系統一筆一筆忠實地記錄著這個世界發生的事情,不能回滾,不能刪除。只要交易記錄準確了、清楚了,那麼每個人進行清算的結果就都不會出錯。

因此,「交易」是比特幣區塊鏈系統的核心,「記錄交易」是區塊鏈系統的設計原則,也是區塊鏈設計思想的核心之一。

0 意見 :

張貼留言

.

.
Related Posts Plugin for WordPress, Blogger...