區(qū)塊鏈技術具備篡改難度高、使用成本低的優(yōu)點,本應成為各行各業(yè)的重要助力。然而,各參與方擔心自己的數(shù)據外泄,成為區(qū)塊鏈應用過程中的主要難題。
在現(xiàn)有技術中,ABE為這個難題提供了一個可行的解決方案。通過ABE,區(qū)塊鏈中數(shù)據所有權將得到有效保護,鏈上數(shù)據依舊為參與者本人所有,外人無法控制。
作為國內外研究的重點領域,計算機界關于密碼學的研究熱度一直居高不下。有“計算機諾貝爾獎”之美譽的圖靈獎,其得主大半都是來自于加密領域。
在外界看來,密碼學同量子力學一樣,屬于一門高深莫測的學問。但實質上,不同于量子力學的原理較為復雜抽象,密碼學基本原理并不難懂,其問題多可以歸結為求解一個數(shù)學求解問題。也就是說,密碼問題,通常是數(shù)學問題。
ABE、屬性、策略
首先,ABE是什么?
從定義來講,ABE是基于屬性的加密,即(Attribute-Based Encryption)。與RSA、IBE(基于身份加密)等加密方式相比,其最大的不同點是實現(xiàn)了一對多的加解密。也就是說,ABE不需要像其他加密方式那樣,每次加密都必須知道接受者的身份信息,當用戶擁有的屬性符合加密者所描述的策略時,用戶就可以解密。
這里提到了屬性一詞。那么,屬性指的是什么呢?
屬性可以理解為一個對象具有的某些特征。舉個例子,Jacky Li是A大學信息安全學院的教授,那么“A大學”,“信息安全學院”以及“教授”就是ABE中刻畫Jacky Li這個人的多個屬性,多個不同的屬性,可以構成不同的屬性集合。在此基礎上,策略實際即是由屬性及它們間關系所組成的一個邏輯表達式。
倘若拋開嚴謹?shù)亩x,用一句話說明ABE公鑰加密算法,其實就是看屬性集合與策略是否匹配密碼要求的一個游戲。
了解數(shù)字貨幣的朋友,對公鑰和私鑰的概念大體不會陌生。用銀行卡作類比的話,我們可以近似的把公鑰理解為銀行卡號,把私鑰理解為銀行卡密碼,用戶通過私鑰來嘗試解密密文。
在ABE中,我們弱化公鑰這一概念,稱之為公共參數(shù)(public parameter)。屬性集合則被嵌入到私鑰中,如果用戶擁有的屬性可以與密碼要求的策略匹配成功,那么就可以成功解密啦!
來看一個例子
現(xiàn)有一條密文策略規(guī)定:參與X課題 or(信息安全學院 and A大學and 教授)。
這條策略表達的含義是,唯有X課題組的成員或A大學信息安全學院的教授才能滿足要求進行解密?,F(xiàn)在有三個用戶,分別是A大學信息安全學院的Alan教授,A大學經濟管理學院的Black教授,B大學參與X課題的Charles教授。
三個用戶中,Alan的屬性集合{計算機學院,A大學,教授}滿足要求,Charles的屬性{參與X課題}也滿足要求,但是Black的屬性不能滿足要求。所以Alan和Charles解密成功,而Black解密失敗。
KP-ABE 與 CP-ABE
目前,實現(xiàn)ABE的方案主要有CP-ABE(密文策略ABE)和KP-ABE(秘鑰策略ABE)。二者最大的分別在于策略和屬性的匹配方式上。
所謂CP-ABE,指的是策略嵌入在密文中,屬性集合嵌入到密鑰中,當且僅當屬性能夠滿足策略時可以解密。而KP-ABE是指,策略嵌入到密鑰中,屬性集合嵌入到密文中。
雖然在結構上,二者具有明顯的對偶關系,但在實際使用中,二者的應用場景卻有著明顯的不同。CP-ABE由于策略嵌入密文中,這就意味著,數(shù)據擁有者可以通過設定策略去決定擁有哪些屬性的人能夠訪問這份密文,也就相當于對這份數(shù)據做了一個加密訪問控制。
CP-ABE的應用場景一般是公有云上的數(shù)據加密存儲與共享,而KP-ABE的應用場景則更加偏向于付費視頻網站、日志加密管理等等。
與區(qū)塊鏈怎么結合
目前,從宣傳來看,如簽名、加密等技術與區(qū)塊鏈相結合,已經不是一件很稀奇的事,很多團隊都在宣稱將各種新技術加進自己的區(qū)塊鏈產品中。尤其是此前牛市的時候,幾乎一條新技術結合的新聞就能帶來一輪猛漲。
但事實上,僅把技術與區(qū)塊鏈結合并不困難,問題在于結合以后究竟有沒有價值呢?
任何新技術加進來之后,其價值最終還是要歸到對鏈本身有所優(yōu)化上,不能加進某個新技術之后,對鏈本身沒什么影響,甚至還拖慢了性能。即便知名度高如以太坊,圍繞著分片技術進行了多次的討論與升級,結果也始終差強人意。
因此,Trias鏈設計的重點放在研究其實現(xiàn)難度以及可能存在的問題上,比如共識算法的優(yōu)化、效率的提升、區(qū)塊如何設計等,重點在于找準他們的重點場景、真實場景,而非僅僅作為噱頭來展示。
這是很有遠見的做法。我們常說,“磨刀不誤砍柴工”,在任何一項技術與區(qū)塊鏈的結合之前,都要進行反反復復的探討和可行性驗證,而具體實現(xiàn)已經是相對往后的步驟了,倉促上馬的產品,其實際效果很難得以保證。
如某知名大嘴曾站臺的一系列項目,一度搞出金光閃閃的噱頭,但是其產品卻始終不盡如人意,營銷雖好,但瘸了一條腿,跑的終歸快不了。
價值,在于隱私性
目前,Trias正在深化推進ABE在各領域的可行性價值研究。Trias認為,ABE密碼學與區(qū)塊鏈結合的要義在于隱私性。
我們知道,區(qū)塊鏈的一大特點在于數(shù)據共享,這本是區(qū)塊鏈的一大優(yōu)點。然而,在實際應用中,很多參與者的數(shù)據很涉及機密,數(shù)據所有者并不樂意把自己的數(shù)據公開出來。
比如在金融領域。數(shù)據上鏈可以提高數(shù)據本身的安全性,也有利于監(jiān)管機構從區(qū)塊鏈中調取數(shù)據進行監(jiān)管,這些我們都知道了。但是為什么金融領域的區(qū)塊鏈應用遲遲推進不下去呢?一個亟待解決的重要問題是,金融公司本身不愿意將數(shù)據存在鏈上。因為這些數(shù)據都是相當敏感且重要的,一旦數(shù)據外泄,會帶來不小的損失。
而ABE則有利于解決這個問題。通過ABE,金融公司可以將自己的數(shù)據加密后傳到鏈上。由于數(shù)據全程都是密文,鏈上其他人拿到的都只是亂碼,拿到了也沒有用。
與之相對,金融公司自身可以控制誰能對數(shù)據進行訪問,只需要把數(shù)據訪問的權限交給監(jiān)管機構和與之有數(shù)據合作的伙伴即可。
傳統(tǒng)的加密方式是將數(shù)據加密后,將秘鑰發(fā)送給各個需要訪問數(shù)據的機構,這種方式效率雖然比較高,但是一旦秘鑰外泄,無法斷定是哪一個機構作為。相比起傳統(tǒng)的加密,ABE的好處很明顯,因為每一個機構的屬性不盡相同,其秘鑰也不盡相同,一旦我把秘鑰泄露給外界,很容易就被追查得到。
當然,目前外界對ABE了解不多,人們很不愿意去相信不熟悉的東西,這是任何新技術誕生之后但會面臨的窘境。如何制定相關標準并讓各行業(yè)從業(yè)者了解到ABE的價值,還需要一段時間去解決。
來源: TRIAS?