天天看點

區塊鍊憑什麼改變這個世界?從它的工作原理談起

比特币曾被視為一種“驚世駭俗”的産物,然而現在整個世界都在為之瘋狂。

自經濟衰退以來,加密虛拟貨币受到高度追捧,并被稱為解決傳統金融體系内不公平與腐敗問題的良藥。支援者們深信,随着這種并發貨币的騰飛,其将與引發經濟危機的機構直接競争并最終将後者擊垮。比特币的非官方智語為“我們值得信任的加密技術”——其中無疑将矛頭指向了中間商、銀行家以及實際上并不可信的“可信”第三方。

在傳統的操作中,當你使用支票支付抵押貸款時,金融機構與其它相關方之間就會建立起一系列協定,進而確定資金從你的賬戶轉到其他人的賬戶。在這個過程中,銀行通過持續記錄賬戶中的每一分錢的來和往,進而保證你的錢财始終安全無憂。

而比特币的出現則是試圖用密碼學與代碼取代這些中間商所提供的服務(即去中心化)。更具體地說,它運用的是區塊鍊的分布式安全資料庫,這使得比特币的所有權在從一個人轉移到另一個人的過程中,無論他們身在何處,交易過程都将被完全委托給一組計算機負責執行。

如今,就在第一條區塊鍊建構完成的8年之後,人們試圖将其應用于除貨币流通之外的其它程式及流程當中,并取得了不同程度的成功。這讓人們對區塊鍊的好奇和熱情不斷升溫。

那麼,除了虛拟貨币之外,區塊鍊還能夠實作哪些協定的自動化?還能夠去掉哪些不必要的中間商?

比如,區塊鍊能否将司機與乘客聯系起來,并為雙方提供一套透明的付款平台?能否面向電視節目、電影以及其它數字媒體的存儲庫與重托平台,同時追蹤版稅去向并為内容創作者提供收入?能否檢查船家公司的航班狀态,并在飛機未能準時起飛的情況下,向旅客支付雙方達成共識的賠償款項?

如果答案是肯定的,則意味着區塊鍊技術将最終淘汰掉優步、網飛以及世界上的每一家航空保險供應商。

以上三項應用提議絕非單純的空想,其已經在一套被稱為Ethereum的區塊鍊平台中成為潛在應用方向中的一小部分。在區塊鍊領域,Ethereum也擁有自己的加密虛拟貨币——即以太币。(後文将對Ethereum作進一步闡述)

除此之外,目前非常多的企業都在積極推動區塊鍊項目:如微軟正在其客戶提供相關工具進而落地 Azure雲實驗區塊鍊應用; IBM、英特爾以及其它多家廠商也正在合作開發一套名為Hyperledger的開源區塊鍊方案。與此同時,多家大型銀行也已經研發出自己的技術版本,力圖保住自己的領先地位。更不用說比特币,作為有史以來第一個也是最為成功的區塊鍊項目,其目前的應用方向已經遠遠超出設計師們當初的想象。

但縱觀全局,這些新的區塊鍊項目仍然沒有得到實踐層面的大規模采用。更确切地說,還沒有哪種區塊鍊概念或者戰略對任何行業帶來颠覆性的改變。根據Blockchain.info公布的資料,比特币本身在全球範圍内每天隻有37萬5千人在使用。然而,投資者們手中的鈔票正在湧入,這使得各種建議更像是飄浮在炒作與陰謀暗流之上的冰塊,不斷彼此碰撞且互為消漲。

而在最終熱度下降後,哪套區塊鍊平台能夠繼續存在,而哪些将永遠消失?為了做出準确的預測,我們必須需要弄清區塊鍊技術的真正含義及其功能。而從最符合邏輯的角度出發,比特币無疑是最理想的讨論起點。

2009年,一位匿名黑客(也可能是一群黑客)以中本聰的名義釋出了第一種真正意義上的數字化貨币。這項技術的工作原理在于,以此為基礎,金錢将僅僅是一種财會工具——或者說一種抽象價值、所有權配置設定以及交易手段的提供方法。

從曆史角度來看,上述任務都需要由現金來完成。隻要擁有實體錢币,就相當于擁有了所有權,交易将能夠在不同個人之間以談判方式完成。隻要現金的複制難度夠高,就不需要完整說明哪個人擁有哪部分貨币的供應量,或者不同持有人是否曾經使用過同一張50元鈔票。

然而,如果能夠将賬單上的每一份人員清單拼湊起來,我們就會發現各清單之間的實體表現将變得毫無必要。因為銀行與支付處理商已經通過追蹤并處理封閉系統之内的交易活動,将我們的一部分實體貨币轉化為數字記錄。

對此,比特币通過建立單一的通用型數字化分類賬目(即所謂區塊鍊)完成了這種轉型。由于隻有最後加入的新資訊才能做出改變,是以其結構被視為一種“鍊”。每一個新近添加的環(或者說區塊)都包含着一組新的交易,而這些交易都将參考以往的交易鍊進行。舉例來說,如果C向D支付了一個比特币,且此項交易存在于這條鍊的末端,那麼其另一端則指向B向C支付的這個比特币,再向前回溯則是A向B支付了這個比特币……以此類推。

與傳統金融機構所維護的分類賬有所不同,比特币的區塊鍊會被複制至全球各聯網計算機之上,任何擁有計算機與網際網路連接配接資源的人都可以進行通路。

在這個網絡中,還有一類參與者被稱為“礦工”,其職責是負責檢測來自使用者的交易請求,并對相關資訊進行彙總、驗證進而作為新區塊添加到區塊鍊之内。

所謂驗證,就是查驗某人手中确實擁有交易所需要的比特币,而且他還沒有在别處花費過該比特币。比特币區塊鍊的所有權由一對密鑰确定:第一個叫做公鑰,在區塊鍊中可供任何人檢視;第二個被稱為私鑰,由區塊鍊的真正擁有者将其嚴格保密起來。這兩個密鑰之間存在一種特殊的數學關系,進而確定二者能夠合并為有用的簽名數字資訊。

下面來看具體工作原理:如上面的例子中,C收到了一條消息,并将其和自己的私鑰結合起來,在經過一系列計算後即可得到一條很長的數字。任何擁有原始資訊并掌握相應公鑰的人,都可以利用自己的計算過程來證明這條很長的數字實際上正是用正确的私鑰建立而成。

需要說明的是,在比特币當中,交易簽名所使用的私鑰來自該比特币最近進行支付時所對應的公鑰。而當交易處理完成之後,這些比特币将被配置設定以一個新的公鑰。

在這個過程中,“礦工”們的主要作用在于確定新交易的不可逆性,進而保證其作為最終結果且不可能受到篡改。

而隻有當我們邀請任何及每個人參與分類賬時,才能確定整個區塊鍊的不可逆轉性。如果比特币區塊鍊由在某一司法管轄區之内的單一銀行中,已知驗證人負責營運,那麼以強制性的方式來保障交易結果将變得非常簡單,并且任何不遵守規則的人都将無所遁形。

不過在比特币中,并不存在中央機構執行這些規則。在中國、東歐、冰島以及委内瑞拉等地,各類“采礦”公司受到不同文化的驅使,以不同的法律制度與監管要求為依托在全球範圍内匿名運作。這意味着除了比特币代碼本身,再沒有其它證據能夠證明其存在,更遑論追究其責任。為了確定正确的使用行為,比特币采用了所謂的工作證明(proof of work)方案。

首先,先具體分析一下公共區塊鍊試圖通過工作證明所解決的問題。在這套開放的點對點網絡當中,“礦工”會接收到交易消息并進行收集以建立新的區塊。他們這樣做其實是在互相競争,因為第一個建立出一個有效區塊的人才能獲得報酬(比特币)。在這種情況下,重點就在于要如何阻止“礦工”删除剛剛被添加到區塊鍊中的區塊。這種做法雖然無法實作比特币竊取,但卻可以多次使用同一枚比特币。舉例來說,我可以前往某不知名的商家,用比特币購買一杯咖啡。如果我是“礦工”,就可以在之後進入自有版本的比特币區塊鍊,取消這筆交易,并将修改後的區塊鍊發送給我的同行——這意味着看似花出的比特币又重新存入了我自己的口袋。

為了避免這樣的情況,比特币網絡上的所有“礦工”都擁有相同的區塊鍊副本,且所有變更與交易皆不可逆轉。同時,為了讓所有參與者保持同步,比特币“采礦”軟體對于計算資源或者說電力的要求極其之高。因為隻有這樣,其才能完成新區塊添加乃至成本更為高昂的在記錄中更改區塊等操作。

此外,任何試圖添加新區塊的“礦工”也必須提供密碼證明。而為了生成證明,“礦工”需要通過多輪哈希函數來消化新區塊。多輪哈希函數是一種計算過程,它能夠接收任意長度的資料塊,并将其簡化為一條固定長度且無特定含義的,由字母以及數字組成的字元串——這就是哈希值。為了使這一過程更為困難,區塊鍊中還要求所産生的哈希值以一定數量的零作為開頭。其中的難點在于,我們無法預測任何給定的資料集将以怎樣的哈希值呈現,是以礦工需要在驗證過的區塊上反複執行計算,并每次在資料集中插入一個随機數。當該數字被改變時,也将産生與之對應的新哈希值結果。而隻有當最後的“礦工”在得到正确數量的零時,他們的任務才算完成。

第一個找到符合要求的哈希值的“礦工”會向其他“礦工”宣布這個新的區塊,然後由後者對其進行檢查并将其添加至計算機上所存儲的完整版區塊鍊上。為了完成所有這些工作,“礦工”們會收取新的比特币及其它“采礦”費作為獎勵。

我們将哈希值視為鎖定鍊上某一特定區塊的方法。舉個更為形象的例子:假如你擁有一把需要鑰匙才能關上的鎖,同時還擁有大量可供使用的鑰匙,但不知道哪一把能夠與該鎖相比對,則必須一一嘗試。當最終找到正确的鑰匙時,你可以将其插入鎖中,以供任何人檢查這種比對的正确性。

從理論上講,這項工作與“礦工”收到的回報屬于對良好行為的激勵。比特币“礦工”會大量投資于這套服務網絡——具體形式包括提供計算資源以及購買硬體等等。是以,其中的基本思路在于,他們不應采取任何可能導緻貨币完整性受損或貶值的行為(包括進行雙重支付等任何行為)。

這類操作還面臨着另外一種保護機制的限制,因為對舊有區塊内容的變更成本将被添加至區塊鍊内各個新區塊的建立當中。在建立一個新區塊時,其中将包含之前的區塊。舊有區塊發生的任何變更都将導緻一切後續區塊的哈希值無效化。是以,我們不可能将經過僞造的區塊插入原有區塊當中,而無需重複該區塊之後已經執行完畢的一切工作。正如之前提到的開鎖比喻,最後一把鎖的設計取決于之前的所有鎖,是以改變區塊鍊當中的任何一把鎖都意味着必須為之後的每一把鎖找到新的鑰匙。

通過這種強迫“礦工”提供昂貴的證據,并為其工作成果提供報酬,中本聰建立起了第一種具備實際可行性的點對點數字貨币。但除此之外,他還解決了另一個困擾了計算機科學家們幾十年的問題——一緻性。比特币在過去8年當中從未下線,這意味着其找到了一種激勵可能不可信的參與者處理交易,進而擷取可靠結果的途徑。其結果就是,任何擁有網際網路連接配接的人都能夠檢視及添加資料鍊,而且基本不會受到攻擊活動的影響。

事實證明,這樣一套系統可能不僅僅适用于金融領域。當“礦工”們進行交易驗證時,他們實際上所運作的是資料處理程式,并對交易請求進行支援或反對。然而,如果他們能夠運作更為複雜的程式,例如社交媒體網絡中的軟體呢?如果區塊鍊被用于簡單貨币交易之外的資料,例如線上論壇上的消息,結果又會如何?

前文提到的Ethereum是2013年多倫多一位19歲的計算機專業學生Vitalik Buterin設計的,其目的就在于延續比特币在貨币領域的成果,同時将其擴充到其它領域當中。

Ethereum自己的貨币以太币與比特币不同的是,Ethereum使用者交易被稱為智能合約——一種迷你程式,其可配合無限的複雜度水準進行編寫。此後,使用者能夠通過向程式發送加載有指令的交易,進而與其他“礦工”進行往來與互動。

在實際應用當中,這意味着任何人都能夠将軟體程式嵌入到交易當中,并確定其在區塊鍊的使用期限之内不會發生改變或通路。從理論上講,Ethereum可以帶來足以取代Facebook、Twitter、優步、Spotify乃至其它任何數字化服務的方案。這些新版本對于審計人員而言将是完美、完全透明,并且能在沒有建立者參與的前提下無限期運作。

就在Buterin試圖利用區塊鍊技術打造一套延伸至全世界的超級計算機時,另一種趨勢則将這項技術推向了另一個方向——即邁向中本聰本人更推崇的封閉與可控疊代道路。

2014年9月,包括巴克萊、高盛以及摩根大通在内的多家金融機構共同組成了R3聯盟,旨在探索如何通過區塊鍊技術提升銀行之間的支付效率。

這些機構意識到,像比特币與以太币這樣的區塊鍊開放結構與他們自身的需求顯然背道而馳。加密貨币所關注的主要是使用者匿名性,這些使用者會在開放區塊鍊上以字母加數字組成的公開位址表示,且不具備任何能夠提供其真實身份的訓示。而包括美國在内的多個國家的銀行業法律都禁止這種匿名性。

從法律層面考慮,金融機構有理由保護客戶資料,并控制這類資料流出至其它國家或地區。鑒于公開區塊鍊網絡中的每台計算機都會複制整條交易記錄,是以在使用這些交易記錄鍊時根本不可能遵循監管機構所提出的要求。

是以,區塊鍊技術中的“許可分類賬”方法應運而生。即在被許可的分類賬當中,添加該區塊者的身份是已知的,且系統中的資料隻能由標明人員檢視。由于建立新區塊的權利是由運作代碼的人員,而非随機配置設定機制決定,是以不需要投入工作量來提供進行“采礦”或支付加密貨币的工作證明。

這類系統适用于區塊鍊之上各參與者之間信任程度較低,但希望模拟中立第三方服務的情況(如銀行在進行國際電彙結算時)。

就在2016年,R3聯盟釋出了第一套許可分類賬方案Corda。不過短短數月,Corda迎來了自己的競争對手——脫離R3聯盟的摩根大通也釋出了自己的許可分類賬Quorum。

目前,許可分類賬方法同樣超越了銀行與金融機構,逐漸向其它行業當中擴充,特别是那些需要負責監管客戶敏感資料的領域。其中許多相關項目由Hyperledger提供的工具所建構。(HyperLedger目前主要為希望使用智能合約,但卻對Ethereum及比特币等開放式區塊鍊持猶豫态度的企業開發産品。)

無論區塊鍊技術最終如何呈現,運作在其上的智能合約都需要各類支援技術作為依托。這些補充性技術目前正在借助區塊鍊的熱度快速發展,并對區塊鍊技術本身的發展産生至關重要的影響。

康奈爾大學IC3協調人Ari Juels表示:“一旦獲得了智能合約,就會面對一系列問題。”這些問題主要分為以下幾類:

首先,區塊鍊無法存儲大量資料。對于多數項目而言,這顯然是個問題。例如有人建議利用區塊鍊技術進行視訊實況轉播,但其根本無法容納龐大的視訊資料。

其次,将智能合約放在區塊鍊上的另一個問題在于,區塊鍊本身并不清楚現實世界中發生了什麼。如果您的智能合約是一套航空保險系統,那麼其必須了解我們的航班何時起飛與着陸。然而,區塊鍊技術在設計層面就從來不具備查詢網站的能力。是以,它對于外部世界的一切了解都需要主動進行注入。

在理想情況下,開發者們将為區塊鍊設計出資料存儲與通路方案(但需要注意的是千萬不能重新引入原本就存在的缺陷,尤其是最不可靠的對象——人類。)畢竟區塊鍊誕生的初衷就是為了徹底屏蔽人為接觸。要實作這一點,開發人員必須對“可信方”這一概念作出充分的考量與探索。

靜态資料的存儲問題可以通過分布式檔案共享服務來解決,例如使用Protocols Labs打造的Interplanetary資料庫或者Storj Labs的去中心化雲存儲系統。這些系統已經幫助世界各地的人們為自己的磁盤騰出更多剩餘空間,相信其也将适用于基于區塊鍊技術的智能合約系統。因為其中的資料将始終以備援方式存儲在世界各地的多台計算機之上,進而實作始終可用且難以追蹤等屬性。

至于将實時資料導入區塊鍊,則可使用區塊鍊開發者們所謂的“oracles”實作。這些服務能夠以可靠的方式查詢實時資料源,并将其傳遞至區塊鍊上以完成饋送。

在IC3,Juels已經實作了一款名為Town Crier的自動化oracle。其負責確定被注入至區塊鍊當中的資料來自可信來源,且未經任何篡改。其使用英特爾處理器上的“受信軟體”晶片。這些晶片運作加密盾之後的代碼,但仍可證明該程式在按照既定方式執行。

如果現代社會所依賴的衆多數字化服務都需要在區塊鍊之上進行重建,那麼我們将不得不為所需要完成的工程與研究任務付費。

不過如果我們想要創造的是一種一旦成功就将摧毀衆多企業賴以生存的有價值資料的技術方案,又将如何?在理想情況下,Ethereum等開放區塊鍊會信任建立資料的人,允許其選擇如何進行資料共享。在這樣的環境下,任何企業都無法繼續憑借向客戶銷售其浏覽行為、購買曆史或位置資料而繼續生存。而區塊鍊企業也無法借此對知識産權進行限制,因為開放式區塊鍊上的程式可供每位參與者随意觀看。

盡管如此,區塊鍊業務的潛在融資機制已經出現:其中一大新趨勢取經自首輪公開募股(簡稱IPO)的首次貨币發行(簡稱ICO)。

在與ICO項目團隊合作設計智能合約時,使用者必須持有特定的加密貨币才能使用該應用程式。而項目團隊會在釋出之前建立一堆此類貨币,并在公開市場上出售。

這有點像在現實當中,有人走進一家自助洗衣店,卻發現這裡隻能使用定制硬币來運作機器。是以,不同于單純面向投資者,加密貨币擁有者會将一大堆此類貨币出售給公衆,而後按照洗衣服務的價值進行收取。

截至目前,已經有超過5億美元以貨币銷售的方式湧入區塊鍊企業手中。如此可觀的投資導緻部分觀察人士心生抱怨。然而,也有不少人認為,作為一種新型投資工具,ICO與其實際應用本身一樣極具颠覆性。

一家專門用于區塊鍊技術研發的新基金公司Placeholder的創始人Joel Monegro表示:“金錢不是萬惡之源,公平才是萬惡之源。”

區塊鍊初創企業經常引用他的論點,認為應該為企業創始人及員工配置設定股權以鼓勵他們囤積财富,而非改善産品。

在另一方面,特定于某種應用的加密貨币已經不再是金融工具,而僅僅屬于擷取技術的手段。随之而來的是,使用該項服務的人越多,通路該服務所需要的貨币就越有市場。

Hacera的Levi總結稱,“時代已經改變,而且變化速度很快。我們中的有些嘗鮮者在三、四年之前還兩手空空,但憑借着自己的信念與加密貨币市場的旺盛發展,如今獲得了可觀的财富。我們仍然需要進一步擴大以太币與Ethereum的運作模式,而企業則需要更多地分散并保護其敏感資料。我們目前正面臨着一種新的、不同類型的挑戰:考慮到已經投入的巨額資金,不知道還會有多少前輩與新的願意堅持事業、繼續努力,進而利用這些改變了其自身的技術進一步改變世界。

原文出處:科技行者

轉載請與作者聯系,同時請務必标明文章原始出處和原文連結及本聲明。

繼續閱讀