專題·新時代密碼工作:密碼技術的現狀與白盒化發展趨勢
在數(shu)字網(wang)(wang)絡(luo)逐(zhu)步成(cheng)為(wei)控制世(shi)界(jie)(jie)的大(da)腦,成(cheng)為(wei)物(wu)理世(shi)界(jie)(jie)靈魂的時代(dai),數(shu)字網(wang)(wang)絡(luo)世(shi)界(jie)(jie)的安全就變得尤為(wei)重(zhong)要。密碼(ma)技(ji)術(shu),作(zuo)為(wei)數(shu)字網(wang)(wang)絡(luo)世(shi)界(jie)(jie)最(zui)(zui)基礎(chu)最(zui)(zui)核心的安全技(ji)術(shu),越(yue)來越(yue)成(cheng)為(wei)世(shi)界(jie)(jie)各(ge)國競爭的重(zhong)要資源。
本文從多個角度觀察我國密碼技術發展的現狀;研究數字網絡高速發展的新形勢對密碼技術的需求;探討密碼技術發展的方向,研究白盒、密鑰容忍安全和零信任技術背后的意義。一、我(wo)國密碼(ma)發展現狀
(一)密碼基礎理論發展與世界同步
我(wo)國(guo)學者(zhe)二三十年(nian)前研究(jiu)(jiu)的(de)算法(fa),如 SM2、SM3、SM4 等逐步成(cheng)為(wei)國(guo)際標準,說明我(wo)國(guo)的(de)算法(fa)理(li)論研究(jiu)(jiu)與(yu)國(guo)際并行,也說明我(wo)國(guo)在(zai)尖端密(mi)碼(ma)理(li)論領域有頂尖人才。我(wo)國(guo)的(de)算法(fa)成(cheng)為(wei)國(guo)際標準,面(mian)臨著許多專家和政(zheng)治勢(shi)力的(de)挑戰,算法(fa)安全如果(guo)存在(zai)問(wen)題是很難成(cheng)為(wei)國(guo)際標準的(de)。
我國的(de)(de)(de)算法(fa)(fa)安全與國際同(tong)步,也(ye)反映了我國一直以(yi)來對密(mi)碼基礎研究的(de)(de)(de)保護和重視。我國其他行業目(mu)前仍有(you)(you)難以(yi)趕上的(de)(de)(de)掐脖子技術問題(ti),但(dan)密(mi)碼算法(fa)(fa)領域能夠迅速崛起,說明了我國的(de)(de)(de)密(mi)碼管理(li)有(you)(you)一套需要堅持的(de)(de)(de)成功(gong)路徑(jing)和方(fang)法(fa)(fa)。
(二)密碼工程技術緊隨世界潮流
我國(guo)的(de)(de)密(mi)碼(ma)工程(cheng)技(ji)術也(ye)(ye)并(bing)不落后,我們有全球(qiu)最快(kuai)的(de)(de)加密(mi)機,說(shuo)明我們的(de)(de)算(suan)法實現(xian)(xian)技(ji)術世界(jie)(jie)一流。我們也(ye)(ye)有多款達到密(mi)碼(ma)模塊(kuai)(kuai) 3 級(ji)國(guo)際標(biao)準的(de)(de)密(mi)碼(ma)機(密(mi)碼(ma)模塊(kuai)(kuai)最高級(ji)別為 4 級(ji),僅用于極其(qi)特殊的(de)(de)安全場(chang)景),說(shuo)明我們的(de)(de)密(mi)碼(ma)模塊(kuai)(kuai)的(de)(de)安全設計水平也(ye)(ye)與世界(jie)(jie)同步(bu),完全能夠在大部分應用場(chang)景實現(xian)(xian)安全替代。我們也(ye)(ye)有了成體系的(de)(de)密(mi)碼(ma)產品和標(biao)準,能夠勝任(ren)信(xin)息系統的(de)(de)密(mi)碼(ma)保護。
面對我國高速發展的信息化需求,我國密碼產品數量和質量仍有待大幅提高。在我國的互聯網信息系統中,大量的密碼產品,密鑰管理產品,特別是軟件密碼產品仍舊是國外品牌。我們自己生產的密碼產品仍舊無法滿足我國信息化高速發展所面臨的多樣化高質量需求。我們需要更多的企業和更多的工程技術人員來發展自主的密碼技術和產品,提升產品規模和產品質量。(三)密碼應用亟待加強
我國密碼產品應用涉及密碼與應用系統的緊密結合,需要懂密碼的工程師和專家來推動這種融合,確保密碼在不同的應用中發揮保護作用。由于每種應用有不同的安全需求,密碼保護方案會各不相同,從而需要大量的懂密碼的人才來支撐我國信息化高速發展下應用多樣化的強勁的密碼應用需求。由于我國密碼人才的不足,高校培養體系也不夠健全,市場上懂密碼的人才顯得非常匱乏。密碼應用工作的成敗關鍵在人才,密碼應用和密碼應用測評的普及需要大量的密碼人才隊伍。目前,密碼應用工作是我國密碼發展的短板,亟需補上。黨和(he)政(zheng)府(fu)充分認識到密(mi)(mi)(mi)碼(ma)(ma)(ma)應(ying)用工作(zuo)(zuo)的(de)重要性,正大力(li)推動密(mi)(mi)(mi)碼(ma)(ma)(ma)的(de)規模(mo)化應(ying)用,以保(bao)護(hu)重要信(xin)(xin)息(xi)系(xi)統(tong)和(he)基礎設施的(de)安(an)全。在信(xin)(xin)息(xi)系(xi)統(tong)等級(ji)保(bao)護(hu)政(zheng)策中(zhong),已將密(mi)(mi)(mi)碼(ma)(ma)(ma)應(ying)用安(an)全性測評作(zuo)(zuo)為系(xi)統(tong)等級(ji)測評的(de)一個方面。同時,政(zheng)府(fu)也非常(chang)注(zhu)重密(mi)(mi)(mi)碼(ma)(ma)(ma)教(jiao)育和(he)人才(cai)培養,正著(zhu)力(li)推動密(mi)(mi)(mi)碼(ma)(ma)(ma)學(xue)科建設及密(mi)(mi)(mi)碼(ma)(ma)(ma)學(xue)院建設,以確保(bao)我(wo)國信(xin)(xin)息(xi)化發展的(de)安(an)全保(bao)障有后勁,有力(li)量。
(四)密碼管理與密碼法
我(wo)國(guo)(guo)的(de)(de)(de)密(mi)碼(ma)(ma)管理工(gong)作(zuo)是最為成功的(de)(de)(de)管理工(gong)作(zuo)。密(mi)碼(ma)(ma)技術從基礎的(de)(de)(de)算法與算法分析(xi)研究到密(mi)碼(ma)(ma)產品,再到密(mi)碼(ma)(ma)應(ying)用等都有完全(quan)自主(zhu)的(de)(de)(de)技術體(ti)系(xi),基本沒有卡脖子技術的(de)(de)(de)困擾。我(wo)們(men)(men)的(de)(de)(de)算法是國(guo)(guo)際標準,我(wo)們(men)(men)的(de)(de)(de)產品可以與國(guo)(guo)際同(tong)臺(tai)競爭,我(wo)們(men)(men)的(de)(de)(de)應(ying)用也有很多成功的(de)(de)(de)示范。局(ju)限于信息技術和(he)產品,我(wo)們(men)(men)的(de)(de)(de)密(mi)碼(ma)(ma)設備研發的(de)(de)(de)規模和(he)平均質量還有待(dai)提高,但密(mi)碼(ma)(ma)基礎核(he)心技術都掌握在我(wo)們(men)(men)自己手里。
隨著密碼法的實施,我國的密碼管理又走到一個更加先進,更加開放的管理模式,將更加有力地推進我國密碼技術和密碼產業發展,為我國的信息安全奠定更加堅實的技術基礎。密碼法規定了與世界接軌的測評認證體系,能更好更公平提升密碼產品的質量;密碼法無歧視對待在中國的任何企業,不僅僅有利于我國密碼發展充分利用全球智慧,同時也有利于我國的密碼企業走向世界。密碼法出臺,不僅僅是密碼產業推進的號角,是我國產業發展開放的新標桿,也是網絡安全發展的一次科普。二、新形勢對密碼發展的新需求
我們進入了一個正在起步的數字網絡化時代。掃地機器人、智能聯網家電、智能門鎖以及家用互聯網攝像頭等一系列信息化聯網的生活產品正快速普及。電子手表、智能終端等開始成為日常的隨身配置。生活、工作、商業、科研等業務都在向數字網絡快速轉移。我們正在經歷一個嶄新的全球數字化發展新時代。信息化的快速發展不僅是全世界發展的機遇,也“為中華民族帶來了千載難逢的機遇”。(一)網絡空間命運共同體已經形成
我們已經進入了網絡空間命運共同體的時代。世界各國共同維護網絡安全成為共識。在這樣的時代,多網融合已經完成。多種終端,包括手機、智能家居、智能汽車、監控攝像頭和移動傳感器等,以及各種業務,包括金融、購物、科研、社交和政務等全部接入了一張巨大的互聯互通的網絡。整個世界也與互聯網絡緊密結合在一起,從而構成了新型的人類命運共同體。獨立的隔離網絡要么正逐步離開人們的視野,成為過去網絡發展的歷史,要么通過各種途徑逐步融入這一張巨大的互聯互通網絡世界中。世界上所有的人都能在網絡上生活學習工作游戲,包括恐怖分子;各種系統都在網絡上運轉,包括黑客的系統;各種代碼都在網絡上運行,包括病毒;各種數據都在網絡上傳輸,包括暴力和色情數據。網絡空間命運共同體不僅僅意味著共享,更意味著共同維護,也意味著永遠無法絕對安全。在網絡(luo)空間命(ming)運共同體(ti)的(de)(de)(de)(de)(de)(de)時(shi)代,網絡(luo)互(hu)聯的(de)(de)(de)(de)(de)(de)方(fang)法和維度逐步增加,使(shi)得某些(xie)不希望(wang)聯網的(de)(de)(de)(de)(de)(de)設備(bei)也(ye)(ye)(ye)無(wu)法逃脫多種(zhong)方(fang)式(shi)的(de)(de)(de)(de)(de)(de)網絡(luo)連(lian)(lian)接。在不聯網的(de)(de)(de)(de)(de)(de)區域,一個手(shou)機通過 4G、借助 WIFI 或(huo)藍牙(ya)就能(neng)夠讓(rang)不該聯網的(de)(de)(de)(de)(de)(de)設備(bei)聯入互(hu)聯網絡(luo);連(lian)(lian)結屏幕的(de)(de)(de)(de)(de)(de)電纜、連(lian)(lian)接外設的(de)(de)(de)(de)(de)(de)導線,能(neng)夠使(shi)這些(xie)原本不是作(zuo)為天線來(lai)(lai)使(shi)用材料,也(ye)(ye)(ye)可(ke)以(yi)并且(qie)有能(neng)力(li)將本該隔離的(de)(de)(de)(de)(de)(de)信息發送(song)到外網;電力(li)的(de)(de)(de)(de)(de)(de)消(xiao)耗(hao)、運行的(de)(de)(de)(de)(de)(de)時(shi)間信息等,也(ye)(ye)(ye)可(ke)以(yi)將不該泄露(lu)的(de)(de)(de)(de)(de)(de)信息泄露(lu)出去;隨身(shen)攜帶的(de)(de)(de)(de)(de)(de) U 盤(pan)、光盤(pan)或(huo)者手(shou)表,都可(ke)能(neng)成為突(tu)破物(wu)理(li)隔離的(de)(de)(de)(de)(de)(de)傳輸介質。依靠物(wu)理(li)隔離達到網絡(luo)隔離的(de)(de)(de)(de)(de)(de)目標變得越來(lai)(lai)越難以(yi)保證,并逐漸成為一種(zhong)不可(ke)能(neng)完成的(de)(de)(de)(de)(de)(de)任務(wu)。
密碼正成為這個時代的關鍵基礎技術,成為保護網絡主權,重塑網絡邊界,保障網絡傳輸安全的不二選擇。密碼可以表達我們的控制,宣誓我們的權利;密碼可以形成解密屏障,阻擋外界對信息的解讀;密碼可以保護我們的數據傳輸,保證數據不被修改,不被解密。(二)數字世界工業革命已經開始
隨著多種通信技術發展,網絡無處不在已是現實。以寬帶網絡互聯為第一基本特征的云計算的興起,預示著數字世界規模化、專業化革命的開始,也就是數字世界工業革命的開始。在這樣的時代,個人購買網絡云存儲比自己購買硬盤更加有效;企業不再安裝 WEB 服務器或郵件服務器,而是租用云上的 WEB 服務或郵件服務來滿足企業網絡需求。在這樣的時代,很少有人或企業全部靠自己完成數字系統或信息業務。每一項網絡工作,不管是網絡服務或產品的研發還是生產,都是眾多企業或研究團隊合作的結果。細分專業中的點點進步,都會借助互聯網絡廣闊巨大的市場空間帶來豐厚的“長尾”回報,這確保了專業化創新的可持續發展。專業(ye)化(hua)的(de)分工發(fa)(fa)展(zhan)是先進社會(hui)創(chuang)(chuang)新(xin)的(de)必然結果,在這(zhe)樣(yang)的(de)形勢下,協作(zuo)就成(cheng)了(le)現(xian)代社會(hui)的(de)必備要(yao)素。數(shu)字(zi)網絡中的(de)安全(quan)(quan)協作(zuo)所需要(yao)的(de)密碼技(ji)術(shu),如(ru)多方(fang)安全(quan)(quan)計(ji)算,將(jiang)成(cheng)為推(tui)動數(shu)字(zi)世界工業(ye)化(hua)發(fa)(fa)展(zhan)的(de)重要(yao)技(ji)術(shu)支(zhi)撐。另(ling)一方(fang)面,正如(ru)信任體系是現(xian)實世界工業(ye)化(hua)發(fa)(fa)展(zhan)的(de)重要(yao)基礎(chu)一樣(yang),網絡信任體系相關技(ji)術(shu)也將(jiang)成(cheng)為未來數(shu)字(zi)經濟創(chuang)(chuang)新(xin)發(fa)(fa)展(zhan)的(de)基礎(chu)性技(ji)術(shu)。
(三)數字經濟起飛的時代
當前,大多數(shu)的銀行都能提供相關(guan)的網(wang)絡服務,并已經將用戶的資產搬到(dao)網(wang)絡上(shang);網(wang)絡商(shang)店發(fa)展飛(fei)速,將商(shang)品(pin)買賣搬到(dao)網(wang)絡上(shang);人(ren)們的社交(jiao),管理,家居也快(kuai)速走向(xiang)網(wang)絡;政(zheng)府(fu)以服務人(ren)民(min)為宗旨(zhi),讓人(ren)們少跑路(lu),讓信息多跑路(lu),從而(er)推動網(wang)上(shang)政(zheng)府(fu)服務并且覆蓋大部分(fen)政(zheng)務領(ling)域。可以看到(dao),國(guo)家經濟的發(fa)展也必將利用網(wang)絡化優勢,數(shu)字化已經成為推動我(wo)國(guo)經濟發(fa)展的強(qiang)大動力。
我們(men)已有的(de)(de)(de)財(cai)富(fu)需(xu)(xu)要網絡(luo)來(lai)表達;我們(men)的(de)(de)(de)日程安排要靠電子設(she)備記錄(lu);我們(men)的(de)(de)(de)房產(chan)證(zheng)和(he)發票是(shi)否正(zheng)(zheng)確(que)(que)都需(xu)(xu)要通過網絡(luo)來(lai)判別;數(shu)(shu)(shu)(shu)字(zi)(zi)貨幣只有依(yi)靠數(shu)(shu)(shu)(shu)字(zi)(zi)設(she)備的(de)(de)(de)顯示來(lai)使(shi)用。數(shu)(shu)(shu)(shu)字(zi)(zi)經濟使(shi)得我們(men)經濟的(de)(de)(de)發展需(xu)(xu)要更加強有力(li)的(de)(de)(de)數(shu)(shu)(shu)(shu)字(zi)(zi)安全(quan)(quan)(quan)技術保障。以密(mi)碼技術為(wei)核(he)(he)心的(de)(de)(de)數(shu)(shu)(shu)(shu)據(ju)安全(quan)(quan)(quan)技術將成為(wei)數(shu)(shu)(shu)(shu)字(zi)(zi)經濟發展的(de)(de)(de)核(he)(he)心力(li)量(liang)。數(shu)(shu)(shu)(shu)字(zi)(zi)安全(quan)(quan)(quan),不僅僅包含數(shu)(shu)(shu)(shu)據(ju)的(de)(de)(de)完整、保密(mi)、真實與(yu)抗(kang)抵賴(lai),更需(xu)(xu)要保護數(shu)(shu)(shu)(shu)據(ju)的(de)(de)(de)所有權關(guan)系不被破壞,也就是(shi)保護數(shu)(shu)(shu)(shu)字(zi)(zi)世界的(de)(de)(de)生產(chan)關(guan)系安全(quan)(quan)(quan)。我們(men)要保護數(shu)(shu)(shu)(shu)據(ju)的(de)(de)(de)所有權,確(que)(que)保任何人不能隨便占有或非法使(shi)用。以密(mi)碼為(wei)基礎的(de)(de)(de)區塊鏈技術快速崛起,正(zheng)(zheng)是(shi)因為(wei)它開辟一個數(shu)(shu)(shu)(shu)字(zi)(zi)資(zi)(zi)產(chan)管理,也就是(shi)數(shu)(shu)(shu)(shu)字(zi)(zi)資(zi)(zi)產(chan)所有權關(guan)系保護的(de)(de)(de)新(xin)方向。
(四)軟件定義一切的時代
硬件標準化是數字產業發展的必然趨勢,個性化配置越來越依賴軟件完成。軟件定義網絡、軟件定義存儲、軟件定義數據中心等已經成為當今的重要技術方向。軟件定義一切的發展,也讓數字網絡能更好地服務百姓,并向不斷變化的需求提供了靈活的技術支撐,是未來數字系統的技術特色。在軟(ruan)件定義一(yi)切(qie)的(de)時代(dai),數(shu)字安全(quan)是未來(lai)系(xi)統安全(quan)的(de)基(ji)礎(chu)保障。正如可(ke)信計算技術已(yi)經是目前系(xi)統安全(quan)的(de)基(ji)礎(chu)一(yi)樣,密碼技術必將成(cheng)為軟(ruan)件定義一(yi)切(qie)的(de)重(zhong)要(yao)安全(quan)技術的(de)基(ji)礎(chu)和關鍵。它(ta)將會支撐軟(ruan)件中數(shu)據(ju)的(de)來(lai)源真實,數(shu)據(ju)的(de)完(wan)整(zheng),數(shu)據(ju)的(de)抗抵(di)賴等性質的(de)實現。
在這樣的時代,硬件體系結構將是標準化的,開放的。安全系統需要采用開放的結構而很難獲得保密專用硬件的支撐。在虛擬機不斷飄移的云中,如何保護密鑰安全就成為開放環境下密碼安全的重要研究課題。(五)密碼應用需求呈現多樣化趨勢
在價值互聯網應用中,我們需要最安全的密碼保護我們的數字資產。比如,針對銀行和國家財政的數字資產,我們需要極高安全的密碼保護。高安全要求一般會帶來計算的復雜化,密鑰保護的復雜化和安全檢測的復雜化,而這可能帶來性能的降低,無法滿足協同網絡應用中的密碼高性能要求。在協同(tong)互聯應用中,我們可能需(xu)要(yao)更好的(de)(de)處理性能,需(xu)要(yao)密(mi)碼的(de)(de)高性能支持(chi)。我們需(xu)要(yao)極高的(de)(de)密(mi)碼吞(tun)吐(tu)率以(yi)(yi)支持(chi)多人協同(tong)的(de)(de)加密(mi)視頻會議;我們需(xu)要(yao)不超過 1 毫秒(miao)的(de)(de)加密(mi)驗證時(shi)延,以(yi)(yi)支持(chi)車聯網(wang)中的(de)(de)指令(ling)安全保障;我們需(xu)要(yao)每秒(miao)千(qian)萬次的(de)(de)簽名計算以(yi)(yi)支持(chi)銀行中心服務器應答上(shang)億商戶的(de)(de)收費請(qing)求。
不論是高安全或是高性能,都需要有足夠的資源支持密鑰保護或密碼計算。在萬物互聯的物聯網場景中,我們可能不具備足夠的資源。例如,我們可能需要極低功耗的密碼實現,以支持缺乏電源的野外工作,也可能需要極小體積的密碼實現,以支持植入極小探測機器人或微型裝備,進行人體或動物實驗和精密探測。高(gao)安全(quan)、高(gao)性(xing)能和資源受(shou)限三者(zhe)相互矛(mao)盾,構成了密(mi)碼(ma)技術不斷發展的(de)方向。
三、密碼技術的發展與展望
針對密碼安全,從基礎理論到工程實現都有相關的挑戰和解決辦法。比如,面對量子計算機呼之欲出的形勢,抗量子密碼算法就成為當前家喻戶曉的密碼研究方向。面對黑客攻擊手法的不斷變革,白盒密碼,密鑰泄露容忍也成為密碼工程與密碼理論的研究熱點。針對開放協作的需求,多方計算安全也成為當今密碼研究的重要課題,如同態密碼和混淆密碼。密碼高(gao)性(xing)能(neng)實現與密碼算(suan)法(fa)優化等一直是(shi)密碼工作者們的研究內容。而輕(qing)量(liang)級密碼,低能(neng)耗實現等也是(shi)應(ying)對物聯(lian)網需(xu)求(qiu)的重要方(fang)向。
下文就密碼安全方向中的白盒密碼和多方協作計算進行分析和展望。(一)白盒密碼適應新的安全假設
白盒密碼是一個古老的密碼研究方向,到今天再度被提及,是因為該技術代表了一種適合當今時代的新理念。白盒密碼基于這樣的假設,即敵手能夠進入密碼系統,并獲知密碼系統中的所有信息。在這樣的假設下設計密碼系統并保證密碼安全就是白盒密碼的主要研究內容。白盒密(mi)碼,或者(zhe)理解(jie)為密(mi)碼系統白盒化,就意味著開放密(mi)碼系統的體(ti)系結(jie)構和部分(fen)細節(jie),其理由有以(yi)下(xia)幾點:
首先(xian),保(bao)障密(mi)碼(ma)(ma)系統體系結構不(bu)(bu)被人知曉(xiao)(保(bao)密(mi)),即黑盒假(jia)設,難度增(zeng)加(jia)了。硬件(jian)和軟件(jian)的(de)(de)攻(gong)擊技術不(bu)(bu)斷(duan)打破(po)密(mi)碼(ma)(ma)系統的(de)(de)邊(bian)界,使得原本(ben)安全的(de)(de)環境和假(jia)設不(bu)(bu)再存在。這種假(jia)設與“零信任”的(de)(de)思想是一致的(de)(de)。
對(dui)于硬(ying)(ying)件密(mi)碼(ma)(ma)系(xi)統來(lai)說,過(guo)(guo)去(qu)設立的保密(mi)邊界很難被打破。但(dan)隨著硬(ying)(ying)件分(fen)析技術(shu)的進步,這(zhe)種假設在發生變化。過(guo)(guo)去(qu)內容無法讀取(qu)的密(mi)碼(ma)(ma)芯片,利用(yong)現在市場上的技術(shu)就很容易(yi)刨開染色,讀取(qu)其中(zhong)的信(xin)(xin)息,包括電(dian)可擦(ca)除(chu)的信(xin)(xin)息;高精度的定向(xiang)探針(zhen),也能(neng)深(shen)入(ru)到(dao)芯片或硬(ying)(ying)件內部獲取(qu)運行時數據;黑客還(huan)可以(yi)通過(guo)(guo)設備(bei)的電(dian)源消(xiao)耗等側信(xin)(xin)道(dao)攻(gong)擊,恢復出設備(bei)中(zhong)的敏感關鍵信(xin)(xin)息;通過(guo)(guo)注(zhu)入(ru)硬(ying)(ying)件錯誤或數據錯誤使設備(bei)暫時紊亂(luan)從而泄露(lu)敏感數據。
對于軟件密碼模塊,包括含有軟件的密碼模塊,其安全邊界也非常脆弱。敵手通過系統的漏洞,入侵密碼系統;通過身份假冒,繞過系統的訪問控制進入系統內核;敵手可以越過進程間隔離,跨進程讀取密鑰信息;系統的直接內存讀取機制、內存數據擴散,如系統休眠時數據從內存到硬盤、存在未清零的動態內存以及軟件編程中的漏洞等都給敵手帶來獲取內部信息的機會。其次,當密(mi)(mi)(mi)碼(ma)設(she)備(bei)(bei)走向大眾,隨身攜帶的時(shi)候(hou),依靠密(mi)(mi)(mi)碼(ma)系(xi)統的技術(shu)保密(mi)(mi)(mi)來支撐(cheng)安全(quan)就變(bian)得非常危險(xian)。敵手可(ke)以(yi)通過購買密(mi)(mi)(mi)碼(ma)設(she)備(bei)(bei)進行使(shi)用(yong)或結(jie)構剖析;也可(ke)以(yi)對用(yong)戶不經意放置(zhi)的設(she)備(bei)(bei)進行快(kuai)速分析;丟失的設(she)備(bei)(bei)更(geng)(geng)是(shi)給敵手以(yi)更(geng)(geng)多的時(shi)間進行分析。先進的黑客技術(shu),能夠使(shi)市(shi)場上的密(mi)(mi)(mi)碼(ma)產品的系(xi)統體系(xi)結(jie)構很快(kuai)大白(bai)于天下。
密(mi)碼(ma)算(suan)法的(de)(de)研究給密(mi)碼(ma)系(xi)統(tong)安全(quan)(quan)(quan)研究展(zhan)(zhan)示了(le)開(kai)放的(de)(de)發(fa)展(zhan)(zhan)途徑(jing)。同(tong)樣的(de)(de)密(mi)碼(ma)算(suan)法,算(suan)法保密(mi)肯定比算(suan)法公(gong)(gong)開(kai)更加(jia)安全(quan)(quan)(quan)。密(mi)碼(ma)科學的(de)(de)發(fa)展(zhan)(zhan)歷(li)史告訴我們,密(mi)碼(ma)算(suan)法的(de)(de)公(gong)(gong)開(kai)和標(biao)準(zhun)(zhun)化(hua)所(suo)帶來(lai)(lai)的(de)(de)算(suan)法安全(quan)(quan)(quan)增(zeng)益,大大超過了(le)算(suan)法公(gong)(gong)開(kai)所(suo)帶來(lai)(lai)的(de)(de)安全(quan)(quan)(quan)損失。開(kai)放的(de)(de)密(mi)碼(ma)算(suan)法不僅(jin)僅(jin)使得密(mi)碼(ma)更加(jia)普及,也使得密(mi)碼(ma)技術更加(jia)安全(quan)(quan)(quan)。在(zai)算(suan)法的(de)(de)公(gong)(gong)開(kai)和標(biao)準(zhun)(zhun)化(hua)的(de)(de)假設下,掌握公(gong)(gong)開(kai)的(de)(de)密(mi)碼(ma)算(suan)法對敵手完全(quan)(quan)(quan)沒有作用。
白(bai)盒(he)安(an)全(quan),不同于(yu)過去(qu)的(de)黑(hei)盒(he)安(an)全(quan),其目(mu)標(biao)就是在(zai)(zai)敵人攻入(ru)系統(tong)、了(le)解(jie)全(quan)部系統(tong)內容的(de)情(qing)況下,確保系統(tong)安(an)全(quan)的(de)技術。如果(guo)密(mi)碼(ma)(ma)機(ji)不存儲密(mi)鑰(yao)(yao),只要用戶保護(hu)好密(mi)鑰(yao)(yao),密(mi)碼(ma)(ma)機(ji)丟(diu)失并不影(ying)響密(mi)碼(ma)(ma)安(an)全(quan)。如果(guo)密(mi)鑰(yao)(yao)保存在(zai)(zai)密(mi)碼(ma)(ma)機(ji)里,白(bai)盒(he)密(mi)碼(ma)(ma)機(ji)制則需要更多的(de)技術防止黑(hei)客透過設備分析拿到密(mi)鑰(yao)(yao),密(mi)鑰(yao)(yao)隱藏(zang)和密(mi)鑰(yao)(yao)的(de)泄露容忍就成(cheng)為這種密(mi)碼(ma)(ma)白(bai)盒(he)安(an)全(quan)的(de)一個(ge)重要研究(jiu)內容。
完全理想的(de)白盒密(mi)碼安全需要(yao)(yao)從(cong)基礎理論到工(gong)程實現全方位的(de)突破。主要(yao)(yao)的(de)白盒密(mi)碼技術(shu)包括以(yi)下幾種(zhong):
混淆(xiao)技術。通(tong)過密(mi)(mi)鑰(yao)與算法(fa)的(de)(de)(de)(de)(de)(de)(de)混淆(xiao),使得(de)交(jiao)(jiao)給(gei)用(yong)(yong)戶(hu)的(de)(de)(de)(de)(de)(de)(de)密(mi)(mi)碼(ma)(ma)(ma)功能(neng)(neng)(neng)是(shi)(shi)有限的(de)(de)(de)(de)(de)(de)(de),用(yong)(yong)戶(hu)無法(fa)獲(huo)取(qu)其他密(mi)(mi)碼(ma)(ma)(ma)功能(neng)(neng)(neng)。一(yi)切(qie)都是(shi)(shi)算法(fa),沒(mei)有密(mi)(mi)鑰(yao)或者密(mi)(mi)鑰(yao)可(ke)以(yi)公開(kai),是(shi)(shi)混淆(xiao)理論發展的(de)(de)(de)(de)(de)(de)(de)可(ke)能(neng)(neng)(neng)方向。把一(yi)個混淆(xiao)的(de)(de)(de)(de)(de)(de)(de)密(mi)(mi)碼(ma)(ma)(ma)功能(neng)(neng)(neng)移交(jiao)(jiao)給(gei)用(yong)(yong)戶(hu)的(de)(de)(de)(de)(de)(de)(de)時候,所有的(de)(de)(de)(de)(de)(de)(de)原理、系統(tong)結(jie)構和(he)密(mi)(mi)鑰(yao)都可(ke)以(yi)對(dui)用(yong)(yong)戶(hu)公開(kai)。現代的(de)(de)(de)(de)(de)(de)(de)非對(dui)稱密(mi)(mi)碼(ma)(ma)(ma)給(gei)出(chu)了(le)這樣的(de)(de)(de)(de)(de)(de)(de)示例(li),例(li)如(ru),用(yong)(yong)戶(hu)只能(neng)(neng)(neng)加密(mi)(mi),不(bu)(bu)(bu)能(neng)(neng)(neng)解(jie)密(mi)(mi);用(yong)(yong)戶(hu)只能(neng)(neng)(neng)驗證簽(qian)名(ming)和(he)不(bu)(bu)(bu)能(neng)(neng)(neng)仿造(zao)簽(qian)名(ming)。混淆(xiao)密(mi)(mi)碼(ma)(ma)(ma)機制需要在非對(dui)稱的(de)(de)(de)(de)(de)(de)(de)密(mi)(mi)碼(ma)(ma)(ma)理論上有更大的(de)(de)(de)(de)(de)(de)(de)突破,區分出(chu)不(bu)(bu)(bu)同的(de)(de)(de)(de)(de)(de)(de)獨立的(de)(de)(de)(de)(de)(de)(de)密(mi)(mi)碼(ma)(ma)(ma)功能(neng)(neng)(neng),確(que)保一(yi)個密(mi)(mi)碼(ma)(ma)(ma)功能(neng)(neng)(neng)不(bu)(bu)(bu)影(ying)響其他密(mi)(mi)碼(ma)(ma)(ma)功能(neng)(neng)(neng)的(de)(de)(de)(de)(de)(de)(de)安全(quan),從而(er)產(chan)生安全(quan)的(de)(de)(de)(de)(de)(de)(de)完(wan)全(quan)白盒化的(de)(de)(de)(de)(de)(de)(de)密(mi)(mi)碼(ma)(ma)(ma)應用(yong)(yong)。
密鑰隱藏技術。密鑰隱藏技術是白盒密碼的另一個重要思路,其方法是將需要保護的密鑰隱藏到復雜的代碼中,隱藏在系統中。直接的密鑰隱藏技術一般采用密鑰拆分技術,通過改變算法流程,將用戶的密鑰拆分成多個無關的子密鑰,隱藏到系統的不同地方。需要密碼執行的時候通過調用看似無關的密碼函數計算出需要的密碼計算結果。密鑰分散隱藏到代碼中是另一種密鑰隱藏思路,需要有好的算法實現密鑰與代碼的混淆。通過代碼混淆使得敵手通過代碼分析無法獲得算法和密鑰,其安全的假設就是完全復制全部的代碼是困難的。盡管密(mi)(mi)鑰隱(yin)藏技術(shu)依(yi)賴工程實(shi)現(xian),難以(yi)做(zuo)到完全(quan)白(bai)盒(he),但相關(guan)密(mi)(mi)鑰隱(yin)藏技術(shu)已經成為(wei)現(xian)代密(mi)(mi)碼系統安全(quan)的一種必(bi)備手段(duan)。特別是軟件(jian)密(mi)(mi)碼模塊,不得(de)不使用多種密(mi)(mi)鑰隱(yin)藏技術(shu)來保護(hu)密(mi)(mi)鑰安全(quan)。
密鑰攻擊容忍技術。當密鑰隱藏技術被敵人破解的時候,我們是否有能力保證,即使敵手獲得了部分密鑰,我們的密碼系統仍舊是安全的。密鑰攻擊容忍就是在這樣一種白盒假設下的技術思考。密鑰攻擊容忍是在密鑰保護,密鑰檢測和自毀的基礎上對密鑰安全的進一步延伸。子(zi)(zi)密(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)不影響密(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)安全(quan)的(de)(de)密(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)拆分技(ji)術(shu)是密(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)攻擊容忍技(ji)術(shu)的(de)(de)一(yi)種技(ji)術(shu)思(si)路(lu)。通過將密(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)拆分成(cheng)(cheng)多(duo)個無關的(de)(de)子(zi)(zi)密(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao),并保(bao)證即使敵手獲(huo)得部分子(zi)(zi)密(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)也(ye)不影響原密(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)的(de)(de)安全(quan)就可以構成(cheng)(cheng)一(yi)種密(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)攻擊容忍的(de)(de)解(jie)決方(fang)案。在密(mi)(mi)碼算法設計上就具備密(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)(yao)攻擊容忍就更具有(you)基礎性意義(yi)。
白盒密碼技術就是在開放條件下的一種密碼技術,采用的是開放的假設,具備更好的互聯網適應能力。開放(fang)(fang)的(de)(de)、白盒(he)化的(de)(de)密碼應(ying)用(yong)技術(shu)也是(shi)(shi)(shi)未來的(de)(de)重要(yao)方向。通過開放(fang)(fang)體系(xi)(xi)(xi)結構讓建(jian)設參(can)與者和使用(yong)者明確自己的(de)(de)責(ze)任和義務(wu),更好地參(can)與到(dao)密碼應(ying)用(yong)系(xi)(xi)(xi)統(tong)的(de)(de)安全中來是(shi)(shi)(shi)大型密碼應(ying)用(yong)的(de)(de)基本要(yao)求。比特幣(bi)所依賴的(de)(de)區塊鏈技術(shu),就是(shi)(shi)(shi)一種(zhong)白盒(he)安全技術(shu)的(de)(de)典(dian)范。比特幣(bi)的(de)(de)區塊鏈系(xi)(xi)(xi)統(tong)不(bu)僅將原理全部公開,其運行的(de)(de)源代碼也是(shi)(shi)(shi)完全公開的(de)(de)。這種(zhong)在完全“開放(fang)(fang)”的(de)(de)環境下保(bao)證系(xi)(xi)(xi)統(tong)的(de)(de)安全也許(xu)是(shi)(shi)(shi)未來密碼應(ying)用(yong)的(de)(de)主(zhu)要(yao)方向。
(二)多方協同密碼計算
多方協(xie)(xie)同(tong)計算的(de)本質就(jiu)(jiu)是在(zai)不(bu)信(xin)任(ren)的(de)個體間進行(xing)協(xie)(xie)同(tong),產生出各自滿意的(de)結(jie)果。在(zai)可(ke)信(xin)體系(xi)的(de)支持下,協(xie)(xie)同(tong)計算是簡單(dan)的(de)。以可(ke)信(xin)計算為(wei)基礎的(de)可(ke)信(xin)體系(xi)能夠確保信(xin)息(xi)的(de)真實(shi)、完整、抗(kang)抵(di)賴和合法使用,協(xie)(xie)同(tong)計算相對容易。當(dang)信(xin)任(ren)體系(xi)被打破或難以建立的(de)時候,也就(jiu)(jiu)是現在(zai)的(de)零信(xin)任(ren)假設下,我們的(de)信(xin)任(ren)又無法建立,如何合作計算就(jiu)(jiu)成(cheng)為(wei)多方協(xie)(xie)同(tong)密碼計算的(de)主要研(yan)究(jiu)方向。
同(tong)態密(mi)碼就是(shi)兩方(fang)(fang)(fang)協同(tong)密(mi)碼計算(suan)(suan)的(de)代表性工作(zuo)。甲方(fang)(fang)(fang)通過加(jia)密(mi)將數據交給乙(yi)方(fang)(fang)(fang),乙(yi)方(fang)(fang)(fang)在(zai)完全不(bu)知道甲方(fang)(fang)(fang)信息內(nei)容的(de)前提下,幫助甲方(fang)(fang)(fang)處(chu)理(li)數據,返回(hui)處(chu)于密(mi)文狀態的(de)處(chu)理(li)結果。甲方(fang)(fang)(fang)對處(chu)理(li)結果進行解密(mi)得(de)到明文的(de)結論。利(li)用同(tong)態密(mi)碼的(de)雙方(fang)(fang)(fang)協作(zuo)不(bu)需要(yao)建立強的(de)信任關系,將原來加(jia)密(mi)隱藏的(de)功(gong)能與委托計算(suan)(suan)的(de)功(gong)能融合(he)起來,使得(de)對方(fang)(fang)(fang)能夠進行計算(suan)(suan)而無(wu)法了解信息內(nei)容。
多方協同(tong)密(mi)(mi)(mi)碼(ma)(ma)技(ji)術(shu),是密(mi)(mi)(mi)碼(ma)(ma)技(ji)術(shu)從通信(xin)(xin)保密(mi)(mi)(mi)到(dao)計算(suan)安(an)全的一(yi)種(zhong)思(si)想變革,需要基(ji)礎理論(lun)研究(jiu)的大力支持(chi)。開(kai)放(fang)的安(an)全多方協同(tong)計算(suan)必然會(hui)用(yong)到(dao)非對(dui)稱(cheng)的密(mi)(mi)(mi)碼(ma)(ma)機制,以確保對(dui)某一(yi)方面(mian)的密(mi)(mi)(mi)碼(ma)(ma)功(gong)能優勢。我們(men)要將一(yi)種(zhong)數據的計算(suan)能力交給(gei)敵手(shou),同(tong)時還(huan)用(yong)保證我們(men)的交給(gei)敵手(shou)處理的信(xin)(xin)息(xi)的安(an)全。這也是白盒(he)化密(mi)(mi)(mi)碼(ma)(ma)的基(ji)本思(si)路(lu)。
從理論上說,簽名和驗簽功能的分離就是一種功能拆分的非對稱多方密碼計算的范例。驗證簽名的代碼和密鑰可以完全開放,而只需要保護好自己的簽名私鑰就行。代理重加密技術可以讓一方對信息進行重新加密而不需要了解信息內容;基于身份的加密能夠確保只有擁有相應身份的人才能閱讀信息。諸多非對稱密碼學的進展使我們有望在不遠的將來擁有更多的多方安全密碼計算的手段。(三)密碼技術的發展展望
白盒密碼系統,包括入侵容忍的密碼和密碼應用系統,多方安全的密碼協同,是密碼系統發展的一個重要方向。密碼系統應該確保即使攻擊者獲得系統結構和部分安全信息,密碼系統依舊安全可控。 (本文刊登于《中國信息安全》雜志2021年第8期(qi))