曹珍富
(華東師范大學計算機科學與軟件工程學院 上海 200062)
《計算機研究與發展》作為我國最早的計算機刊物,創刊已經整整60周年了.而信息安全作為一個學科領域的公開研究卻是從1976年Diffie-Hellman提出公鑰密碼開始的.本人于1980年開始從事公鑰密碼研究,當時就給出了幾類RSA改進方案和數字簽名方案,所以有幸成為公鑰密碼學研究的最早的見證者之一,出版了國內第一部《公鑰密碼學》專著[1]和國際上第一部涉及多方的密碼學專著《現代密碼學的新方向》[2].
按照解決安全問題的手段,信息安全大致可分為兩大類:1)基于保密手段的系統安全;2)公開手段的密碼安全.系統安全通常是不用密碼技術的,而密碼安全是使用密碼技術的.因為密碼技術是可證明安全的,所以后者又被稱為可證明安全的安全技術.如今,隨著移動互聯網、物聯網、云計算、大數據、區塊鏈與人工智能等新型網絡形態及網絡服務的興起,人們開始在系統安全領域不斷引入密碼技術并提出新的密碼問題,使得密碼安全不斷地滲透到系統的方方面面.這種滲透可能是信息安全發展過程中的最大趨勢了.而滲透的結果加上新的服務運營模式,使得現代密碼學呈現新的特點[3-4]:
1)“端端”單方模式改變為多方模式——由“一對一”的單方通信模式改變為“一對多”、“多對一”、“多對多”的多方通信模式(將產生非常多的涉及多方的密碼學理論問題);
2)“位置”本地模式改變為異地模式——計算和處理模式由本地位置向異地位置轉變(本地可控向異地不可控、不可泄露轉變);
3)“安全模型”由信道安全改變為“信道安全+”模型——即除了信道安全,還需具有其他安全性要求.
在這里,我將從應用驅動出發,較為詳細地介紹在密文訪問控制、安全外包計算、安全搜索、電子貨幣與區塊鏈安全、人工智能與機器學習中的安全與隱私保護等方面的最新理論研究進展與未來發展方向.此外,還將介紹這些成果的一些應用,包括加密數據共享移動設備研制與基于生物信息的身份鑒別類應用等.
密文訪問控制(ciphertext access control)也稱密態訪問控制,是指對密文數據實現的訪問控制.屬性基加密(attribute-based encryption, ABE)通過對用戶私鑰設置屬性集(或訪問結構),為數據密文設置訪問結構(或屬性集),由屬性集和訪問結構之間的匹配關系確定其解密能力.特別是密文策略的屬性基加密(ciphertext-policy attribute-based encryption, CP-ABE)是解決密文存儲后訪問控制問題的重要出發點.自Shannon在1948年提出經典信道通信模型以來,歷經幾十年的發展歷程,直到Diffie-Hellman密鑰交換的出現,以至當前如火如荼地建立在選擇明文安全或適應性選擇密文安全模型基礎上的屬性基加密,國內外學者一直沿襲著信道安全模型的腳步開展了一系列重要研究并取得了里程碑式的結果[5].然而,為了達到“雙贏”乃至“多贏”的目的,敵手可以向非授權用戶惡意泄露其私鑰或公開售賣聲稱具有特定解密能力的解密黑盒,以獲得非法收益.由于在CP-ABE中,所有能使得密文中的訪問控制結構為真的用戶都擁有合法私鑰可以成功解密密文,為了有效抵抗密鑰共享攻擊,必須從應用需求出發考慮可追蹤的安全模型,對密鑰泄露源進行有效追蹤.其次,還需要設計有效的撤銷機制,將非授權用戶非法獲得的訪問控制權限進行撤銷,從而將私鑰泄露的損害降到最低.在傳統信道安全模型的基礎上,融合可追蹤、可撤銷的安全模型,從而邁入“信道安全+”的時代,成為了當今信息安全發展的一大趨勢.
為了適應大數據背景下計算、通信能力受限的移動用戶的性能需求,尋求更短密文、短密鑰、短公開參數的,且具備豐富表達能力的,基于簡單標準難題假設的可追蹤、可撤銷、多機構屬性基加密方案是一個值得進一步研究的方向[6-11].近年來,在可追蹤方面,我和劉振、Wong D S[6]提出了第一個同時支持高表達力和抗全合謀黑盒可追蹤性的密文策略屬性基加密系統,后來我們[7]還提出了一個同時支持白盒可追蹤和大屬性空間的密文策略屬性基加密方案.在可撤銷方面,我和梁曉輝、林煌等人[8]提出了多用單向的屬性基代理重加密方案,基于授權有效地實現了由一個訪問控制結構到另一任意訪問控制結構的完全密鑰撤銷.之后,董曉蕾等人[9]提出了(無需授權的)可撤銷屬性基加密方案,引起Sahai等人的極大興趣,后者在2012年的國際密碼技術年會上提出了另一個適合動態的可撤銷屬性基加密方案[10].后來,我和周俊、董曉蕾等人[11]還提出了第一個同時具有白盒可追蹤、可撤銷與多機構的密文策略屬性基加密方案,適用范圍大大擴大了.
安全外包計算(secure outsourced computation)是指計算資源受限的用戶將計算開銷較大的函數運算外包給云服務提供商在密文域上實現.而云服務提供商可能是半可信的甚至是惡意的(比如被收買):半可信是指服務提供商嚴格執行協議的規定,但通過與用戶的交互最大程度地提取有關用戶隱私的秘密信息;惡意是指服務提供商可以任意破壞協議的執行來獲得用戶隱私的秘密信息.安全外包計算正是因解決這方面問題而提出的前沿課題,它能夠實現在外包計算過程中的輸入隱私、輸出隱私和函數隱私.
然而國內外有關可驗證外包計算的研究工作多基于公鑰全同態加密技術實現,需要將計算開銷本來就較大的公鑰全同態加密作用在每一個輸入數據上來實現隱私保護,其巨大的計算開銷無法滿足面向大數據系統的性能需求.更重要的是,直接將公鑰全同態加密應用于數據本身,違背了混合加密體制中用公鑰加密算法來加密較短的對稱密鑰,用對稱密鑰來加密大數據這一基本原則[3].國內外大量研究嘗試通過減少公鑰全同態加密本身的計算開銷來構造輕量化的密文計算方案,然而其結果仍無法滿足大數據背景下的客觀需求.因此,如何在不得不使用公鑰加密實現隱私保護的前提下,通過減少公鑰加密的使用次數(最低只使用一次,與輸入數據的大小無關)來實現不依賴公鑰全同態加密的、高效的隱私保護外包計算新理論、新方法,是一個全新的研究方向.此外,如何在惡意環境下,設計高效的安全外包計算結果正確性驗證機制,也是國內外研究的熱點之一[12-13].近年來,我和周俊、董曉蕾等人[12]提出了不依賴公鑰加法同態加密的數據包傳輸證據生成算法,解決了基于云的車載容遲網絡中抵抗合謀夾層攻擊這一挑戰性問題.同時,我們[13]不依賴公鑰全同態加密,提出了一個基于SIFT特征描述子的輕量級隱私保護外包圖像特征提取與匹配協議.
安全搜索(secure search)通常指對加密數據的有效搜索.為了解決當數據加密存儲在云端時,服務器不完全可信的前提下如何利用服務器來完成安全的關鍵詞的搜索問題,學者們提出了可搜索加密(searchable encryption).作為安全搜索的核心技術,可搜索加密具有廣闊的應用前景,對云計算及大數據環境下構造安全、高效的安全搜索方案具有很強的理論及現實意義.然而,近年來隨著無線通信與移動計算的迅猛發展,無線體域網、智能電網、車載網等一系列新興網絡應用均具有存儲和計算資源受限的特點.因此,真正實現安全搜索僅依賴可搜索加密技術是不夠的.我們可將安全搜索定義為:“可搜索加密+X”,其中X可根據不同的安全搜索需求定義不同的研究對象[14].同時,為使得安全搜索在新興網絡應用服務中達到高效實例化,還需要研究可搜索加密輕量化、批量化處理技術,其基本要求是:在不損失安全性的前提下使之適合各類資源受限的網絡應用.
可搜索加密主要包含對稱可搜索加密(symme-tric searchable encryption)和非對稱可搜索加密(asymmetric searchable encryption)兩種類型,二者分別在功能和性能方面有不同的側重點,分別用來解決云計算不同場景下的業務需求問題.根據文件擁有者和查詢用戶數目的多少,可搜索加密可以分為一對一、一對多、多對一和多對多4種模式.可參看文獻[14].
可搜索加密未來主要研究方向體現在3方面:
1) 靈活的密文搜索語句不僅能夠讓用戶可以更加精確地定位到所需要的加密數據文件,同時也可以讓用戶能夠更加靈活地表述搜索需求,所以,研究模糊搜索、有序搜索、區間搜索以及子集搜索等復雜性密文可搜索能力是可搜索加密研究中的一個重要課題.
2) 針對不同需求,結合可搜索方案的不同表達能力,定義不同可搜索加密方案的安全級別.并在此基礎上,尋求簡單高效的難題假設,證明可搜索加密方案的安全性.
3) 研究可搜索加密方案的搜索憑證、搜索關鍵字與密鑰、密文間的關系,探索用越短的密鑰、密文來實現表達能力越豐富的可搜索加密方案.進一步地,結合不同的需求和安全級別,探索高效安全的可搜索加密[15-16].
近年來,我和王海江、董曉蕾等人[15]提出了一個高效的屬性基可搜索加密方案,同時,我們[16]還提出了一個輕量級隱私保護外包模式匹配協議,在保護文本隱私、查詢隱私與匹配結果隱私的前提下,大幅度減少了用戶端的計算與通信開銷.
電子貨幣(electronic currency)是將現金或存款以電子的方式進行兌換和存儲,并能夠像傳統貨幣一樣進行支付的貨幣形式.密碼學家Chaum在20世紀80 年代以盲簽名為基礎提出了電子貨幣這一概念,并研發了E-Cash電子貨幣系統[17].2009 年,以區塊鏈和密碼技術為基礎的比特幣的出現在世界范圍內刮起了一股去中心化電子貨幣熱潮,各國政府、銀行及金融機構開始采取措施積極推動電子貨幣的發展.目前全球有超過90家央行參與區塊鏈研究,并致力于構建電子貨幣系統.
電子貨幣算法的研究引起國際學術前沿的密切關注,研究人員通過構造密碼算法以解決電子貨幣系統的一些基本安全問題.如:利用延展零知識證明,可提出具有更強安全性的延展簽名方案[18].而基于延展簽名方案,可提出支持離線可轉移、雙花檢測的匿名電子貨幣方案[19],允許用戶在不知道銀行的簽名私鑰的條件下對簽名的消息進行追加式變換而得到新的有效的銀行簽名,從而達到離線可轉移特性.利用公開的全局樹結構構建電子貨幣,提出了既高效又具有標準模型下可證明安全的可分電子貨幣系統[20].利用零知識證明等技術,提出了Zerocoin方案[21],可實現強匿名性.此外,還提出了Bitcoin-NG協議[22],相比于比特幣具備更高的吞吐量、更低的延遲.
隨著對電子貨幣研究工作的進一步推進,將密碼技術與區塊鏈技術兩者有機的結合,并構建安全、高效、可擴展、可監管、具有交易隱私性的電子貨幣系統,已成為該領域的研究熱點之一.英國央行率先推出了RSCoin電子貨幣系統[23],與傳統貨幣一樣由中央銀行控制和發行,但同時也具備了區塊鏈的技術優勢.目前的電子貨幣的流通依然面臨著嚴峻的安全挑戰.2014年,當時世界最大的比特幣交易所Mt.Gox被盜85萬個比特幣,價值3.5億美元[24];2016年,黑客利用the DAO智能合約中split函數的漏洞,盜取the DAO智能合約中的以太幣,導致價值6千萬美元的以太幣損失[25].
針對以上電子貨幣與區塊鏈系統中的安全與隱私保護問題,該方向的未來主要研究方向集中在5個方面:
1) 研究電子貨幣的基礎構造理論,以及算法和協議的可證明安全模型;
2) 研究“幾乎”無中心的電子貨幣新算法,包括電子貨幣共識機制、電子貨幣高效和匿名流通支付模型等;
3) 研究多中心的電子貨幣新算法,包括電子貨幣安全的分級發行方法、電子貨幣流通的授權可追蹤方法與認證方法等;
4 )研究電子貨幣安全賬本模型,包括可防偽可驗證的加密賬本原理等;
5) 研究電子貨幣安全分析模型,包括電子貨幣算法攻擊分析和防護方法、安全能力測試和評估機制、業務風險分析及安全監管機制等.
當然,還需要對區塊鏈本身進行研究.由于區塊鏈中的各個密碼算法是具有生命周期的,所以完全去中心化的區塊鏈實質上是不存在的.區塊鏈的安全性主要來自于密碼算法,但密碼算法安全參數當前是安全的,并不代表它未來也是安全的,而且密碼算法本身在未來也可能被攻破,因此密碼算法需要周期性更新或調換.作為去中心化的區塊鏈,這項工作誰來完成?所以基于輕量CA的區塊鏈應成為設計者的主要出發點.此外,與傳統的區塊鏈去中心化概念相對的,我們還可以將區塊鏈看作一個分布式的可信中心,用于各類密碼算法或協議的應用當中.這方面雖然我們已經做了一些嘗試,但仍然展示廣闊的未知領域,等待人們進一步去探索[26].
機器學習(machine learning)是一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、算法復雜度理論等多門學科[27].它專門研究計算機怎樣模擬或實現人類的學習行為,以獲取新的知識或技能,重新組織已有的知識結構使之不斷改善自身的性能.它是人工智能的核心,是使計算機具有智能的根本途徑,其應用遍及人工智能的各個領域,它主要使用歸納、綜合而不是演繹.
機器學習的隱私保護是近2年國內外研究的熱點,主要集中于如何在保護訓練集數據隱私的前提下進行密文域上的模型訓練,以及如何在保護輸入數據隱私、模型參數隱私以及預測結果隱私的前提下進行密文域上的模型計算.
國內外最新的研究成果主要利用2種技術:1)利用公鑰全同態加密對訓練集數據進行加密,從而實現隱私保護的模型訓練與預測,然而其巨大的計算和通信開銷無法滿足資源受限的本地用戶的客觀性能需求;2)利用秘密分享技術,通過安全多方計算協議來實現機器學習的安全與隱私保護,然而其需要服務器實時在線,并與用戶進行實時交互.此外,推薦系統的隱私保護也是與之休戚相關的重要研究課題.現有的隱私保護推薦系統主要通過基于數據擾動技術、公鑰全同態加密技術或安全多方計算技術實現.基于前者構造的隱私保護推薦系統的效率較高,但會對推薦系統結果的可用性帶來一定影響;基于后者構造的隱私保護推薦系統結果精確度高,但在用戶本地的計算、通信開銷都較大.
因此,如何在保護用戶歷史數據隱私、模型參數隱私以及模型計算結果隱私的前提下,在機器學習模型計算結果或推薦系統的預測結果精確度與效率兩者間達到有效的平衡是具有重要理論意義與實用價值的研究課題.此外,如何利用人工智能和機器學習的方法,將各類行為按照其特征進行有效分類,從而快速鎖定敵手的惡意(潛在)攻擊行為,也是近年來的研究熱點之一.近年來,唐強等人[28-29]分別利用公鑰全同態加密和安全多方計算技術提出了隱私保護的推薦系統.
基于以上一些理論成果,我們曾進行了一系列的應用系統原型開發,包括加密數據共享移動設備硬件研制與基于生物信息的身份鑒別類應用等[4-5].
加密數據共享設備的核心部件是芯片.通過具體的規則控制用戶獲取私鑰,或通過具體的屬性集合提取用戶私鑰.用戶使用此芯片連接服務器,只有當用戶權限能夠滿足訪問規則時才能解密,從而閱讀使用.
由于文件本身以明文形式存儲在訪問控制服務器中,該服務器本身就容易成為攻擊的目標.一旦服務器被攻陷,所有明文存放的數據都將暴露.因此,要求以加密數據存儲來實現加密文件系統.然而,針對不可信的文件系統,采用加密的方式存放在服務器上,又面臨訪問控制與文件共享的困難:每個用戶只能解密自己的文件,缺少文件的共享機制與靈活的訪問機制.
我們的加密數據共享設備芯片以Verilog電路形式實現前述功能,其主要元件包括狀態控制器、數據存儲器、指令存儲器、程序計數器和算術邏輯器.能支持有限域上的乘法、求逆運算和橢圓曲線上的點加、數乘和配對運算.其正確性在Xilinx FPGA 平臺(Xilinx Virtex 5-110T 型號、65 納米工藝、100 MHz主頻率)上通過了驗證.并基于Java技術研制出了跨平臺(Windows, Linux) FPGA形式的演示系統.在FPGA系統中,Tate配對的電路設計是其核心,而使用高效實現Tate配對的Duursma-Lee算法時需要10次調用有限域GF(3m)上的立方運算.2011年,我們提出了一個生成有限域GF(3m)上立方運算電路的一般化方法,該方法應用于由不可約多項式x97+x16+2生成的有限域GF(397)上立方運算電路只需96個加法器,比同年國際上發表在IEEE Transactions on Computers上最新研究結果[30](需要111個加法器)減少13.5%;將該方法用于Tate配對運算中580個不同的不可約多項式確定的有限域后,其立方運算電路所需加法器個數比已有的平均減少31.7%.實驗表明,我們提出的方法對形如xm+ptxt+x0(t 基于生物信息的身份鑒別與防偽技術,通常基于訪問控制服務器的判斷與鑒別,抗攻擊能力弱,服務器本身就容易成為攻擊的目標.而且生物信息需要存儲,給存儲服務器帶來了很大存儲與通信開銷,也泄露了用戶的隱私信息.所以,不用存儲生物特征的任何信息實現用戶的身份鑒別與防偽是一個重要研究課題[5].但是在不存儲用戶生物特征(如用戶的指紋掃描數據等)的前提下,用已有的基于身份的鑒別技術很難實現比對,因為一對一的密碼技術并不具有容錯性,而現實中很難做到2次獲得的生物特征數據完全吻合. 我們曾提出了模糊身份的簽名技術,并用該技術提出了不存儲生物特征而實現生物特征比對的防偽技術.該技術不需要訪問控制服務器的存在,也不需要存儲用于比對的生物特征的圖片或特征點信息,降低了存儲和通信的開銷,實現離線狀態下的認證功能.該技術可以應用在指紋、虹膜等生物特征的防偽銀行卡、電子護照、加油卡、門禁卡、身份證等“證、卡、票、券”上面.后來這一技術被發展為一般的屬性基簽名,引起許多研究.參看文獻[5]. 本文從應用驅動出發,介紹了密文訪問控制、安全外包計算、安全搜索、電子貨幣與區塊鏈安全、人工智能與機器學習中的安全與隱私保護等信息安全重大研究領域的最新研究進展,并進一步提出了各個領域存在的挑戰性公開問題,指明了相關領域的未來研究方向. 最后,衷心地祝愿《計算機研究與發展》越辦越好!