從一筆交易看區塊鏈運作流程

圖片來源: 

iThome

區塊鏈(Blockchain)顯然已經被許多人神化,好像各行各業都可以用區塊鏈技術,不過某種程度上,它卻像個黑盒子,大家都知道區塊鏈具有許多特性跟好處,卻不清楚它到底怎麼做到。

區塊鏈並非單一創新技術,而是將許多跨領域技術湊在一起,包括密碼學、數學、演算法與經濟模型,並結合點對點網路關係,利用數學基礎就能建立信任效果,成為一個不需基於彼此信任基礎、也不需仰賴單一中心化機構就能夠運作的分散式系統,而比特幣便是第一個採用區塊鏈技術而打造出的一套P2P電子現金系統,用來實現一個可去中心化,並確保交易安全性、可追蹤性的數位貨幣體系。

不過,區塊鏈究竟是如何運作,其中又包含了哪些關鍵技術,使其被稱作信任機器(Trust Machine),一筆交易到底要如何在一個彼此互不信任的P2P網路中,不經由傳統的信任機構(如銀行、證券交易所、第三方機構等中心化機構),就能完成交易驗證?

要搞懂區塊鏈運作原理,可先區分出交易(Transaction)與區塊(Block)兩個部分,這裡我們分別從區塊鏈中一筆交易產生到完成驗證的流程,以及圖解一個區塊,來了解區塊鏈的運作原理,並進一步拆解5大區塊鏈關鍵技術,看它到底怎麼做到大家口中的基於零信任基礎、去中心化、可追蹤又不可竄改。

 

 從一筆交易看區塊鏈運作流程 

在比特幣區塊鏈中,當一筆交易經由某個節點或錢包產生時,這筆交易需要被傳送給其它節點來作驗證。做法是將交易資料經由數位簽章加密並經由Hash函數得出一串代表此交易的唯一Hash值後,再將這個Hash值廣播(Broadcast)給比特幣區塊鏈網絡中的其它參與節點進行驗證。

產生一筆新交易
一筆新交易產生時,會先被廣播到區塊鏈網絡中的其它參與節點

各節點將數筆新交易放進區塊
每個節點會將數筆未驗證的交易Hash值收集到區塊中,每個區塊可以包含數百筆或上千筆交易

決定由誰來驗證這些交易
各節點進行工作量證明的計算來決定誰可以驗證交易,由最快算出結果的節點來驗證交易,這就是取得共識的做法。

取得驗證權的節點將區塊廣播給所有節點
最快完成POW的節點,會將自己的區塊廣播給其他節點

各節點驗證並接上新區塊
其他節點會確認這個區塊所包含的交易是否有效,確認沒被重複花費且具有效數位簽章後,接受該區塊,此時區塊才正式接上區塊鏈,無法再竄改資料。

交易驗證完成
所有節點一旦接受該區塊後,先前沒算完POW工作的區塊會失效,各節點會重新建立一個區塊,繼續下一回POW計算工作。

 

【相關報導請參考「區塊鏈」專題】


Advertisement

更多 iThome相關內容