區(qū)塊鏈存在的目的是什么它解決了哪些問題
掃描二維碼
隨時(shí)隨地手機(jī)看文章
區(qū)塊鏈技術(shù)是近年來人們?cè)絹碓礁信d趣和關(guān)注的課題。有很多關(guān)于這個(gè)主題的討論、活動(dòng)和出版物;然而,大多數(shù)關(guān)于區(qū)塊鏈的內(nèi)容都具有誤導(dǎo)性。關(guān)于區(qū)塊鏈技術(shù)的真相、它的功能以及它對(duì)企業(yè)未來的影響,人們?nèi)匀挥泻芏嗬Щ?。甚至有人提出,區(qū)塊鏈將取代醫(yī)生。
不,區(qū)塊鏈不是來統(tǒng)治我們的未來的。作為一名致力于開發(fā)該技術(shù)并將其應(yīng)用于實(shí)際場(chǎng)景的技術(shù)人員,我認(rèn)為現(xiàn)在應(yīng)該對(duì)區(qū)塊鏈進(jìn)行清楚的說明,并就其好處和最合適的用例達(dá)成共識(shí)。
我認(rèn)為,人們?cè)诮忉屵@項(xiàng)技術(shù)時(shí)最常犯的錯(cuò)誤是,在解釋技術(shù)細(xì)節(jié)時(shí),甚至沒有提到我們最初為什么需要它。要清楚地理解一個(gè)解決方案,最好的方法是首先理解問題本身。
“共識(shí)”是我們?cè)谶@里尋找的關(guān)鍵詞,具體來說,它是計(jì)算機(jī)系統(tǒng)的共識(shí)。由于我們已經(jīng)開始構(gòu)建多進(jìn)程、多機(jī)器、可伸縮和冗余的系統(tǒng),所以我們?cè)谙到y(tǒng)的歷史和當(dāng)前狀態(tài)方面存在共識(shí)問題。
我們?cè)谶@里討論的計(jì)算機(jī)系統(tǒng)可以被認(rèn)為由兩個(gè)基本部分組成。我們有當(dāng)前狀態(tài)的數(shù)據(jù),我們有規(guī)則來處理數(shù)據(jù),改變它,創(chuàng)建它。這些系統(tǒng)有多個(gè)部分,即通過部分可靠的網(wǎng)絡(luò)分布和連接的機(jī)器來實(shí)現(xiàn)。系統(tǒng)的各個(gè)部分對(duì)收集到的數(shù)據(jù)進(jìn)行處理,并根據(jù)系統(tǒng)預(yù)先確定的規(guī)則運(yùn)行,以此,對(duì)數(shù)據(jù)進(jìn)行操作。在此過程中,它們需要彼此同步,而同步的目的是保持?jǐn)?shù)據(jù)的完整性和系統(tǒng)的共識(shí)性。事實(shí)上,無論它們是如何分布的,它們都試圖像一個(gè)原子實(shí)體那樣工作。
當(dāng)我們有一個(gè)分布式系統(tǒng)時(shí),我們經(jīng)常不得不面對(duì)共識(shí)的問題。
為了保持?jǐn)?shù)據(jù)的完整性和正常工作,分布式系統(tǒng)的各個(gè)部分相互通信。不幸的是,他們的通信渠道是不完善的計(jì)算機(jī)網(wǎng)絡(luò),數(shù)據(jù)可能丟失或延遲。
此外,還存在競(jìng)爭(zhēng)條件問題,可能會(huì)與其他競(jìng)爭(zhēng)部分的工作發(fā)生沖突。在這些情況下,共識(shí)算法可以幫助我們,有幾種成熟的算法,如PAXOSand RAFT。我不會(huì)詳細(xì)介紹這些算法,但是我們需要知道的是它們是在一個(gè)可信任的環(huán)境中工作的。我的意思是,系統(tǒng)中的每一方都依賴于這樣一個(gè)事實(shí),即系統(tǒng)的其他組成部分是根據(jù)規(guī)則工作的,而不會(huì)試圖破壞系統(tǒng)。
另一方面,分散式系統(tǒng)與分布式系統(tǒng)的不同之處在于,它缺乏中央權(quán)威,并且對(duì)業(yè)務(wù)網(wǎng)絡(luò)的其他各方缺乏信任。舊的共識(shí)算法在分散的環(huán)境中變得不夠。這就是區(qū)塊鏈解決方案和拜占庭共識(shí)算法幫助我們的地方。在分散式的系統(tǒng)中,沒有任何一方說了算。即使我們可以依靠其他各方的意愿,建立一個(gè)健全的制度,我們也需要執(zhí)行規(guī)則,并能夠相應(yīng)地運(yùn)行這個(gè)制度。那么,當(dāng)沒有人來統(tǒng)治這個(gè)體系時(shí),我們?nèi)绾巫屗\(yùn)轉(zhuǎn)起來呢?當(dāng)我們進(jìn)入一個(gè)分散的環(huán)境時(shí),我們的共識(shí)問題會(huì)發(fā)生一些變化,變成拜占庭式的共識(shí)問題。拜占庭共識(shí)不同于分布式系統(tǒng)的共識(shí)。在分布式系統(tǒng)中,所有各方都可以信任對(duì)方正確地工作。然而,拜占庭式的共識(shí)必須考慮到不可靠的政黨,甚至那些反對(duì)體制的政黨。區(qū)塊鏈系統(tǒng)固有的拜占庭容錯(cuò)算法是分散業(yè)務(wù)案例的止痛藥。
區(qū)塊鏈技術(shù)的價(jià)值在于它所嵌入的拜占庭共識(shí)性算法。事實(shí)上,塊、鏈只是一個(gè)巧妙設(shè)計(jì)的工具,幫助我們達(dá)成共識(shí),并保持它。在區(qū)塊鏈實(shí)現(xiàn)中使用了許多共識(shí)的算法。舉幾個(gè)例子,我們可以提到PoW (work proof)、PoS (proof of stake)、PoA (proof of authority)、PBFT等等……
基于區(qū)塊鏈的系統(tǒng)按其性質(zhì)可分為三類:公共的、許可的和私有的。在公共區(qū)塊鏈中,任何人都可以訪問和參與網(wǎng)絡(luò)。比特幣是公共區(qū)塊鏈的一個(gè)很好的例子。在一個(gè)被許可的區(qū)塊鏈中,只有那些被授權(quán)的人才可以參與網(wǎng)絡(luò)。私有區(qū)塊鏈?zhǔn)怯糜谔鎿Q機(jī)構(gòu)中基于數(shù)據(jù)庫(kù)的解決方案的內(nèi)部區(qū)塊鏈。
雖然區(qū)塊鏈因比特幣的流行而出名,但加密貨幣只是合適的用例之一。在企業(yè)界,尤其是在金融業(yè),有很多研究和工作正在進(jìn)行,以利用這項(xiàng)技術(shù)。
企業(yè)應(yīng)用程序通常更喜歡經(jīng)過許可的區(qū)塊鏈。企業(yè)區(qū)塊鏈系統(tǒng)通常選擇PoA、PBFT算法或其變體作為共識(shí)算法。
對(duì)于在這個(gè)領(lǐng)域工作的人來說,為區(qū)塊鏈找到一個(gè)合適的用例是一個(gè)常見的痛點(diǎn)。要找到合適的用例,我們應(yīng)該看到區(qū)塊鏈解決的問題是分散的、不可信的系統(tǒng)。在這樣的系統(tǒng)中,多個(gè)參與方共同工作,但并不一定信任彼此。區(qū)塊鏈技術(shù)使得網(wǎng)絡(luò)中沒有必要信任其他系統(tǒng)。
在過去許多多方協(xié)作的業(yè)務(wù)案例中,通常會(huì)找到一個(gè)新的可信第三方來運(yùn)行系統(tǒng)。中央銀行、清算與結(jié)算銀行等機(jī)構(gòu)都扮演著值得信賴的第三方角色。所有各方都會(huì)信任第三方來運(yùn)行這個(gè)系統(tǒng)。企業(yè)區(qū)塊鏈技術(shù)將第三方的信任分配給網(wǎng)絡(luò)本身。與只與一方信任和共享所有業(yè)務(wù)不同,參與其中的每個(gè)人都信任整個(gè)網(wǎng)絡(luò)來正常運(yùn)行。區(qū)塊鏈和共識(shí)算法使得對(duì)數(shù)據(jù)達(dá)成一致成為可能,甚至可以存儲(chǔ)在數(shù)據(jù)上運(yùn)行的系統(tǒng)規(guī)則(智能合約)。
那么,我們?nèi)绾螢閰^(qū)塊鏈選擇正確的業(yè)務(wù)模型和用例呢?
與普遍的看法相反,如果使用傳統(tǒng)的數(shù)據(jù)庫(kù)和web服務(wù)技術(shù)可以合理地實(shí)現(xiàn)某些業(yè)務(wù)模型,那么區(qū)塊鏈技術(shù)很可能不是一個(gè)合適的替代方案。另一方面,任何需要建立可信第三方的企業(yè)都非常適合區(qū)塊鏈技術(shù)。在這兩種情況之間的任何地方都有區(qū)塊鏈技術(shù)候選項(xiàng),需要單獨(dú)考慮。
另一個(gè)可能出現(xiàn)的問題是,區(qū)塊鏈如何影響已經(jīng)建立的可信第三方,甚至未來的第三方?同樣,與普遍看法相反,區(qū)塊鏈不能取代這些機(jī)構(gòu)。它只是一個(gè)技術(shù)基礎(chǔ)設(shè)施,仍然需要建立網(wǎng)絡(luò),定義系統(tǒng)的規(guī)則,并負(fù)責(zé)它。所以區(qū)塊鏈將為第三方做的是通過自動(dòng)化大部分底層工作來減輕他們肩上的負(fù)擔(dān)。
在接下來的文章中,我將嘗試深入探討共識(shí)主題,并計(jì)劃分析實(shí)際的區(qū)塊鏈業(yè)務(wù)案例。我還想談?wù)勎覀冊(cè)趹?yīng)用區(qū)塊鏈技術(shù)時(shí)所面臨的問題,尤其是大多數(shù)未知的隱私問題和ZKP解決方案。與GDPR相關(guān)的問題在多方業(yè)務(wù)案例中的含義,以及如何使用區(qū)塊鏈和高級(jí)加密協(xié)議解決這些問題,也是我想提到的主題之一。