區(qū)塊鏈的應(yīng)用程序是什么,NIST是怎么看的
想象你是一個將軍,和你的軍隊(duì)在一個設(shè)防的城市外扎營。你的軍隊(duì)不夠強(qiáng)大,沒有外界幫助就無法占領(lǐng)這座城市。但你確實(shí)有來自外部的幫助:在城外的其他山上駐扎著6個將軍,他們的軍隊(duì)隨時準(zhǔn)備幫助你進(jìn)攻。但奪取這座城市至少需要三到四支軍隊(duì),一次不協(xié)調(diào)的進(jìn)攻將導(dǎo)致數(shù)千人在城門外死亡。你如何與其他將軍協(xié)調(diào)進(jìn)攻?當(dāng)一個將軍與敵人合作時會發(fā)生什么?
這種情況稍微改變了拜占庭將軍問題的措辭,這個問題最早出現(xiàn)在1982年的ACM編程語言和系統(tǒng)事務(wù)中。這與十年前提出的兩位將軍的問題有關(guān)。當(dāng)我們談?wù)撏ㄐ徘郎系男湃?、傳播知識有多難以及如何圍繞不完美的事實(shí)達(dá)成共識時,我們就會使用這些類比。
這個問題在2008年末被推翻,當(dāng)時中本聰(Satoshi Nakamoto,音譯)發(fā)表了一篇關(guān)于“區(qū)塊鏈”的白皮書。這是解決數(shù)字貨幣雙支出的辦法??梢园阉胂蟪芍挥幸粋€人能擁有的數(shù)碼產(chǎn)品。作為對這種區(qū)塊鏈技術(shù)的測試,比特幣于2009年初推出。從那以后事情變得更煩人了。
現(xiàn)在,區(qū)塊鏈處于炒作周期的頂端。每個行業(yè)都在關(guān)注區(qū)塊鏈技術(shù),以弄清楚它將如何為他們工作??逻_(dá)推出了自己的區(qū)塊鏈,有人提議在無人機(jī)和3D打印機(jī)上使用區(qū)塊鏈。醫(yī)療記錄可以存儲在區(qū)塊鏈,還有區(qū)塊鏈?zhǔn)謾C(jī)。這甚至還不包括比特幣本身的大量投機(jī)活動;數(shù)以千計(jì)的其他加密貨幣也如雨后春筍般涌現(xiàn),但人們正在賠錢。
區(qū)塊鏈?zhǔn)且粋€令人困惑的東西,比如有哈希值、Merkle樹和時間戳。每個人都會問自己,區(qū)塊鏈到底做了什么?是否有一個獨(dú)立的機(jī)構(gòu)會告訴我區(qū)塊鏈的好處,以及我應(yīng)該在什么時候使用它?你很幸運(yùn):NIST,國家標(biāo)準(zhǔn)與技術(shù)協(xié)會發(fā)布了他們關(guān)于區(qū)塊鏈技術(shù)的報(bào)告(PDF)。區(qū)塊鏈魔法嗎?不,不,它不是,而且它可能不應(yīng)該被用于除了貨幣以外的任何東西。
十多年來,我一直大力支持區(qū)塊鏈技術(shù)。最近我把區(qū)塊鏈帶到了物聯(lián)網(wǎng)設(shè)備上,用于增強(qiáng)現(xiàn)實(shí)游戲體驗(yàn)。撇開Snark不談,區(qū)塊鏈技術(shù)之所以重要,是因?yàn)樗鉀Q了一個問題,而這個問題是計(jì)算平臺信任和可驗(yàn)證性的核心。
然而,NIST關(guān)于區(qū)塊鏈技術(shù)的報(bào)告非常準(zhǔn)確。沒有理由使用區(qū)塊鏈作為解決方案。事實(shí)上,它是尋找問題的解決方案。但是要理解為什么區(qū)塊鏈?zhǔn)菍ふ依侨说撵`丹妙藥,你首先要理解區(qū)塊鏈到底是什么。
NIST的報(bào)告是這樣描述區(qū)塊鏈的:
· 區(qū)塊鏈?zhǔn)怯蓞^(qū)塊組成的分布式分類帳。
·包含關(guān)于塊頭的元數(shù)據(jù),塊數(shù)據(jù)包含一組事務(wù)和
·其他相關(guān)數(shù)據(jù)。每個塊標(biāo)頭(區(qū)塊鏈的第一個塊除外)都包含
·一個到前一個塊頭的加密鏈接。每個事務(wù)涉及一個或多個事務(wù)
·區(qū)塊鏈網(wǎng)絡(luò)用戶和記錄發(fā)生了什么,它是數(shù)字簽名的用戶
·誰提交了交易。
以上都是些廢話。下面是一個我認(rèn)為更好的定義:區(qū)塊鏈?zhǔn)且粋€鏈表,其中列表中的每個項(xiàng)都包含數(shù)據(jù)和列表中前一個項(xiàng)的哈希值。添加到列表中需要獲得大多數(shù)用戶的同意。
這是一個相當(dāng)簡單的解釋。它與“分類賬”沒有任何關(guān)系,這是一筆獎金,因?yàn)槲也恢罆?jì)師實(shí)際上做什么。它使用現(xiàn)有的計(jì)算機(jī)科學(xué)范式定義了區(qū)塊鏈。它的簡潔掩蓋了它的準(zhǔn)確性;實(shí)際上,很難把這個簡單的定義說成是不準(zhǔn)確的。
除了定義區(qū)塊鏈實(shí)際上是什么,區(qū)塊鏈的應(yīng)用程序是什么,NIST是怎么看的?
國土安全部流程圖回答了這個問題:你需要區(qū)塊鏈嗎?NIST的白皮書沒有告訴您為什么不需要區(qū)塊鏈,而是提供了一個有用的指南,指導(dǎo)您如何使用區(qū)塊鏈。如果您有許多分布式用戶,區(qū)塊鏈可能是個好主意。如果存在缺乏可信第三方的愿望,區(qū)塊鏈就能發(fā)揮作用。如果需要分散命名服務(wù)器,或者需要加密安全的所有權(quán)系統(tǒng),區(qū)塊鏈可能會起作用。但也有一些警告。
例如,有多少初創(chuàng)公司希望降低在醫(yī)生之間郵寄或傳真病歷的成本。他們用的是區(qū)塊鏈。這是一個愚蠢的想法,因?yàn)獒t(yī)療記錄屬于HIPAA,需要保密。當(dāng)HIPAA Hippo發(fā)現(xiàn)他的醫(yī)療記錄對每個人都可以訪問這個區(qū)塊鏈時,他將被激怒。
另一個例子。假設(shè)您是一個電子產(chǎn)品制造商,您希望對所有子組件和成品的序列號進(jìn)行編目。這是一個令人欽佩的目標(biāo);更多的數(shù)據(jù)意味著更好的工程。如果你發(fā)現(xiàn)很多產(chǎn)品在4月14日之后有一個組件生產(chǎn)的保修要求,你可能會想知道那天生產(chǎn)線發(fā)生了什么變化。但是你需要區(qū)塊鏈嗎?可能不會。數(shù)據(jù)庫是存在的,其他人真的沒有理由訪問這些數(shù)據(jù)。
但區(qū)塊鏈的未來并不完全黯淡。有一個用例是它擅長的——證明數(shù)字商品的所有權(quán),比如加密貨幣、比特幣或狗幣。這甚至可以擴(kuò)展到證明數(shù)字土地或物品的所有權(quán);你可以把它想象成《第二人生》(Second Life)中一個不可攻擊的市政廳。這是區(qū)塊鏈背后的初衷,但炒作已經(jīng)發(fā)展到不合理的程度。它不能應(yīng)用于所有事情,這樣做是浪費(fèi)資源。對于那些問“區(qū)塊鏈能為我做什么”的人,答案只是加密貨幣,很少有例外。對于其他的一切,只需建立一個數(shù)據(jù)庫就可以了。