我們來談談區(qū)塊鏈技術(shù)吧。如果您對區(qū)塊鏈幾乎一無所知,那么很容易將其與所謂的加密貨幣(如比特幣和以太坊等)混為一談。在這些系統(tǒng)中,有人神奇地創(chuàng)造了一個貨幣儲備——好吧,一些人工物品的儲存,只有在有人認為用官方認可的貨幣(有些人稱之為法定貨幣,字面意思是“有錢”———非常好地描述了加密貨幣)時,這些東西才會變成貨幣。這些系統(tǒng)碰巧依賴于區(qū)塊鏈技術(shù)來實現(xiàn)健壯與去中心化。
如果您有一些您希望保護其完整性的有價值的東西,那么健壯和去中心化就是好東西。而且,金錢并不是唯一符合這一類別的東西,這就是為什么區(qū)塊鏈可能涉及加密貨幣之外的許多東西。
我是那些對區(qū)塊鏈知道得最少的人之一(并不是說我現(xiàn)在是專家了)。因此,當我看到區(qū)塊鏈是為了安全而四處傳播的時候,我想知道這究竟是天生的搭配,還是僅僅是為了把區(qū)塊鏈應用于一切的某種營銷。為了弄清這一點,我和Gemalto進行了一次談話,Gemalto把區(qū)塊鏈包括在他們的安全武庫中,看看我是否能更好地理解區(qū)塊鏈是如何融入到安全圖景中的。
簡簡單單的分類帳
當你把區(qū)塊鏈當作分類賬時,它的相關性就變得更清楚了,事實的確如此。這就是為什么它有利于加密:所有的交易都被記錄在分類賬上。任何其他可以使用分類賬的東西也可以利用區(qū)塊鏈。包括物聯(lián)網(wǎng)數(shù)據(jù)。也就是說,這并不總是最好的解決方案。
其思想是,不了解彼此的多方共享數(shù)據(jù)。因為它們不一定是可信的(盡管它們也不被信任),所以交易的多方可能需要一種方法來確認數(shù)據(jù)是有效的。
但這可能是一個誤導的概念。“無效數(shù)據(jù)”可能意味著原始物聯(lián)網(wǎng)設備出現(xiàn)故障并產(chǎn)生錯誤數(shù)據(jù)。區(qū)塊鏈對此無能為力。當某人確認某個交易時,他們并沒有對該數(shù)據(jù)的歷史記錄進行端到端的驗證。那么,確認的交易意味著什么呢?
這里的問題在于數(shù)據(jù)完整性——也就是說,最初報告的數(shù)據(jù)(無論是否來自正確運行的設備)都是忠實地傳輸和記錄的。在最簡單的情況下,數(shù)據(jù)存儲在IoT設備或服務提供商擁有的數(shù)據(jù)庫中。而且,在簡單的雙方交易中,這可能是充分且有效的。
但是,當交易涉及多方時——也許在工業(yè)環(huán)境中更常見——那么你可能有多個副本?;蛘吣幸粋€多方可以訪問的副本。如果您有一個或幾個副本,那么它就變得,嗯,不容易,但是可以入侵并修改數(shù)據(jù),因為只有一個(或者最多幾個)地方存儲數(shù)據(jù)。這是單點故障問題。
如果這些數(shù)據(jù)是一個重要的行動決定的基礎——特別是在沒有人為干預的情況下自動采取的行動,這一點就變得特別重要。如果數(shù)據(jù)是錯誤的,那么這個動作也可能是錯誤的。因此,確保誠信成為至關重要的使命。
用區(qū)塊鏈技術(shù),網(wǎng)絡由多個節(jié)點創(chuàng)建,每個節(jié)點承載一個分類賬副本。這些節(jié)點彼此通信,因此對一個節(jié)點的更改需要由其他節(jié)點驗證。這樣就很難欺騙數(shù)據(jù):如果只訪問一個節(jié)點,它很可能被拒絕為無效。如果您嘗試訪問所有節(jié)點(非常困難),那么您必須在其他節(jié)點解決問題之前,以及在新交易被添加到總賬之前,非常非常迅速地訪問所有節(jié)點。
加密學與共識
這些網(wǎng)絡和區(qū)塊鏈有兩個特點,使得這種健壯性成為可能。首先是分類賬本身的結(jié)構(gòu)。它內(nèi)置的加密學元素使它很難被篡改。首先,每個交易都包含一個哈希簽名,該簽名將顯示交易本身是否已經(jīng)更改(假設哈希沒有被更改)。
但是,更改交易的人可以嘗試更改哈希,這樣就不會有人注意到。相反,哈希不僅包括交易,還包括來自前一個交易的哈希(即,它是形成鏈的鏈接)。換句話說,新交易的哈希反映了分類賬的整個歷史記錄。如果有人想進入并更改舊交易,他們不僅必須更改已更改交易的哈希,還必須更改每個后續(xù)交易的哈希。這很難在其他節(jié)點沒有注意到的情況下快速完成。
這就引出了區(qū)塊鏈網(wǎng)絡的另一個特點:共識。以這種或那種方式,交易——或變更——必須得到某個人或某個團體的批準。對于比特幣,交易是由所謂的“礦工”驗證的,他們必須解決一些硬加密問題,以證明他們進行了驗證(他們的努力得到的回饋是一些比特幣)。
Gemalto指出,一個名為“宇宙”(Cosmos)的較新的網(wǎng)絡比比特幣更能代表共識。這個想法是為了防止任何類型的數(shù)據(jù)故障——不管是由于有故障的機器還是有惡意的入侵者造成的。有一組選民(目前是100人,隨著時間的推移增加到300人)在該網(wǎng)絡中擁有股份,他們在將每筆交易添加到正式登記冊之前都要對其進行驗證。
這就提出了狀態(tài)機的整個概念:交易必須經(jīng)過一系列狀態(tài)才能達到所尋求的承諾狀態(tài)。對于Cosmos,每個投票者都會檢查新交易的加密完整性,如果三分之二的投票者同意,則提交交易。這允許多達三分之一的機器擁有有問題的交易版本,而交易不會被拒絕為無效。
一旦提交,該交易將成為分類賬的一部分。因為所有的交易都是以加密的方式鏈接在一起的,并且因為分類賬是跨節(jié)點復制的,所以您不能更改舊的交易:分類賬被認為是不可變的。如果您在交易中發(fā)現(xiàn)了錯誤,并且您需要修復它,怎么辦?就像良好的會計原則一樣,您需要創(chuàng)建一個新的交易來進行更正,而不是更改原始的交易。
各種網(wǎng)絡
不同的區(qū)塊鏈實現(xiàn)使用不同的驗證算法,并且具有不同的規(guī)則,因此驗證和組織的細節(jié)可能會有所不同。像比特幣這樣的網(wǎng)絡是公開的,任何人都可以下載軟件并成為礦工。對物聯(lián)網(wǎng)來說,網(wǎng)絡更有可能是私有的。私人網(wǎng)絡也更有可能獲得許可——也就是說,不是任何人都可以參與。
區(qū)塊鏈精神的一部分涉及缺乏中央權(quán)威和控制。從本質(zhì)上說,需要許可意味著必須授權(quán)某人來提供許可,這就開始在網(wǎng)絡中構(gòu)建一些層次結(jié)構(gòu)。所以這是一種折衷:如果您知道網(wǎng)絡中的每個人都經(jīng)過了審查,那么您可能對系統(tǒng)的安全性更有信心。但是,只有當你信任人員、組織和管理審查如何進行的規(guī)則時,這才有效。這是一個微妙的平衡。
總之,物聯(lián)網(wǎng)設備產(chǎn)生大量的數(shù)據(jù)。為了達到我們的目的,假設生成的數(shù)據(jù)是正確的。然后以加密的方式在網(wǎng)絡上復制這些數(shù)據(jù)。各個節(jié)點上的投票者為每個交易生成一個加密投票,并且,如果有2/3的投票同意,該交易就會被鎖定在分類賬中。(至少,以宇宙網(wǎng)絡為例。)其他人的工作方式可能不同。)
驗證的速度相對較快:更新的算法承諾會更快(與有意使用的硬比特幣不同),允許快速打開大量驗證。對于任何給定的驗證(必須與其他驗證同時進行,并且必須達成一致意見),通常需要幾秒鐘(Gemalto說肯定不用30秒)。
所有這些都有一些內(nèi)在的復雜性,這就是為什么,如果數(shù)據(jù)只在雙方之間使用,或者如果它不能驅(qū)動自動化的決策和行動,那么它可能不是最佳的解決方案。區(qū)塊鏈是否會在物聯(lián)網(wǎng)中廣泛應用于那些可能使用它的應用程序?這還有待觀察。這仍需拭目以待。Gemalto非常確信這點。