廉文娟,趙朵朵,4,范修斌,2,3,4
(1.山東科技大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,山東 青島 266590;2.中國(guó)科學(xué)院軟件研究所青島分部,山東 青島 266114;3.青島博文廣成信息安全技術(shù)有限公司,山東 青島 266235;4.山東文斌信息安全技術(shù)有限公司,山東 泰安 271200)
隨著工業(yè)控制、智能制造、工業(yè)互聯(lián)網(wǎng)以及工業(yè)物聯(lián)網(wǎng)等新興信息產(chǎn)業(yè)的不斷涌現(xiàn),網(wǎng)絡(luò)空間已經(jīng)由傳統(tǒng)網(wǎng)絡(luò)空間逐漸發(fā)展為當(dāng)今網(wǎng)絡(luò)空間。傳統(tǒng)網(wǎng)絡(luò)空間一般是指互聯(lián)網(wǎng)+電子政務(wù)和電子商務(wù),當(dāng)今網(wǎng)絡(luò)空間是指?jìng)鹘y(tǒng)網(wǎng)絡(luò)空間+各種新興信息產(chǎn)業(yè)。在當(dāng)今網(wǎng)絡(luò)空間下,所有工業(yè)和制造業(yè)領(lǐng)域基本都包含工業(yè)控制系統(tǒng)(Industrial Control System,ICS),且許多關(guān)鍵基礎(chǔ)設(shè)施高度依賴ICS 的安全運(yùn)行[1],因此ICS 通信安全問(wèn)題至關(guān)重要。
通信的可用性、可控性、可認(rèn)證性以及數(shù)據(jù)傳輸過(guò)程中數(shù)據(jù)的完整性、機(jī)密性和不可否認(rèn)性等都屬于通信安全問(wèn)題。通信安全離不開(kāi)身份認(rèn)證技術(shù),而認(rèn)證技術(shù)是信息安全的第一技術(shù)?,F(xiàn)有的認(rèn)證技術(shù)可分為參數(shù)認(rèn)證技術(shù)和函數(shù)認(rèn)證技術(shù)兩類。參數(shù)認(rèn)證技術(shù)包括指紋、聲紋、虹膜和刷臉等,函數(shù)認(rèn)證技術(shù)主要包括公鑰基礎(chǔ)設(shè)施(Public Key Infrastructure,PKI)和基于標(biāo)識(shí)的密碼體制(Identity-Based Cryptosystem,IBC)。PKI 和IBC 雖然具有信息安全認(rèn)證功能,但是在應(yīng)用過(guò)程中都需依賴第三方支持,并且產(chǎn)生了額外通信量,增大了雙方通信延遲,達(dá)不到毫秒級(jí)安全級(jí)別。
在當(dāng)今網(wǎng)絡(luò)空間中,工業(yè)控制系統(tǒng)的信息安全目標(biāo)已由傳統(tǒng)的CIA(機(jī)密性、完整性、可用性),變成了AIC(可用性、完整性、機(jī)密性)[2],將可用性放在首位,可見(jiàn)工控系統(tǒng)對(duì)響應(yīng)時(shí)間的迫切需求。陳華平等人[3]提出了當(dāng)今網(wǎng)絡(luò)空間信息安全八大原則,其中原則7 是指令級(jí)安全原則,毫秒級(jí)安全可確保指令級(jí)安全。傳統(tǒng)的SSL/TLS 協(xié)議、VPN 和HTTPS等網(wǎng)絡(luò)通信技術(shù)均采用了PKI 和IBC 認(rèn)證機(jī)制,仍然無(wú)法保障毫秒級(jí)安全,本文明確提出毫秒級(jí)信息安全為當(dāng)今網(wǎng)絡(luò)空間的重要特征。CFL 是由陳華平等人[3]于2011 年提出且獲得國(guó)家認(rèn)可的認(rèn)證體制,是PKI 和IBC 的繼承和發(fā)展,同時(shí)規(guī)避了兩者的不足。本文分析了CFL 認(rèn)證體制的安全屬性,并在CFL_BLP 模型的基礎(chǔ)上給出CFL SSL 協(xié)議及安全性質(zhì),將其推廣到各新興信息產(chǎn)業(yè),實(shí)現(xiàn)新興信息產(chǎn)業(yè)的毫秒級(jí)信息安全通信。
1978 年,KOHNFELDER L[4]提出了 證書(shū)的 概念。1988 年,國(guó)際電聯(lián)電信委員會(huì)為單點(diǎn)登錄(Single Sign On,SSO)和授權(quán)管理基礎(chǔ)設(shè)施(Privilege Management Infrastructure,PMI)制定了PKI 標(biāo)準(zhǔn),即X.509 v1[5]。1995 年,PKIX 工作組將該標(biāo)準(zhǔn)指定為適用于Internet[6]。
PKI 建立在公鑰密碼學(xué)算法基礎(chǔ)上,由可信第三方證書(shū)認(rèn)證中心(Certification Authority,CA)、RA注冊(cè)中心、KMC 密鑰管理中心、證書(shū)撤銷列表(Certificate Revocation List,CRL)、輕量級(jí)目錄訪問(wèn)協(xié)議(Lightweight Directory Access Protocol,LDAP)和在線證書(shū)狀態(tài)協(xié)議(Online Certificate Status Protocol,OCSP)等功能模塊構(gòu)成[7-8]。經(jīng)過(guò)多年的發(fā)展,PKI 證書(shū)認(rèn)證體制已得到廣泛應(yīng)用。
PKI 組成如圖1 所示。其中,CA 為PKI 的主要組成部分之一,主要功能是簽發(fā)數(shù)字證書(shū)、驗(yàn)證證書(shū)有效性和維 護(hù)證書(shū)列表[7,9]。RA 主要功能是向CA 提交終端實(shí)體的簽發(fā)、撤銷和更新證書(shū)請(qǐng)求。KMC 主要功能是為CA 系統(tǒng)提供密鑰的生成、保存等密鑰服務(wù)。此外,OCSP 作為PKI 的核心組件,可為應(yīng)用系統(tǒng)提供在線證書(shū)狀態(tài)查詢功能[8]。LDAP主要用來(lái)存放證書(shū)和提供證書(shū)撤銷列表,供用戶查詢[7]。

圖1 PKI 組成Fig.1 PKI composition
我國(guó)的PKI 體系采用非對(duì)稱密碼算法SM2 進(jìn)行數(shù)字簽名驗(yàn)證。SM2 是256 bit 域上的橢圓曲線上的加法群運(yùn)算,由于256 bit 的域尺度較小,因此運(yùn)算速度快。目前基于SM2 算法的硬件實(shí)現(xiàn)可達(dá)到毫秒級(jí),例如三未信安的產(chǎn)品SJJ1012 RE10000,簽名達(dá)到4 400 次/s,驗(yàn)證速度達(dá)到2 800 次/s[10]。雖然SM2算法的硬件實(shí)現(xiàn)可達(dá)到毫秒級(jí),但是PKI 認(rèn)證技術(shù)的證書(shū)驗(yàn)證需要CA 回證是非毫秒級(jí)的,因此PKI 面向當(dāng)今網(wǎng)絡(luò)空間時(shí)遇到了嚴(yán)峻的挑戰(zhàn)。
1.2.1 IBC 結(jié)構(gòu)
1984 年,SHAMIR A[11]提出了IBC 的概念,簡(jiǎn)化了傳統(tǒng)公鑰系統(tǒng)中的證書(shū)管理。IBC 是一種不對(duì)稱公鑰密碼系統(tǒng),公鑰為用戶的身份信息(例如電子郵件地址、手機(jī)號(hào)碼等),私鑰由受信任的權(quán)威機(jī)構(gòu)密鑰生成中心(Key Generation Center,KGC)中的私鑰生成器(Private Key Generator,PKG)生成,該機(jī)構(gòu)在用戶身份驗(yàn)證后,根據(jù)系統(tǒng)主密鑰和用戶的身份信息得出用戶的私鑰[12]。
IBC 加密簽名流程如圖2 所示。

圖2 IBC 加密簽名流程Fig.2 Procedure of IBC encryption signature
1.2.2 IBC 簽名算法
根據(jù)SM9 標(biāo)識(shí)密碼算法標(biāo)準(zhǔn),IBC 的簽名算法包括系統(tǒng)建立、私鑰生成、簽名和簽名驗(yàn)證這4 個(gè)階段。為了說(shuō)明IBC 的運(yùn)算局限性,本文給出了簽名過(guò)程。假設(shè)待簽名的消息為比特串M,為了獲取消息M的數(shù)字簽名(h,S),用戶A應(yīng)實(shí)現(xiàn)以下運(yùn)算步驟:
步驟1計(jì)算乘法循環(huán)群GT中的元素g=e(P1,Ppub-s),P1為加法循環(huán)群G1的 生成元、Ppub-s為簽名主公鑰。
步驟2產(chǎn)生隨機(jī)數(shù)r?[1,N-1],N為循環(huán)群G1、GT的階。
步驟3計(jì)算群GT中的元素w=gr。
步驟4計(jì)算出整數(shù)h=H2(M||w,N)。
步驟5計(jì)算整數(shù)l=(r-h)modN,若l=0 則返回步驟2。
步驟6計(jì)算G1中的元素S=[l]dsA,dsA為A的簽名私鑰。
步驟7(h,S)為消息M的簽名,發(fā)送給簽名驗(yàn)證者B。
H1和H2是SM3 密碼雜湊函數(shù)派生的密碼函數(shù)。
SM9 的數(shù)字簽名過(guò)程是采用BN 曲線上Rate 雙線性對(duì)來(lái)實(shí)現(xiàn)的,該過(guò)程涉及到Miller 算法、橢圓曲線多倍點(diǎn)運(yùn)算等[13]。在簽名運(yùn)算過(guò)程步驟1 中,元素g為3 072 bit 的上6 次擴(kuò)域后的元素,因此IBC簽名驗(yàn)證算法是3 072 bit 的大數(shù)運(yùn)算,雙線性對(duì)計(jì)算的高復(fù)雜性,限制了SM9 在資源有限情況下的進(jìn)一步擴(kuò)展[14]。目前基于SM9 算法的硬件實(shí)現(xiàn),簽名速度為5.7 次/s,驗(yàn)證速度為3.6 次/s,IBC 采用SM9算法在各新興信息產(chǎn)業(yè)中的應(yīng)用也將面臨著挑戰(zhàn)。
SSL/TLS 協(xié) 議[15]是目前最常用的安全通信協(xié)議,該協(xié)議位于傳輸層和應(yīng)用層之間,通過(guò)建立服務(wù)器與客戶端的安全通道對(duì)數(shù)據(jù)進(jìn)行保護(hù)。SSL/TLS協(xié)議由握手協(xié)議和記錄協(xié)議組成,握手協(xié)議負(fù)責(zé)雙方身份認(rèn)證、交換密鑰等,記錄協(xié)議負(fù)責(zé)消息的壓縮、加密及數(shù)據(jù)的認(rèn)證。根據(jù)文獻(xiàn)[16],如圖3 所示,SSL/TLS 握手協(xié)議流程如下:

圖3 SSL/TLS 握手協(xié)議流程Fig.3 Procedure of SSL/TLS handshake protocol
1)算法協(xié)商??蛻舳伺c服務(wù)器協(xié)商會(huì)話中使用的協(xié)議版本號(hào)、會(huì)話標(biāo)識(shí)以及所支持的算法等信息。
2)證書(shū)交換。服務(wù)器將CA 證書(shū)發(fā)送給客戶端,CA 證書(shū)的基本證書(shū)域包含版本號(hào)、序列號(hào)以及簽名算法等內(nèi)容[17],客戶端接收到服務(wù)端的證書(shū)后對(duì)證書(shū)驗(yàn)證[18]及有效性進(jìn)行判定。服務(wù)器若請(qǐng)求客戶端證書(shū),客戶端將CA 證書(shū)發(fā)送給服務(wù)器,服務(wù)器對(duì)客戶端證書(shū)進(jìn)行驗(yàn)證及有效性判定。在雙方身份確定后進(jìn)行下一步密鑰交換。
3)密鑰交換??蛻舳撕头?wù)器分別構(gòu)建主密鑰,然后再分別構(gòu)建會(huì)話密鑰后進(jìn)行密鑰交換,則握手協(xié)議結(jié)束。
在握手協(xié)議完成后,記錄協(xié)議使用會(huì)話密鑰對(duì)數(shù)據(jù)進(jìn)行加密傳輸。雖然SSL/TLS 應(yīng)用廣泛,但仍然存在及時(shí)性安全問(wèn)題挑戰(zhàn),本文將在下一節(jié)中詳細(xì)分析。
2.1.1 PKI 面臨的挑戰(zhàn)
PKI 認(rèn)證技術(shù)雖然得到了廣泛應(yīng)用,但是PKI 的傳統(tǒng)體系結(jié)構(gòu)依賴可信第三方CA,由于CA 的集中結(jié)構(gòu)不可避免地存在單點(diǎn)故障問(wèn)題[9,19],導(dǎo)致嚴(yán)重的可用性和安全性缺陷。同時(shí)基于PKI/CA 的電子簽名復(fù)雜,使得建設(shè)成本較高[20],因此需要復(fù)雜的證書(shū)管理過(guò)程[21]。除此之外,PKI 技術(shù)在應(yīng)用時(shí)進(jìn)行CA證書(shū)的有效性驗(yàn)證,存在嚴(yán)重的效率問(wèn)題。
在PKI 認(rèn)證體制中常用的證書(shū)查詢包括CRL 查詢和OCSP 兩種方式:
1)CRL 證書(shū)狀態(tài)查詢方式。在PKI 系統(tǒng)中,用戶通過(guò)RA 申請(qǐng)簽發(fā)/撤銷/更新證書(shū),再由CA 頒發(fā)/撤銷/更新數(shù)字證書(shū),CA 將新簽發(fā)的證書(shū)或證書(shū)撤銷/更新列表儲(chǔ)存到LDAP 目錄服務(wù)器,供用戶下載查詢[22]。
2)OCSP 證書(shū)狀態(tài)查詢方式。在實(shí)際應(yīng)用中,應(yīng)用系統(tǒng)作為OCSP 客戶端向OCSP 服務(wù)端發(fā)送證書(shū)驗(yàn)證請(qǐng)求,OCSP 服務(wù)端將會(huì)給出相應(yīng)的響應(yīng)信息,包括證書(shū)標(biāo)識(shí)符、證書(shū)狀態(tài)等返回給客戶端。
CRL、OCSP 兩種查詢方式都需要遠(yuǎn)程第三方CA支持,從而增加了額外通信延遲。為了說(shuō)明證書(shū)查詢等遠(yuǎn)程通信帶來(lái)的影響,本文使用ping 和tracert 命令進(jìn)行上百次隨機(jī)的遠(yuǎn)程訪問(wèn)測(cè)試,并記錄每次訪問(wèn)的時(shí)延、經(jīng)過(guò)的中間節(jié)點(diǎn)數(shù)、連接成功或失敗等數(shù)據(jù)。
實(shí)驗(yàn)環(huán)境采用的是Windows 操作系統(tǒng),處理器為Intel?CoreTMi5-8250U CPU@ 1.60 GHz 1.80 GHz,實(shí)驗(yàn)統(tǒng)計(jì)結(jié)果如表1 所示,統(tǒng)計(jì)分析如表2 所示。表1 中的時(shí)延是指數(shù)據(jù)(一個(gè)報(bào)文或分組,甚至比特)從網(wǎng)絡(luò)(或鏈路)的一端傳送到另一端所需的時(shí)間。數(shù)據(jù)在網(wǎng)絡(luò)中經(jīng)歷的總時(shí)延包括發(fā)送時(shí)延、傳播時(shí)延、處理時(shí)延和排隊(duì)時(shí)延這四個(gè)部分[23],數(shù)據(jù)在網(wǎng)絡(luò)傳輸?shù)目倳r(shí)延中,耗時(shí)最多的是處理時(shí)延和排隊(duì)時(shí)延。

表1 遠(yuǎn)程訪問(wèn)時(shí)間統(tǒng)計(jì)結(jié)果Table 1 Remote access time statistics

表2 遠(yuǎn)程訪問(wèn)結(jié)果分析Table 2 Remote access result analysis
從表2 可以看出,在一般的網(wǎng)絡(luò)遠(yuǎn)程訪問(wèn)中,連接成功的遠(yuǎn)程訪問(wèn)平均時(shí)延達(dá)到了48.64 ms,連接失敗的比例約占實(shí)驗(yàn)總數(shù)的15%,且連接失敗的時(shí)間均為秒級(jí)。
假定網(wǎng)絡(luò)訪問(wèn)平均時(shí)延符合正態(tài)分布,根據(jù)表2數(shù)據(jù),本文得到10 ms 以內(nèi)訪問(wèn)成功的概率為:

其中,x=0.01、μ=48.64、σ=70.57。
結(jié)論1在平均時(shí)延符合正態(tài)分布的網(wǎng)絡(luò)訪問(wèn)中,遠(yuǎn)程訪問(wèn)時(shí)間是非毫秒級(jí)的。
結(jié)論2PKI 認(rèn)證技術(shù)為非毫秒級(jí)的認(rèn)證技術(shù)。
證明PKI 證書(shū)認(rèn)證體制需要CA 支持,即證書(shū)認(rèn)證需要遠(yuǎn)程回證。通信雙方證書(shū)認(rèn)證時(shí)間為countt=2t1+2t2+2t3或countt=2t1+2t2+2t4,其 中t1為單次證書(shū)發(fā)送時(shí)間、t2為單次提交證書(shū)狀態(tài)查詢時(shí)間、t3、t4分別為圖1 的①、②過(guò)程所用時(shí)間。t2、t3、t4為增加的額外時(shí)延。從理論上而言,PKI 認(rèn)證機(jī)制不能滿足各種新興信息產(chǎn)業(yè)的安全需求,特別是毫秒級(jí)的認(rèn)證需求,因此該結(jié)論成立。
2.1.2 IBC 與SSL/TLS 面臨的挑戰(zhàn)
由1.2 節(jié)分析可知IBC 不需要數(shù)字證書(shū),解決了PKI 的證書(shū)管理問(wèn)題,但是IBC 由于密鑰托管問(wèn)題而無(wú)法提供真正的不可否認(rèn)性[21]。IBC 認(rèn)證技術(shù)依靠可信第三方PKG 支持,并且是基于對(duì)構(gòu)造的,計(jì)算速度較慢且計(jì)算效率較低。
結(jié)論3IBC 認(rèn)證技術(shù)為非毫秒級(jí)的認(rèn)證技術(shù)。
證明與PKI 相似,IBC 在應(yīng)用過(guò)程中依靠遠(yuǎn)程第三方PKG 支持,增加了額外的通信延遲,計(jì)算速度較慢且可用性差,因此該結(jié)論成立。
此外,IBC 應(yīng)用時(shí)若第三方PKG 受到惡意攻擊,系統(tǒng)主密鑰被竊取,用戶的私鑰將會(huì)泄露。若第三方PKG 假冒合法用戶與其他用戶通信,用戶隱私信息將會(huì)泄露。
由1.3 節(jié)SSL/TLS 協(xié)議 分析可知,SSL/TLS 協(xié)議在進(jìn)行身份認(rèn)證時(shí),通過(guò)第三方CA 驗(yàn)證證書(shū)的有效性,數(shù)據(jù)在網(wǎng)絡(luò)中傳輸需經(jīng)過(guò)大量的網(wǎng)絡(luò)節(jié)點(diǎn),造成網(wǎng)絡(luò)延遲,從而無(wú)法保障高效的網(wǎng)絡(luò)傳輸。因此,本文給出以下結(jié)論:
結(jié)論4SSL/TLS、VPN、HTTPS 為非毫秒級(jí)的通信協(xié)議。
證明因?yàn)镾SL/TLS、VPN、HTTPS 需要使用PKI證書(shū),所以需要利用CA 驗(yàn)證證書(shū)的有效性,從而產(chǎn)生額外的網(wǎng)絡(luò)延遲,由結(jié)論2 可知,該結(jié)論成立。
此外,STONE 等人[24]研究了SSL/TLS 協(xié)議證書(shū)驗(yàn)證模塊的安全性,得出其存在漏洞,這可能是因?yàn)橹虚g人(MITM)攻擊而破壞通信安全。ACER 等人[25]研究chrome-https 證書(shū)無(wú)效警告的原因,從另一方面展示了SSL/TLS 協(xié)議在使用過(guò)程中存在有安全隱患問(wèn)題。
目前,關(guān)鍵基礎(chǔ)設(shè)施如公共交通系統(tǒng)、智能制造等高度依賴工業(yè)控制系統(tǒng)ICS 的安全運(yùn)行,因此ICS的安全問(wèn)題是信息產(chǎn)業(yè)面臨的主要問(wèn)題。工業(yè)控制系統(tǒng)功能層次模型[26]如圖4 所示,ICS 從功能上可分為5 層,過(guò)程監(jiān)控層主要包括監(jiān)控服務(wù)器與人機(jī)界面(Human Machine Interface,HMI)系統(tǒng)功能單元,應(yīng)用數(shù)據(jù)采集與監(jiān)視控制系統(tǒng)(SCADA)[27]對(duì)生產(chǎn)過(guò)程數(shù)據(jù)進(jìn)行采集與監(jiān)控,并利用HMI 實(shí)現(xiàn)人機(jī)交互。現(xiàn)場(chǎng)控制層主要包括各類控制器單元,如可編程邏輯控制器(Programmable Logic Controller,PLC)、集散控制系統(tǒng)(DCS)[28]等,用于對(duì)各種執(zhí)行設(shè)備進(jìn)行控制?,F(xiàn)場(chǎng)設(shè)備層主要包括各類過(guò)程傳感設(shè)備與執(zhí)行設(shè)備單元,可用于對(duì)生產(chǎn)過(guò)程進(jìn)行感知與操作。

圖4 工業(yè)控制系統(tǒng)功能層次模型Fig.4 Functional hierarchy model of ICS
ICS 現(xiàn)場(chǎng)控制層對(duì)實(shí)時(shí)性要求較高,因此給出以下命題:
命題1工控迫切需要毫秒級(jí)的信息安全技術(shù)。
證明工控上下位機(jī)通信時(shí)需要控制命令的及時(shí)響應(yīng),控制命令是由指令完成的,需要指令級(jí)安全來(lái)確保控制命令的安全,顯然計(jì)算機(jī)的指令至少需要毫秒級(jí)信息安全技術(shù)來(lái)支撐。
文獻(xiàn)[29]給出了目前工控上下位機(jī)通信機(jī)制存在的諸多安全風(fēng)險(xiǎn),其中一條為控制器缺乏身份認(rèn)證、訪問(wèn)控制機(jī)制。因此,工控上下位機(jī)通信需要身份認(rèn)證機(jī)制提高通信的安全性。在工控通信時(shí),認(rèn)證體制應(yīng)該立即更新撤銷信息,規(guī)避客戶端接收到被撤銷證書(shū)而受到攻擊,因此工控上下位機(jī)通信安全機(jī)制中的信息安全算法必須是毫秒級(jí)才是安全的。由本文對(duì)已有認(rèn)證技術(shù)的分析可知,參數(shù)認(rèn)證以及PKI、IBC 都不能滿足工控毫秒級(jí)的信息安全認(rèn)證需求。
如圖5 所示,在工控上下位機(jī)通信中使用SSL/TLS 協(xié)議進(jìn)行通信,由結(jié)論2~結(jié)論4 可知,該協(xié)議無(wú)法滿足工控通信的毫秒級(jí)需求。

圖5 SSL/TLS 協(xié)議在工控上下位機(jī)通信中的應(yīng)用Fig.5 Application of SSL/TLS protocol in communication between upper and lower computer in industrial control
推論1SSL/TLS 不能滿足各種新興信息產(chǎn)業(yè)對(duì)安全通信的毫秒級(jí)可用性需求。
類似地,VPN 也不能滿足各種新興信息產(chǎn)業(yè)對(duì)安全通信的毫秒級(jí)可用性需求。
近年來(lái),涉及工業(yè)制造、水利、交通、醫(yī)療衛(wèi)生、能源等方面[27]的全球大規(guī)模ICS 攻擊事件頻發(fā)。因?yàn)镮CS 與智能制造、工業(yè)互聯(lián)網(wǎng)、工業(yè)4.0、中國(guó)制造2025、物聯(lián)網(wǎng)等新興信息產(chǎn)業(yè)存在必然的聯(lián)系,所以本文可得出以下結(jié)論:
結(jié)論5毫秒級(jí)信息安全是工控及相關(guān)信息產(chǎn)業(yè)的共性瓶頸問(wèn)題。
對(duì)工控及相關(guān)新興信息產(chǎn)業(yè)的通信安全而言,毫秒級(jí)信息安全是關(guān)鍵的安全問(wèn)題。遠(yuǎn)程訪問(wèn)是很多新興信息產(chǎn)業(yè)必不可少的環(huán)節(jié),雖然通信協(xié)議SSL/TLS 應(yīng)用較為廣泛,但是其協(xié)議無(wú)法滿足毫秒級(jí)信息安全需求,因此本文需要尋找滿足毫秒級(jí)信息安全的認(rèn)證技術(shù)以及通信技術(shù)。
CFL 是2008 年以陳華平為核心、與范修斌和呂述望發(fā)明并取其首字母命名,擁有自主知識(shí)產(chǎn)權(quán)的基于標(biāo)識(shí)的證書(shū)認(rèn)證技術(shù)。2016 年2 月17 日,CFL 認(rèn)證技術(shù)獲得了國(guó)家知識(shí)產(chǎn)權(quán)局授予的發(fā)明專利。2016 年3 月21 日,《基于SM2、SM3 的CFL 認(rèn)證體制》獲得了國(guó)家密碼管理局紅頭批文,通過(guò)了國(guó)家密碼管理局審查。2016 年7 月,在《信息安全研究》刊發(fā)了CFL 的理論研究專刊[3,5,30-35]。CFL 屬于函數(shù)認(rèn)證,是PKI 和IBC 的繼承和發(fā)展,且可同時(shí)彌補(bǔ)兩者不足。CFL 認(rèn)證體制滿足信息安全五性(機(jī)密性、完整性、可用性、可控性、可認(rèn)證性)需求,可實(shí)現(xiàn)毫秒級(jí)認(rèn)證。
CFL 認(rèn)證體制的安全屬性為:
1)CFL 是基于標(biāo)識(shí)的證書(shū)認(rèn)證體制[3,5]。
2)CFL 理論上可證明安全[5,33-35]。
3)CFL 應(yīng)用時(shí)滿足統(tǒng)計(jì)零知識(shí)[5,30,33-34]。
4)CFL 證書(shū)應(yīng)用過(guò)程中不依賴第三方,可直接認(rèn)證、現(xiàn)場(chǎng)認(rèn)證[3]。
5)CFL 證書(shū)滿足毫秒級(jí)、指令級(jí)安全[3]。
6)CFL 支持BLP 模型[36],即BLP 模型的范疇權(quán)限可以作為CFL 證書(shū)中的部分標(biāo)識(shí),即CFL 可支持基于BLP 模型的操作機(jī)密性保護(hù)。
CFL 認(rèn)證體制是應(yīng)用去中心化、可自認(rèn)證、可實(shí)現(xiàn)可信認(rèn)證以及可實(shí)現(xiàn)主動(dòng)防御的認(rèn)證技術(shù)[5],該認(rèn)證體制還具有隸屬輕量級(jí)、應(yīng)用去存儲(chǔ)化、一人一密、支持統(tǒng)一認(rèn)證、跨域認(rèn)證、支持安全進(jìn)程認(rèn)證和動(dòng)態(tài)認(rèn)證等技術(shù)優(yōu)勢(shì)[34]。CFL 作為底層信息安全技術(shù)可廣泛應(yīng)用于信息產(chǎn)業(yè)中[3],可為各種信息產(chǎn)業(yè)提供安全保障,因此CFL 可滿足各種信息產(chǎn)業(yè)對(duì)毫秒級(jí)信息安全認(rèn)證的迫切需求。CFL 與PKI、IBC 的屬性對(duì)比分析如表3 所示。

表3 CFL、PKI 和IBC 屬性對(duì)比分析Table 3 Comparative analysis of CFL,PKI and IBC attributes
文獻(xiàn)[36]給出了CFL_BLP 模型并提到了CFL SSL,但并未給出具體的協(xié)議描述以及工作流程,為此本文對(duì)CFL_BLP 模型進(jìn)行改進(jìn),給出了CFL SSL協(xié)議的具體定義、安全性質(zhì)以及應(yīng)用分析。
CFL_BLP 模型定義為t?T={0,1,…,t,…}時(shí)刻計(jì)算機(jī)系統(tǒng)SYt的一個(gè)八元組,即:

1)CFL 定 義并實(shí) 現(xiàn)CFL_BLP 模型中 的CFL 簽名驗(yàn)證,CFL 數(shù)據(jù)格式為:(1)CFL 簽名文件,明文||創(chuàng)建者的CFL 證書(shū)||時(shí)間戳||簽名.文件.cfl_sign;(2)CFL 對(duì)稱加密文件,密文||創(chuàng)建者的CFL 證書(shū)||時(shí)間戳||簽名.文件.cfl_bcipher;(3)CFL 電子信封文件,密文||創(chuàng)建者的CFL 證書(shū)||接收者的CFL 證書(shū)||時(shí)間戳||簽名.文件.cfl_pcipher。CFL 證書(shū)的標(biāo)識(shí)部分含BLP 權(quán)限。
2)St:St=,即t時(shí) 刻計(jì)算 機(jī)系統(tǒng)SYt的 所有主體,包括用戶、設(shè)備和進(jìn)程等。
3)Ot:Ot=,即t時(shí)刻計(jì)算機(jī)系統(tǒng)SYt的所有客體,它是一個(gè)樹(shù)型結(jié)構(gòu),是指一系列的對(duì)象或資源,例如數(shù)據(jù)、文件、程序以及存儲(chǔ)器等。
主體必須通過(guò)CFL 證書(shū)認(rèn)證且達(dá)到BLP 訪問(wèn)權(quán)限時(shí),才可對(duì)客體進(jìn)行訪問(wèn)操作,操作過(guò)程包括CFL_BLP 模型中的請(qǐng)求、模型給出的請(qǐng)求回答、允許訪問(wèn)的方式等。
4)RA(Request Access)。RA={get,release,give,rescind,change,create,delete} 。它是主體向系統(tǒng)發(fā)出請(qǐng)求命令的集合,下面對(duì)7 種請(qǐng)求方式進(jìn)行詳細(xì)介紹:
(1)get:①在t時(shí)刻的主體集合中添加一個(gè)主體,并且給該主體賦值BLP 一般權(quán)限;②在t時(shí)刻的主體集合中添加一個(gè)主體,并且給該主體賦值BLP當(dāng)前權(quán)限;③在t時(shí)刻的客體集合中添加一個(gè)客體,并且給該客體賦值BLP 權(quán)限。
(2)release:①?gòu)膖時(shí)刻BLP 模型主體中刪除一個(gè)主體;②從t時(shí)刻BLP 模型客體中刪除一個(gè)客體。
(3)give:擴(kuò)充Mt某點(diǎn)集合中的元素。
(4)rescind:刪減Mt某點(diǎn)集合的元素。
(5)change:更改BLP 模型客體安全級(jí),或更改BLP 模型主體當(dāng)前安全級(jí)。
(6)create:創(chuàng)建一個(gè)新客體添加到當(dāng)前的客體樹(shù)型結(jié)構(gòu),并給BLP 權(quán)限賦值以及自主訪問(wèn)控制矩陣賦值。
(7)delete:從樹(shù)型結(jié)構(gòu)中刪除一個(gè)客體,從而刪除相關(guān)BLP 賦值和自主訪問(wèn)控制矩陣賦值。
5)A:A=,即主體訪問(wèn)客體的訪問(wèn)方式的集合,且有:(1):execute,執(zhí) 行(neither observation nor alteration),執(zhí)行訪問(wèn)權(quán)限僅允許主體觸發(fā)可執(zhí)行 的對(duì)象;(2):only read,只 讀(observation with no alteration);(3):append,只寫(alteration with no observation);(4):read and write,讀寫(both observation and alteration);(5):control,是指某主體用來(lái)授予或撤銷另一主體對(duì)某一客體的訪問(wèn)權(quán)限的能力。
6)D:D={yes,no},系統(tǒng)接收到主體對(duì)客體的請(qǐng)求訪問(wèn)操作后,會(huì)對(duì)請(qǐng)求訪問(wèn)操作進(jìn)行判定,其為判定的結(jié)果集合。其中:(1)yes 表示請(qǐng)求被執(zhí)行;(2)no 表示請(qǐng)求被拒絕。
7)Mt:即t時(shí)刻自主訪問(wèn)控制矩陣,該控制矩陣是某主體對(duì)某客體可操作的集合,其是一個(gè)超矩陣。
當(dāng)?mt,i,j?A,1≤i≤αt,1≤j≤γt時(shí),Mt為:

其中,αt和γt分別是CFL_BLP 模型在t時(shí)刻的主體集合和客體集合的個(gè)數(shù)。
8)BLP 可表示為:

其中,C:C={c1,c2,…,cq},c1>c2>…>cq即一個(gè)主體或客體的密級(jí)一般分為公開(kāi)文件、內(nèi)部文件、秘密文件、機(jī)密文件和絕密文件等級(jí)。K:K={k1,k2,…,kr},即主客體組織機(jī)構(gòu)隸屬關(guān)系,顯然其滿足偏序關(guān)系。
BLP 安全級(jí)集合定義為F=C×K,同理可知,其也滿足以下偏序關(guān)系:
(1)f(s)=(C(s),K(s)):稱其為主體s的BLP 模型一般安全級(jí)函數(shù)。
(2)f(o)=(C(o),K(o)):稱其為客體o的BLP模型安全級(jí)函數(shù)。
(3)fc(s)=(Cc(s),Kc(s)):稱其為主體s的BLP模型當(dāng)前安全級(jí)函數(shù)。

若主體沒(méi)有當(dāng)前臨時(shí)安全級(jí)賦值,則有:

注:當(dāng)前的判斷和一般的判斷結(jié)果是并集關(guān)系,當(dāng)前的判斷與Mt是交集關(guān)系,一般的判斷與Mt是交集關(guān)系,最后的結(jié)果是前兩個(gè)交集關(guān)系的并集。
CFL_BLP 模型保證了用戶的BLP 模型的權(quán)限完整性,提高了CFL SSL 協(xié)議數(shù)據(jù)傳輸?shù)陌踩院涂煽啃浴?/p>
在通信建立時(shí),通信雙方必須都持有CFL 證書(shū),然后再經(jīng)過(guò)CFL SSL 握手協(xié)議和CFL SSL 傳輸協(xié)議進(jìn)行加密通信。下面本文對(duì)CFL SSL 協(xié)議的證書(shū)申請(qǐng)、CFL SSL 握手協(xié)議和CFL SSL 傳輸協(xié)議流程進(jìn)行介紹。
4.2.1 CFL SSL 證書(shū)申請(qǐng)
CFL 是基于SM2、SM3 進(jìn)行數(shù)字簽名的,CFL 證書(shū)申請(qǐng)流程包括:
1)CFL 用戶方的操作。(1)用戶按格式生成自身的信息標(biāo)識(shí)ID1;(2)用戶以SM2 為工作公鑰密碼算法,并生成公私鑰密鑰對(duì)(RAPK,RASK),私鑰RASK由用戶唯一擁有;(3)ID2=ID1||RAPK,用戶對(duì)ID2進(jìn)行簽名,sign1=SIGNRASK(H(ID2)),其中H=SM3,其輸出為N=256 bit,H(ID2)=h={h0,h1,…,ht-1},其中,hi(i=0,1,…,t-1)為sbit 的數(shù);(4)用戶將ID3=ID2||sign1提交給CFL 證書(shū)發(fā)證機(jī)關(guān)。
2)CFL 發(fā)證機(jī)關(guān)的操作。(1)VERIFYRAPK(ID3)=VERIFYRAPK(ID2||sign1),CFL 證書(shū)發(fā)證機(jī)關(guān)根據(jù)用戶提交的信息對(duì)ID3進(jìn)行驗(yàn)證;(2)CFL 證書(shū)發(fā)證機(jī)關(guān)審查用戶提交ID1的合法性;(3)記ID4=ID3||IC,其中IC包括CFL 證書(shū)發(fā)證機(jī)關(guān)的名稱、簽發(fā)證書(shū)的時(shí)間、證書(shū)的使用生命周期等信息,CFL 發(fā)證機(jī)關(guān)計(jì)算H(ID4)=h,得到控選函數(shù)輸入的控制信息h;(4)CFL證書(shū)發(fā)證機(jī)關(guān)根據(jù)h和私鑰基,計(jì)算多線性控選函數(shù)生成用戶標(biāo)識(shí)私鑰,即,其中,SKB=為私鑰生成元集,ski是由CFL 發(fā)證機(jī)關(guān)隨機(jī)選擇,滿足ski?Zm=,i=0,1,…,t2s-1且兩兩不等,Z為整數(shù)集,m為SM2 中橢圓曲線E上基點(diǎn)P的周期;(5)用簽名算法SIGN,以IDSK 為密鑰,對(duì)以RAPK為核心的證書(shū)內(nèi)容進(jìn)行簽名,得到sign2=SIGNIDSK(H(ID4))=(r,s)(證書(shū)信息中的第二次簽名)。
3)公眾方對(duì)用戶證書(shū)的操作。(1)公眾方在獲得用戶公布的證書(shū)后,將ID4輸入H,得到多線性控選函數(shù)輸入的控制信息h;(2)根據(jù)h,經(jīng)以下多線性控選函數(shù)變換fP(H(ID),PKB)==IDPK,生成標(biāo)識(shí)公鑰 IDPK,其 中 PKB=為公鑰 生成元 集,pki=ski˙PmodE;(3)以IDPK 作為驗(yàn)證算法的公鑰,對(duì)經(jīng)簽名的證書(shū)進(jìn)行驗(yàn)證,如驗(yàn)證正確,則證書(shū)通過(guò),否則證書(shū)不予通過(guò);(4)CFL 證書(shū)在實(shí)際應(yīng)用中,可添加隨機(jī)數(shù)、時(shí)間戳等信息,通過(guò)再次簽名構(gòu)成CFL 動(dòng)態(tài)證書(shū)。
由上述過(guò)程可知,用戶的標(biāo)識(shí)為多標(biāo)識(shí)且用戶的CFL 證書(shū)在應(yīng)用時(shí)為動(dòng)態(tài)證書(shū)需再次簽名,以增強(qiáng)證書(shū)安全性。目前,基于SM2 算法的CFL 硬件產(chǎn)品已達(dá)到毫秒級(jí),簽名速度為2 300 次/s,驗(yàn)證速度為1 400 次/s。
4.2.2 CFL SSL 握手協(xié)議
建立通信時(shí),通信雙方經(jīng)過(guò)CFL SSL 握手協(xié)議進(jìn)行證書(shū)交換、身份鑒別、密鑰交換。CFL SSL 握手協(xié)議流程如圖6 所示。

圖6 CFL SSL 握手協(xié)議流程Fig.6 Procedure of CFL SSL handshake protocol
CFL SSL 握手協(xié)議流程如下:
1)CFL 動(dòng)態(tài)證書(shū)交換。服務(wù)器端產(chǎn)生隨機(jī)數(shù)R存入到CFL 動(dòng)態(tài)證書(shū)中,對(duì)CFL 動(dòng)態(tài)證書(shū)進(jìn)行CFL簽名后發(fā)送給CFL 客戶端,證書(shū)內(nèi)容包含協(xié)議版本號(hào)、證書(shū)序列號(hào)、標(biāo)識(shí)、公鑰、用戶私鑰簽名、有效期、時(shí)間戳、發(fā)證機(jī)關(guān)簽名、隨機(jī)數(shù)以及擴(kuò)展等。CFL 客戶端接收到服務(wù)器CFL 動(dòng)態(tài)證書(shū)可直接進(jìn)行驗(yàn)證及有效性判定,驗(yàn)證通過(guò)后獲取證書(shū)中攜帶的R。CFL客戶端將R存入到自身證書(shū)中并進(jìn)行CFL 簽名,然后發(fā)送給服務(wù)器,服務(wù)器驗(yàn)證進(jìn)行簽名驗(yàn)證和隨機(jī)數(shù)驗(yàn)證,規(guī)避重發(fā)證書(shū)或使用他人合法證書(shū)進(jìn)行通信的情況,驗(yàn)證通過(guò)后,CFL 客戶端和服務(wù)器端進(jìn)行密鑰交換。
注:CFL 動(dòng)態(tài)證書(shū)驗(yàn)證及有效性判定,無(wú)需通過(guò)CRL 或OCSP 進(jìn)行證書(shū)狀態(tài)查詢,即整個(gè)驗(yàn)證過(guò)程無(wú)需第三方的介入,具有自主認(rèn)證功能。
2)密鑰交換。CFL 客戶端和服務(wù)器基于國(guó)產(chǎn)密碼算法生成共享密鑰,并進(jìn)行密鑰交換。將服務(wù)器端記為用戶A,CFL 客戶端記為用戶B,即當(dāng)持有CFL證書(shū)的用戶A與用戶B進(jìn)行通信時(shí),CFL SSL 握手流程分為以下3 個(gè)步驟:
(1)用戶A、B交換動(dòng)態(tài)CFL 證書(shū)。
(2)用戶A、B驗(yàn)證彼此的CFL 動(dòng)態(tài)證書(shū)。用戶A、B分別生成自身的身份信息標(biāo)識(shí)IDA、IDB,然后使用SM2 算法分別生成工作密鑰對(duì),(RAPKA,RASKA)、(RAPKB,RASKB)。


CFL 客戶端通過(guò)CFL SSL 協(xié)議獲得UA驗(yàn)證||signserver,并提取隨機(jī)數(shù)R。
③UB=
CFL 客戶端將帶有服務(wù)器端隨機(jī)數(shù)R和CFL 客戶端簽名的證書(shū)發(fā)送給服務(wù)器端。
服務(wù)器端驗(yàn)證CFL 客戶端證書(shū)簽名、隨機(jī)數(shù)R和signCFLclient。
(3)用戶A和用戶B基于SM2 進(jìn)行密鑰交換。
使用SM2 進(jìn)行密鑰交換,不需要交換用戶A和用戶B的公鑰,可直接從CFL 證書(shū)中獲取,且文獻(xiàn)[37]給出了通信雙方密鑰交換過(guò)程。
記用戶A為發(fā)起方,用戶B為響應(yīng)方,進(jìn)行如下運(yùn)算步驟:

其中,a、b、G的坐標(biāo)(xG,yG)為橢圓曲線方程參數(shù),(xA,yA)為用戶A的公鑰RAPKA的坐標(biāo),(xB,yB)為用戶B的公鑰RAPKB的坐標(biāo),ENTLA為的長(zhǎng)度轉(zhuǎn)換成的兩個(gè)字節(jié)的值,ENTLB為的長(zhǎng)度轉(zhuǎn)換成的兩個(gè)字節(jié)的值,H256()表示采用SM3 算法其輸出長(zhǎng)度為256 bit 的雜湊值。

用戶A和用戶B在密鑰交換后,通過(guò)CFL SSL傳輸協(xié)議進(jìn)行數(shù)據(jù)加密傳輸。
4.2.3 CFL SSL 傳輸協(xié)議
在CFL SSL 握手協(xié)議結(jié)束后,CFL 客戶端和服務(wù)器通過(guò)CFL SSL 傳輸協(xié)議進(jìn)行數(shù)據(jù)的加密傳輸。
CFL SSL 傳輸協(xié)議主要流程如圖7 所示。

圖7 CFL SSL 傳輸協(xié)議流程Fig.7 Procedure of CFL SSL transport protocol
CFL SSL 傳輸協(xié)議流程描述如下:
1)數(shù)據(jù)加密。CFL 客戶端和服務(wù)器用共享密鑰基于國(guó)產(chǎn)密碼算法SM4[38]的硬件對(duì)數(shù)據(jù)進(jìn)行加密,并生成密文。與上文類似,服務(wù)器端記為用戶A,CFL 客戶端記為用戶B,用戶A通過(guò)如下方式產(chǎn)生密文:
SM4 中假設(shè)明文輸入為(X0,X1,X2,X3)?,輪密鑰(rk0,rk1,…,rk31)?由Key 通過(guò)密鑰擴(kuò)展算法生成,輪函數(shù)F為F(X0,X1,X2,X3,rk)=X0⊕T(X1⊕X2⊕X3⊕rk),其中T由非線性變換τ和線性變換L復(fù)合而成,經(jīng)過(guò)32 次迭代運(yùn)算后輸出密文,發(fā)送給用戶B。
2)密文簽名。CFL 客戶端和服務(wù)器對(duì)密文進(jìn)行基于國(guó)產(chǎn)硬件的CFL 動(dòng)態(tài)簽名并添加CFL 證書(shū)。
3)密文傳輸。CFL 客戶端和服務(wù)器進(jìn)行帶有CFL 動(dòng)態(tài)簽名和CFL 證書(shū)的密文傳輸。
4)簽名驗(yàn)證。CFL 客戶端和服務(wù)器對(duì)密文的CFL 動(dòng)態(tài)簽名進(jìn)行驗(yàn)證。
5)密文解密。CFL 客戶端和服務(wù)器對(duì)帶有CFL動(dòng)態(tài)簽名和CFL 證書(shū)的密文進(jìn)行解密。用戶B驗(yàn)證用戶A的 CFL 動(dòng)態(tài)簽名后,使用輪密鑰(rk31,rk30,…,rk0)?進(jìn)行解密。
上述CFL SSL 協(xié)議的通信實(shí)現(xiàn)需要CFL 相關(guān)硬件產(chǎn)品的支持,且維護(hù)成本低。
通過(guò)上述CFL SSL 協(xié)議流程的描述可知,CFL SSL 性質(zhì)包括以下7 個(gè)性質(zhì):
性質(zhì)1CFL SSL 可滿足通信過(guò)程中對(duì)信息安全五性的需求。由CFL 安全屬性1、安全屬性4~安全屬性6 和CFL SSL 協(xié)議流程可知。
性質(zhì)2CFL SSL 可實(shí)現(xiàn)毫秒級(jí)安全認(rèn)證。由CFL 安全屬性4 和CFL SSL 協(xié)議流程可知,CFL SSL協(xié)議應(yīng)用過(guò)程中不需要第三方支持,規(guī)避了額外時(shí)延的產(chǎn)生,且計(jì)算是基于SM2 實(shí)現(xiàn)的,因此CFL SSL可達(dá)到毫秒級(jí)安全。
性質(zhì)3CFL SSL 可為通信雙方提供分級(jí)分類的強(qiáng)制訪問(wèn)控制機(jī)制,提高對(duì)通信數(shù)據(jù)的機(jī)密性保護(hù)。CFL SSL 的CFL 證書(shū)中包含了BLP 權(quán)限,通信雙方進(jìn)行證書(shū)交換可確定通信雙方的權(quán)限,根據(jù)權(quán)限的設(shè)置實(shí)現(xiàn)分級(jí)分類強(qiáng)制訪問(wèn)控制。
性質(zhì)4CFL SSL 可防止中間人攻擊,并提高對(duì)通信數(shù)據(jù)的機(jī)密性和完整性保護(hù)。CFL SSL 對(duì)傳輸?shù)臄?shù)據(jù)進(jìn)行加密和CFL 動(dòng)態(tài)簽名,通信雙方只有通過(guò)CFL 簽名驗(yàn)證才可對(duì)密文解密。
性質(zhì)5CFL SSL 可防止重放攻擊。CFL SSL中CFL 證書(shū)中含有時(shí)間戳標(biāo)識(shí),可對(duì)通信雙方傳輸?shù)臄?shù)據(jù)進(jìn)行時(shí)間戳標(biāo)記。
性質(zhì)6CFL SSL 可以防釣魚(yú)、防欺詐。CFL SSL 在進(jìn)行通信時(shí)對(duì)通信雙方進(jìn)行身份認(rèn)證,實(shí)現(xiàn)雙向認(rèn)證。
性質(zhì)7CFL SSL 支持標(biāo)記上級(jí)等級(jí)保護(hù)安全、先天免疫安全、處處是邊界安全。CFL SSL 是數(shù)據(jù)傳輸時(shí)的CFL 數(shù)據(jù)結(jié)構(gòu)化。
由上述分析可知,CFL SSL 具有滿足信息安全五性需求、毫秒級(jí)安全通信、防止重放攻擊等性質(zhì),與傳統(tǒng)SSL/TLS 相比具有以下優(yōu)勢(shì):
1)CFL SSL 協(xié)議在進(jìn)行通信時(shí)不需要進(jìn)行算法協(xié)商,統(tǒng)一使用國(guó)產(chǎn)密碼算法SM2 進(jìn)行密鑰協(xié)商。SM3 對(duì)消息進(jìn)行摘要,SM4 進(jìn)行數(shù)據(jù)加密,簡(jiǎn)化了SSL/TLS 的握手過(guò)程。
2)證書(shū)驗(yàn)證時(shí)采用的是CFL 認(rèn)證機(jī)制,不需要依賴遠(yuǎn)程CA 進(jìn)行證書(shū)驗(yàn)證,可直接認(rèn)證、毫秒級(jí)認(rèn)證,減少了證書(shū)驗(yàn)證產(chǎn)生的通信延遲,提高了可用性。
3)CFL 證書(shū)為動(dòng)態(tài)證書(shū),每次會(huì)話需要重新進(jìn)行認(rèn)證,并且都帶有CFL 動(dòng)態(tài)簽名,規(guī)避了重放攻擊,增強(qiáng)了抵御其他攻擊的能力,提高了安全性。
4)通過(guò)CFL 動(dòng)態(tài)證書(shū)、動(dòng)態(tài)簽名、BLP 權(quán)限可實(shí)現(xiàn)對(duì)數(shù)據(jù)在傳輸前、傳輸過(guò)程中以及接收后的完整性和機(jī)密性保護(hù)。
5)加密模塊基于CFL 硬件實(shí)現(xiàn),安全強(qiáng)度高。
本文以信息安全五性以及毫秒級(jí)安全等屬性為標(biāo)準(zhǔn),將所提CFL SSL 協(xié)議與傳統(tǒng)SSL/TLS 協(xié)議進(jìn)行比較分析,結(jié)果如表4 所示。

表4 CFL SSL 協(xié)議與傳統(tǒng)SSL/TLS 協(xié)議對(duì)比Table 4 Comparison between CFL SSL protocol and traditional SSL/TLS protocol
為了驗(yàn)證CFL SSL 通信時(shí)雙方進(jìn)行證書(shū)認(rèn)證的時(shí)間,采用包含CFL 密碼卡在內(nèi)的硬件設(shè)備進(jìn)行實(shí)際測(cè)試,測(cè)試環(huán)境為:CFL 密碼卡服務(wù)器的CPU 為Intel?PentiumR G2030 @ 3.00GHz,內(nèi)存為4 GB,硬盤為1 TB,操作系統(tǒng)為CentOS release 6.5,密碼卡為SC26E-1RQHE;PC 機(jī) 的CPU 為Intel?CoreTMi5CPU M430@2.27GHz,內(nèi)存(RAM)為4 GB,操作系統(tǒng)為Windows 7 旗艦版32位操作系統(tǒng),交換機(jī)為TP-LINK TL-SG2016D。
如表5 所示,證書(shū)簽名進(jìn)行了792 次測(cè)試,輸出了每秒簽名次數(shù),平均簽名速度為每秒1 772 次。

表5 CFL SSL 證書(shū)簽名實(shí)驗(yàn)數(shù)據(jù)Table 5 Experimental data of CFL SSL certificate signature
如表6 所示,證書(shū)簽名驗(yàn)證進(jìn)行了600 次測(cè)試,輸出每秒驗(yàn)簽次數(shù),平均驗(yàn)簽速度為每秒1 204 次。

表6 CFL SSL 證書(shū)驗(yàn)簽實(shí)驗(yàn)數(shù)據(jù)Table 6 Experimental data of CFL SSL certificate verification
由以上實(shí)驗(yàn)結(jié)果可知,CFL 客戶端與服務(wù)器端通信時(shí)CFL 簽名及簽名驗(yàn)證均為毫秒級(jí)的,因此CFL SSL 協(xié)議可滿足各種新興信息產(chǎn)業(yè)的毫秒級(jí)安全通信需求。隨著硬件設(shè)備計(jì)算能力的不斷提高,CFL SSL 協(xié)議的性能會(huì)進(jìn)一步得到提升。
CFL SSL 認(rèn)證是基于標(biāo)識(shí)和證書(shū)的,同時(shí)可實(shí)現(xiàn)分級(jí)分類的強(qiáng)制訪問(wèn)控制,為通信雙方提供了身份認(rèn)證機(jī)制和訪問(wèn)控制機(jī)制。通信雙方進(jìn)行身份認(rèn)證時(shí)無(wú)需依賴中心,可直接認(rèn)證、現(xiàn)場(chǎng)認(rèn)證,滿足了毫秒級(jí)信息安全通信的需求。
在工控領(lǐng)域,工控上下位機(jī)進(jìn)行通信時(shí),首先進(jìn)行CFL 證書(shū)交換,然后通信雙方進(jìn)行證書(shū)認(rèn)證及驗(yàn)證證書(shū)的有效性,最后建立通信通道,并進(jìn)行數(shù)據(jù)加密傳輸。CFL SSL 協(xié)議在工控上下位機(jī)通信中使用CFL 認(rèn)證技術(shù),可直接認(rèn)證,從而減少了通信量,降低了通信延遲,實(shí)現(xiàn)了通信雙方的毫秒級(jí)認(rèn)證。工控系統(tǒng)不僅對(duì)實(shí)時(shí)性要求高,安全性也至關(guān)重要。工控上下位機(jī)之間傳輸?shù)闹噶畋容^小,因此很容易受到黑客的短指令耦合攻擊。CFL SSL 協(xié)議應(yīng)用的分組密碼算法SM4 是128 bit 的,可規(guī)避工控上下位機(jī)通信時(shí)受到短指令的耦合攻擊。CFL SSL 自主可控,規(guī)避了惡意后門產(chǎn)生的攻擊,保障了通信及通信過(guò)程中數(shù)據(jù)的安全性。與SSL/TLS 協(xié)議相比,CFL SSL 協(xié)議對(duì)各種新興信息產(chǎn)業(yè)的通信更具有應(yīng)用價(jià)值。
隨著新興信息產(chǎn)業(yè)的發(fā)展,常用的PKI、IBC 認(rèn)證技術(shù)以及傳統(tǒng)的SSL/TLS 通信協(xié)議已不能滿足其毫秒級(jí)信息安全需求,毫秒級(jí)信息安全已經(jīng)成為工控及相關(guān)信息產(chǎn)業(yè)的共性瓶頸問(wèn)題。本文針對(duì)各產(chǎn)業(yè)毫秒級(jí)通信問(wèn)題,給出基于CFL_BLP 模型的CFL SSL 協(xié)議,保證了通信的機(jī)密性和完整性,通過(guò)BLP權(quán)限確保數(shù)據(jù)被訪問(wèn)時(shí)的可信性和安全性,實(shí)驗(yàn)結(jié)果證明了該協(xié)議可滿足工控及其他新興信息產(chǎn)業(yè)的毫秒級(jí)信息安全需求。下一步將利用國(guó)產(chǎn)密碼算法來(lái)優(yōu)化通信協(xié)議的算法選擇部分,以增強(qiáng)CFL SSL協(xié)議的通用性。