搖錢樹42:區塊鏈的運作模式
楊惟雯
一、區塊鏈運作簡例
以下,先用一個簡例來解釋區塊鏈是如何運作:
舉例來說,我和你打賭100元,預測明天陽明山的天氣。
我賭明天它會是晴天,你賭它會是雨天。
我們會有三種方式來完成交易:
1、我們彼此信賴。不論結果是晴天或雨天,輸家要給贏家100 元。
2、我們可訂定合約,如果有任何一方不願付錢,贏家可以告輸家。但要花錢花時間打官司,只為了討回100 元,實在是得不償失。
3、我們可找一個中立的第三者,每人分別先給它100 元,結果揭曉後,它再把所有的錢200 元給贏家。無奈的是,這個第三者也有可能捲款潛逃。
區塊鏈技術即在幫我們實現第三種交易方式,且安全、快速和便宜。
我們只要寫幾行程式碼,讓它在區塊鏈網絡 (Blockchain Network) 上執行,進行交易。
以上述打賭天氣的例子,這支程式會確保200 元的安全,並且一到明天會自動確認天氣狀況,結果揭曉後,也會自動將200 元匯到贏家的帳戶裡。
而且,在區塊鏈網絡上的交易,是無法被竄改或停止,故更適合於大型交易,如買賣一間房子或一家公司。
二、區塊鏈運作原理
區塊鏈技術乃應用密碼學、數學、演算法及經濟模型所組成,結合點對點的網路關係(P2P),並採分散式共識演算法。其運作原理如下:
◆由多個節點組成一個網路,
◆當某一個節點要發起一筆交易時,會先將交易廣播給其他節點,此時所有節點都可以經由共識演算法來決定誰可以驗證這筆交易,而這個取得共識過程(比特幣區塊鏈稱作挖礦),就像是讓所有節點一起來解一道數學題。
◆各節點解題過程中,驗證中的交易資料會被打包至區塊(資料塊)裡,並透過嚴格的密碼學規則來保護,一旦區塊中的資料遭到竄改,或不符合密碼學規則時,該區塊便會失效,無法完成交易驗證。
◆而每次僅由最快解題完成的節點來負責記帳,以確保公平性,當其中一個節點先解出題目時,便由該節點將驗證過的交易寫進區塊鏈(資料塊鏈)中,並廣播通知其他節點。當資料一旦被寫進區塊鏈之中,便無法再被竄改。這樣的機制讓所有節點共同來維護一本帳本,且一旦有人入侵網路想竄改帳本紀錄,也會立刻被發現。
三、比特幣應用案例
比特幣是最為人所知的一項使用區塊鏈技術的應用。此電子貨幣可被用來做物品交換媒介,就像美元、人民幣和房地產等交易。所以,我們也可利用比特幣來說明區塊鏈技術是如何運作,再帶出技術背後擁有的邏輯和機制的基本概念。
基本上,一個單位的電子比特幣 (BTC),並且就像真實的一塊錢貨幣一樣,本身是沒有價值的,只有在進行物品交易時才會產生價值。
在比特幣系統裡,有一本帳本 (ledger),它是一個電子檔案記錄著所有的交易紀錄。
圖 1. 比特幣電子帳本
這帳本不是存放在一個中央機構(像銀行),或是一個中央資料庫。它擁有無數份副本,散佈存放在區塊鏈網絡上的每一台電腦裡,而每台電腦我們稱為「節點 (node)」。
如果 David 想用比特幣轉帳給 Sandra,他就送一個訊息告訴網絡說:他的帳戶減 5 BTC,然後 Sandra 的帳戶加 5 BTC。在網絡中的每個節點都會收到訊息,並且將這筆交易記錄到自己的帳本裡,然後更新帳戶的餘額。
:圖 2. 請求交易訊息
說到這裡,此帳本是由一群電腦共同維護,而不是由一個類似銀行的中心機構來掌管,這有三個啟發:
- 在銀行系統中,我們只知道自己的交易紀錄和帳戶餘額,
而在區塊鏈網絡裡,每個人可以知道任何人的交易紀錄。 - 一般來說你信任你的銀行,而比特幣是分散式系統,運行在網路上,任何事情發生錯誤,是沒有客服人員可以幫你的。
- 區塊鏈不是建構在信賴情感上,其安全性和可靠性是透過特殊的數學函數和程式碼達到的。
至此,我們可以定義:區塊鏈是一個系統,它讓一群互聯的電腦,安全地共同維護一份帳本。
為了能在區塊鏈網絡裡進行交易,你需要一個錢包 (wallet),它讓你可以存放和交易你的比特幣。
只有你可以花費你的比特幣,所以每個錢包被特殊的加密法所保護著,使用一對獨特且配對的鑰匙:公鑰和私鑰,才能解鎖。
如果一個訊息被公鑰加密,只有配對的私鑰才能解密讀到訊息。反之,如果你用你的私鑰加密訊息,只有配對的公鑰可以解密。
所以,當 David 想要轉帳,他需要用他的私鑰將轉帳訊息加密後,送到網絡裡,然後每個節點使用 David 的公鑰將訊息解開,以確認是由 David 發送的。
在加密完成時會產生一個電子簽名,它會被節點們用來確認交易訊息的發送來源和真偽。電子簽名內容是一串文字,它是由交易訊息和私鑰所組成的,所以不能用在其他的交易訊息上。如果你更改交易訊息中任何一個字元,電子簽名也會跟著改變,所以駭客很難更改你的交易訊息或是得知交易金額。
圖 3. 電子簽名與加密交易
錢包的公鑰,其實是網絡裡的一個位址 (send to address),所以當你轉比特幣給某人時,你其實是將比特幣轉公鑰的位址。而且你必須證明你是私鑰的所有人,才能進行轉帳。請注意,在網絡裡的交易訊息已經是被加密過的,你不用揭示你的私鑰。
每個節點都保有一份帳本,但節點是如何知道你的帳戶餘額?區塊鏈系統並沒有記錄每個人的帳戶餘額 (所以帳本實際上不是像圖 1 一樣),事實上,它只有紀錄網絡上每筆交易紀錄 (如圖 4)。為了得知你的帳戶餘額,你必須分析和驗證所有曾經跟你錢包產生交易的紀錄。
圖 4. 區塊鏈網絡的帳本
「帳戶餘額」的計算和驗證需要靠之前的交易紀錄。舉個例子,為了轉出 10 BTC 給 John,Mary 先發起一個交易訊息,它包入了之前部分的轉入交易紀錄,只要這些紀錄的轉入金額加總起來剛好或大於 10 BTC 即可發送訊息。這些包入的交易紀錄稱作輸入 (inputs),每個節點會驗證這些輸入的金額加總是等於或大於 10 BTC。這些計算和驗證會由錢包和節點自動完成,使用者不需要煩惱。
圖 5. 區塊鍊的交易訊息結構
至於,系統如何信任這些輸入?它去確認你的錢包在之前所有的轉入交易紀錄中是否真的有這些輸入。為了簡化和加速驗證的過程,每個節點會保留一份特殊的資料來達到目的,也因為這個驗證過程,錢不可能會無緣無故多出來。
持有比特幣代表的是,帳本上你還未變成輸入的交易紀錄。
在比特幣網絡上執行交易的程式碼都是開源的,這表示任何人只要有電腦和網路就可以進行交易。然而,程式的錯誤有可能導致你的比特幣會不見。
還記得嗎?比特幣是分散式網絡,並沒有專屬的客服人員替你找回遺失的錢或錢包密碼。所以你想要用比特幣進行交易,建議使用正式的比特幣錢包軟體(例如 Bitcoin Core),並且妥善保存你的錢包密碼或私鑰。
四、區塊鏈技術的五個基本原則
(一)分佈式數據庫
區塊鏈上的每一方都可以訪問整個數據庫及其完整的歷史記錄。
沒有單一方控制數據或訊息。
每一方都可以直接驗證其交易合作夥伴的記錄,而無需中間人。
(二)對等傳輸
通信直接在對等體之間發生,而不是透過中心節點。
每個節點存儲並轉發訊息到所有其他節點。
(三)透明的匿名性
任何有權訪問系統的用戶都可以看到每個事務及其關聯值。
區塊鏈上的每個節點或用戶都有一個唯一的 30 以上的字母、數字組成的地址,用於標識自身。
用戶可以選擇保持匿名或向他人提供其身份證明。
區塊鏈的加以發生在這些地址。
(四)記錄的不可逆性
一旦在數據庫中輸入事務並更新了帳戶,則不能更改記錄,因為它們連結到它們之前的每個交易記錄 (因此稱為“鏈”) 。
採用各種不同的算法以確保數據庫中的記錄是永久的、按時間順序排序的,並且對於網路上的所有其他節點都是可以訪問的。
(五)演算法邏輯
分類帳本的數字性質意味著區塊鏈交易可以關聯到計算邏輯、本質上是可編程的。因此,用戶可以設置自動觸發節點之間交易的算法和規則。
區塊鏈可以解決這個問題。 作為比特幣和其他虛擬貨幣底層核心技術,區塊鏈是一種開放的分佈式分類帳本,可以有效地以可驗證和永久的方式記錄雙方之間的交易訊息,而分類帳本身也可以被編程以自動觸發交易。
五、區塊鏈典範轉型的場景
在區塊鏈應用中,我們可以想像一個場景:
電子合約嵌入數字代碼,並存儲地在透明的共享數據庫中,在那裡它們被保護不被刪除、篡改和修訂。
在這個場景中,每個協議、過程、任務和付款將具有可以被識別、驗證、存儲和共享的數字記錄和簽名。
諸如律師、經紀人和銀行家…等中間人可能不再需要。個人、組織、機器和算法,將自由地彼此進行高速、低成本的交易,這代表了區塊鏈的巨大潛力。所以,幾乎每個人都聽說過區塊鏈將徹底改變業務,並重新定義公司和經濟的說法。
但如果要進行區塊鏈革命,許多障礙----技術、治理、組織甚至社會----都必須同時變化!
總之,區塊鏈是一項基礎性技術:它有潛力為我們的經濟和社會制度創造新的技術基礎。但是,儘管影響巨大,區塊鏈需要幾十年才能滲透到我們的經濟和社會基礎設施中。
在區塊鏈戰略帶來變革之前,我們必須先反思我們對此技術應用的瞭解,特別是如何讓其典範轉型流暢。
而最值得參考的範例,即是分佈式計算機網路技術的典型轉型過程:
TCP/IP (傳輸控制協議/因特網協議) ,這項技術的普及為網路世代的發展奠定了成功基礎。
在 1972 年推出, TCP/IP 首先在簡單使用場景的案例採用:
在 TCP/IP 之前,電信架構基於“電路交換”,其中在雙方或機器之間的連接必須在交換期間預先建立和維持。
為了確保任何兩個節點都能通信,電信服務提供商和設備製造商已經投資了數十億美元建設專線設施。
TCP/IP 的革新在於其協議頭的部分:新協議透過將其數位化並將其分解成非常小的分組來傳輸訊息,每個分組包括地址訊息。一旦被釋放到網路中,分組數據可以選擇到接收者的任何路由。在網路邊緣的智慧發送和接收節點可以分拆和重組數據包並解釋被編碼的數據。 沒有必要建設專用線路或大規模的基礎設施。
作為電子郵件的基礎在 ARPAnet 的研究人員間使用 (由美國國防部主導,是現代商業網路的前身) 。
TCP/IP 創建了一個開放的、共享的公共網路,沒有任何中央機構負責其維護和改進。
起初,傳統電信和計算部門對 TCP/IP 持懷疑態度。幾乎沒有人想像,可以在新架構上建立如此具有靈活性的數據、消息、語音和視頻連接,原有的訊息系統在安全和擴展性上無法滿足。
但是在 1980 年代末和 1990 年代期間,越來越多的公司如 Sun、NeXT、Hewlett-Packard 和 Silicon Graphics 使用 TCP/IP 協議,部分地在組織內創建本地化的私有網路。
為了做到這一點,他們開發了構建模組和工具,擴大了其在電子郵件系統以外的使用,逐漸取代了更多傳統的本地網路技術和標準。
隨著更多組織採用這些構建塊和工具,人們感受到了新技術帶來的生產力的顯著提高。
TCP/IP 在 1990 年代中期隨著萬維網的出現而廣泛地使用。
新技術公司迅速出現提供“管道” :連接到現在公共網路和交換訊息所需的硬體、軟體和服務。如Netscape 發佈商業化瀏覽器、Web 服務器和其他工具和組件,幫助人們開發和採用網路服務和應用程式。
Sun 推動了Java的應用程式編程語言的發展。
隨著網路上的訊息呈指數級成長,Infoseek、Excite、AltaVista 和 Yahoo 這樣的公司誕生並引導用戶進入網路。
一旦這個基本的基礎設施達到了量變臨界值,新一代企業將利用了低成本的網路連接能力,創建一個對現有商業活動更具吸引力的替代網路服務: CNET 線上行動新聞、 亞馬遜 (Amazon) 提供的書籍比任何書店都多。Priceline 和 Expedia 使得更容易購買機票,並帶來前所未有的透明度。這些新進入者以相對較低的成本獲得廣泛覆蓋的能力,給傳統企業如報紙和實體零售商帶來了巨大的壓力。
基於廣泛的網路連接,很多公司創造了新的商業模式, 變革性的應用程式,從根本上改變了企業創造和獲取價值的方式。 它們建立在新的點對點架構上,並透過分佈式網路產生價值。 想想 eBay 如何透過拍賣改變線上零售,Napster 改變了音樂產業,Skype 改變了電信,Google 利用用戶生成的連結提供更相關的結果,改變了網路搜索。
最終, TCP/IP 花費了 30多年的時間,透過所有階段----從單一使用、本地化使用、替代和轉型,重塑經濟。今天,世界上最有價值的上市公司中有一半以上是由網路驅動的、基於平台的商業模式。
七、區塊鏈未來的架構
區塊鏈,一種位於網路上的對等網路,於 2008 年 10 月作為比特幣草案的一部分被提出,比特幣是一個虛擬貨幣系統,它避開了發行貨幣,轉移所有權和確認交易的中央機構。 比特幣是區塊鏈技術的第一個應用。
區塊鏈和 TCP/IP 之間有著平行的涵義,正如電子郵件開啟了對等的訊息溝通,比特幣開啟了雙邊金融交易的新局面。
區塊鏈的開發和維護是開放的,分佈式的和共享的----就像 TCP/IP 的維護模式, 世界各地的志願者團隊維護著核心軟體體系。
TCP/IP 透過顯著降低連接成本來釋放新的經濟價值。同樣,區塊鏈可以大大降低交易成本。它有潛力成為未來所有交易的記錄系統。 如果這種預期真的實現了,經濟將再次經歷根本性轉變,未來將有全新的,基於區塊鏈的影響力和控制力的商業巨頭出現了。
以下,讓我們看看商業運作的模式如何由傳統走向未來:
以典型的股票交易為例,交易可以在微秒內執行,通常沒有人為干預。
然而,股票的所有權轉讓,則可能需要長達一個星期才能完成。
這是因為各方無法訪問對方的分類帳本,並且無法自動驗證資產實際上是否擁有並可以轉移。
在目前實際的業務流程是:一系列中介作為資產的保證人,單獨交易記錄跨組織的交易,並分別更新各自管理的分類帳目。
而在未來場景,在區塊鏈系統中,分類帳目被複製在大量對等節點上的數據庫中,每個數據庫由有關方託管和維護。當在一個副本中輸入更改時,所有其他副本將同時更新。
因此,在交易發生時,交換的價值和資產的記錄被永久地輸入到所有分類帳目中。第三方中介機構無需驗證或轉讓所有權。
如果股票交易發生在基於區塊鏈的系統上,它將在幾秒鐘內進行安全和可驗證的結算,利用此新技術,將產生新的商業價值,也將會產生重大的結構性變革。
目前,顛覆性應用也許仍然遙遠。但是,當與一種新的商業模式相結合時,它們將爆發出最強大的價值創造和迥然不同的商業模式。 變革的情景將最終實現,但它們也將提供巨大的價值。
金融服務公司已經率先走上了區塊鏈道路,而製造業仍然沒有。無論產業背景如何,區塊鏈未來都有可能影響您的業務,請拭目以待。
留言列表