郭 偉,任昭錦,劉 景,張文芳,饒 偉,王小敏
(1.西南交通大學(xué) 信息科學(xué)與技術(shù)學(xué)院,四川 成都 611756;2.西南交通大學(xué) 信息化與網(wǎng)絡(luò)管理處,四川 成都 611756;3.中鐵信弘遠(yuǎn)(北京)軟件科技有限責(zé)任公司,北京 100038)
列車運(yùn)行控制系統(tǒng)(以下簡稱“列控系統(tǒng)”)是保障高速鐵路運(yùn)營安全、提高運(yùn)營效率的核心技術(shù)裝備,是高速鐵路的中樞神經(jīng)。2020年8月,中國國家鐵路集團(tuán)有限公司發(fā)布的《新時(shí)代交通強(qiáng)國鐵路先行規(guī)劃綱要》中明確指出,將自主研發(fā)新型智能列控系統(tǒng),即利用5G通信、北斗衛(wèi)星導(dǎo)航技術(shù)等構(gòu)建空天地一體化的列控系統(tǒng)。
自從5G系統(tǒng)的第一階段標(biāo)準(zhǔn)R15(Release 15)發(fā)布以來,5G標(biāo)準(zhǔn)一直在不斷演進(jìn)之中,目前5G的第二階段標(biāo)準(zhǔn)R16已經(jīng)凍結(jié),R17正在制定過程中。5G規(guī)劃中的諸多特性,如網(wǎng)絡(luò)切片、移動(dòng)邊緣計(jì)算、超高可靠低延時(shí)通信等,均對提高目前鐵路列控系統(tǒng)的效能有著積極作用。在基于5G鐵路專網(wǎng)(5G-R)的列控系統(tǒng)的相關(guān)研究中,信號系統(tǒng)的通信安全性是其中至關(guān)重要的一環(huán)。本文將在對高鐵列控系統(tǒng)安全現(xiàn)狀進(jìn)行調(diào)研和分析的基礎(chǔ)上,結(jié)合5G系統(tǒng)的安全特性和發(fā)展趨勢,給出面向未來高速鐵路列控系統(tǒng)應(yīng)用的5G鐵路專網(wǎng)信號安全通信架構(gòu)設(shè)計(jì)方案。
中國列車運(yùn)行控制系統(tǒng)(Chinese Train Control System,CTCS)共分為5級,目前投入實(shí)用的最高級別是CTCS-3級,主要用于300 km/h以上的客運(yùn)專線。CTCS-3級主要依靠軌道電路檢查線路占用情況,并將之通過車站聯(lián)鎖(Computer-Based Interlocking,CBI)發(fā)送給無線閉塞中心(Radio Block Center,RBC);列車則通過軌旁鋪設(shè)的地面應(yīng)答器得到相應(yīng)的定位信息,并通過GSM-R無線鏈路發(fā)送給RBC;RBC根據(jù)列車位置以及前方軌道占用情況計(jì)算生成相應(yīng)的行車許可,再通過GSM-R鏈路傳送給車載列車超速防護(hù)系統(tǒng)(Automatic Train Protection,ATP)以控制列車運(yùn)行[1]。在上述過程中,信號設(shè)備之間的信息交互,主要是通過開放式網(wǎng)絡(luò)進(jìn)行。因此,在CTCS-3級列控系統(tǒng)(以下簡稱“C3系統(tǒng)”)中,信號設(shè)備間的通信安全對于保障高速鐵路的安全運(yùn)營有著至關(guān)重要的作用。
為了增強(qiáng)列控系統(tǒng)的通信安全,我國參照歐洲ETCS-2級列車控制系統(tǒng)的相關(guān)標(biāo)準(zhǔn),在 C3系統(tǒng)規(guī)范中制定了2個(gè)配套的安全子協(xié)議,即《CTCS-3級列控系統(tǒng)無線通信功能接口規(guī)范》[2](對應(yīng)ETCS Subset-037[3])和《CTCS-3級列控系統(tǒng)規(guī)范:鐵路信號安全通信協(xié)議-Ⅱ》(Railway Signal Safety Protocol-Ⅱ,RSSP-Ⅱ)[4](對應(yīng)ETCS Subset-098[5])。Subset-037又被稱為歐洲無線(Euroradio,ER)安全層,采用對等實(shí)體認(rèn)證、消息認(rèn)證碼(Message Authentication Code, MAC)等安全機(jī)制,為RBC到車載ATP之間的端到端安全傳輸提供數(shù)據(jù)來源認(rèn)證,并保障其完整性,防范可能的篡改和偽造。Subset-098則被用于保障相鄰RBC之間通過地面鏈路進(jìn)行的安全傳輸,其主要安全功能被分為2層:一層是消息鑒定安全層(Message Authentication Safety Layer, MASL),基本等效于ER安全層;另一層是安全應(yīng)用中間子層(Safe Application Intermediate sub_layer, SAI),其主要功能是在MASL層所提供的安全防護(hù)基礎(chǔ)上,額外為通信數(shù)據(jù)包添加序列號、執(zhí)行周期計(jì)數(shù)器或三重時(shí)間戳校驗(yàn)標(biāo)志符,防范對通信數(shù)據(jù)包的重復(fù)、亂序、插入、刪除和延遲。需要注意的是,我國的C3系統(tǒng)中將RSSP-Ⅱ協(xié)議的適用范圍擴(kuò)大到了整個(gè)地面信號傳輸網(wǎng)絡(luò),因此地面信號設(shè)備之間的安全數(shù)據(jù)交互,也采用了RSSP-Ⅱ協(xié)議進(jìn)行防護(hù)。CTCS-3級列控系統(tǒng)及其防護(hù)機(jī)制示意見圖1。
由圖1可見,目前我國C3系統(tǒng)的安全防護(hù)機(jī)制分為三部分:①由GSM-R網(wǎng)絡(luò)提供的相關(guān)安全機(jī)制,主要包括GSM-R網(wǎng)絡(luò)端對ATP的單向鑒權(quán)和基站到ATP電臺(tái)間的空中接口加密;②由ER安全層提供的RBC到ATP之間的端到端安全服務(wù);③由RSSP-Ⅱ協(xié)議為信號安全設(shè)備(RBC、CBI、CTC、TSRS等)通過地面信號傳輸網(wǎng)絡(luò)(主要是信號安全數(shù)據(jù)網(wǎng)和調(diào)度集中通信網(wǎng))進(jìn)行安全相關(guān)信息交互所提供的安全防護(hù)[6-7]。有鑒于RSSP-Ⅱ協(xié)議的安全核心仍然是基于ER安全層,所以實(shí)際上整個(gè)列控系統(tǒng)的核心通信安全防護(hù)機(jī)制只有兩層,即外層的GSM-R空口鏈路安全機(jī)制和內(nèi)層的ER安全層。與此同時(shí),GSM-R的安全機(jī)制完全繼承自公網(wǎng)GSM系統(tǒng),存在包括空口加密被破解等諸多安全缺陷[8],已無法提供任何安全保護(hù),所以目前C3系統(tǒng)的安全運(yùn)行幾乎完全依賴于ER安全層。
針對ETCS-2級列控系統(tǒng)的安全性分析工作始于2010年,由英國政府和鐵路行業(yè)主導(dǎo),重點(diǎn)對系統(tǒng)規(guī)范進(jìn)行安全審計(jì)和評估,以確定可能存在的系統(tǒng)性弱點(diǎn)并給出改進(jìn)意見。該項(xiàng)研究[9]指出,由于ER安全層無法提供機(jī)密性服務(wù),且GSM-R的安全機(jī)制已被完全破解,攻擊者可以入侵GSM-R網(wǎng)絡(luò),以中間人攻擊形式竊聽到ETCS的列控指令和其他敏感信息,并向車載ATP發(fā)送緊急停車指令(為了保證緊急指令的實(shí)時(shí)性,E2和C3標(biāo)準(zhǔn)規(guī)定無條件緊急停車和有條件緊急停車指令不受ER安全層保護(hù)。),造成列車停運(yùn)并影響鐵路系統(tǒng)的運(yùn)營秩序。該項(xiàng)分析關(guān)注到ER安全層核心消息認(rèn)證碼(ER-MAC)算法的安全性,但并未深入分析,僅建議將ER-MAC底層的DES算法升級為AES。
2012年,受原鐵道部項(xiàng)目資助,西南交通大學(xué)研究團(tuán)隊(duì)開展了對CTCS-3級列控系統(tǒng)的安全性分析,針對ER-MAC算法提出了一種“部分密鑰恢復(fù)+偽造攻擊”方案[10],將攻擊復(fù)雜度從蠻力窮搜密鑰所需的2156次MAC運(yùn)算,降低到了僅需232.5個(gè)已知明文和3×256次離線MAC運(yùn)算,其后即可在線實(shí)時(shí)偽造包含列車行車許可在內(nèi)的任意車地傳輸報(bào)文。2017年,英國伯明翰大學(xué)的一個(gè)研究小組[11]針對ER安全層獨(dú)立再現(xiàn)了上述偽造攻擊,并公開了完整的攻擊細(xì)節(jié),其方案與文獻(xiàn)[10]僅有輕微差異。上述攻擊的成功率主要取決于攻擊者能否在密鑰生存周期內(nèi)(即未發(fā)生RBC切換)成功獲得一對MAC碰撞消息。根據(jù)生日攻擊原理,獲得MAC碰撞的概率與密鑰生存周期內(nèi)車地間交互的信息包數(shù)目直接相關(guān)。當(dāng)車地間采用GSM-R鏈路進(jìn)行傳輸時(shí),受限于較低的傳輸速率(9.6 kbps),即使重復(fù)攻擊上萬次,成功率仍低于10-5,而當(dāng)平均傳輸速率提高到10 Mbps時(shí),僅需200次重復(fù)攻擊,成功率即可接近50%。這一模擬結(jié)果驗(yàn)證了文獻(xiàn)[11]與英國鐵路安全與標(biāo)準(zhǔn)委員會(huì)的共識,即上述攻擊對GSM-R鏈路暫時(shí)尚無法構(gòu)成實(shí)際威脅,但將ER-MAC算法沿用到下一代傳輸速率更高的鐵路車地通信系統(tǒng)(如LTE-R和5G-R)上會(huì)存在較大安全隱患,必須進(jìn)行算法更新。需要注意的是,我國C3系統(tǒng)的地面信號傳輸網(wǎng)絡(luò)同樣使用ER-MAC算法,而且地面信號設(shè)備之間交互的數(shù)據(jù)量更大,在線時(shí)間更長,因此受到上述攻擊的威脅也更大。
基于5G 通信和北斗衛(wèi)星等技術(shù)所構(gòu)建的空天地一體化列控系統(tǒng)[12]是我國高速鐵路列控系統(tǒng)的發(fā)展方向。在基于5G-R的列控系統(tǒng)中,車載設(shè)備將不再單一連接到RBC,而是可以實(shí)現(xiàn)車與車、車與各類軌旁設(shè)備、車與衛(wèi)星之間的萬物互聯(lián),最大程度地提高列控系統(tǒng)的安全性和行車效率。
以研制中的西部高原列控系統(tǒng)[12-13]為例,該系統(tǒng)采用移動(dòng)閉塞,具備基于“輪速傳感器+應(yīng)答器+北斗定位”的多源融合自主定位功能,取消了維護(hù)保養(yǎng)復(fù)雜、可靠性較差的軌道電路。地面設(shè)備除了與C3相同的ATP到RBC的車地鏈路,還增加了臨時(shí)限速服務(wù)器(Temporary Speed Restriction Server, TSRS)與ATP之間的鏈路,用于向ATP發(fā)送電子地圖、北斗差分?jǐn)?shù)據(jù)等信息,矯正北斗衛(wèi)星定位誤差。車載設(shè)備包括ATP和EOT列尾設(shè)備,其中EOT會(huì)通過5G無線鏈路向ATP發(fā)送風(fēng)壓、位置、速度等信息,從而完成列車自主完整性檢查。
規(guī)劃中的下一代列控系統(tǒng)需實(shí)現(xiàn)列車主動(dòng)防護(hù)功能[14-15],前車可以將位置、狀態(tài)等信息通過車車通信發(fā)送給后車,使后車增加了獲取前車位置的渠道,增強(qiáng)了主動(dòng)防護(hù)能力。此外,文獻(xiàn)[12]所提出的基于5G的鐵路全自動(dòng)運(yùn)行系統(tǒng),還進(jìn)一步增加了列車自動(dòng)駕駛(Auto Train Operation, ATO)單元與CTC之間的雙向通信,ATO將接收CTC發(fā)送的遠(yuǎn)程控車指令,同時(shí)發(fā)送列車運(yùn)行狀態(tài)給CTC,還可將列車運(yùn)行前、后方的視頻,以及車內(nèi)視頻監(jiān)視信息上傳到 CTC。
綜合上述列控系統(tǒng)的特點(diǎn),給出基于5G的新型列控系統(tǒng)通信架構(gòu)參考圖,見圖2。圖2中,為了降低通信延遲,將RBC下沉到移動(dòng)邊緣計(jì)算節(jié)點(diǎn)。
圖2 基于5G的新型列控系統(tǒng)通信架構(gòu)參考圖
新通信架構(gòu)改變了原有ATP與RBC之間一對一的通信關(guān)系,ATP/ATO既需要與不同地面設(shè)備(RBC、TSRS、CTC)交互數(shù)據(jù),還需要與本車的EOT,以及前后車的ATP/ATO進(jìn)行通信,地面設(shè)備之間同樣需要交互信號安全數(shù)據(jù)。在原C3系統(tǒng)的通信架構(gòu)下,只需RBC掌握管轄范圍內(nèi)所有ATP的對稱認(rèn)證密鑰,即可為后續(xù)安全鏈接派生會(huì)話密鑰并保護(hù)通信安全;而在新架構(gòu)下,由于通信參與方多且復(fù)雜(如圖2所示的通信場景,當(dāng)RBC管轄范圍內(nèi)有n列車時(shí),即需要4n+(n-1)n/2+3對對稱密鑰),而且隨著列車運(yùn)行,還會(huì)在不同區(qū)段的地面設(shè)備之間不斷切換,因此基于對稱密碼機(jī)制的密鑰管理體系已不再適用。
5G標(biāo)準(zhǔn)目前已經(jīng)演進(jìn)到了第三階段(Release17),但現(xiàn)有安全標(biāo)準(zhǔn)主要側(cè)重于保護(hù)控制面數(shù)據(jù),而對用戶面數(shù)據(jù)的保護(hù)仍存在一定缺陷,單獨(dú)使用5G安全機(jī)制尚無法保證高鐵車地通信鏈路的安全。
目前5G系統(tǒng)無法為用戶面提供真正意義上的端到端安全。在4G時(shí)代,LTE系統(tǒng)考慮到了eNB可能被攻擊者入侵,因此在傳統(tǒng)的接入層(Access Stratum, AS)安全機(jī)制基礎(chǔ)上,增加了非接入層 (Non-Access Stratum, NAS) 安全。經(jīng)NAS層發(fā)送的控制面數(shù)據(jù)在eNB處不會(huì)被解析,而是以密文形式轉(zhuǎn)發(fā),進(jìn)入核心網(wǎng)之后才被解密。然而,LTE所增加的NAS層僅針對控制面,而用戶面安全機(jī)制均在eNB處終止,所有用戶數(shù)據(jù)都將被解密后再經(jīng)由網(wǎng)絡(luò)域安全機(jī)制(IPSec)重新打包后向核心網(wǎng)進(jìn)行轉(zhuǎn)發(fā)。這也使得eNB一旦被入侵,攻擊者可以直接獲取解密后的用戶面數(shù)據(jù)。5G系統(tǒng)基本沿用了LTE對控制面和用戶面的處理策略,改進(jìn)之處在于gNB被分為了集中單元(Centralized Unit, CU)和分布單元(Distributed Unit,DU)兩層,新空口(New-Radio, NR)中負(fù)責(zé)安全的PDCP協(xié)議可后移至CU處終結(jié)。CU作為集中節(jié)點(diǎn),可以得到更好的物理安全防護(hù),但仍存在被物理入侵后泄露用戶面數(shù)據(jù)的可能。
5G-NR的完整性保護(hù)方案尚無法滿足高鐵車地鏈路的安全性需求。相較于機(jī)密性保護(hù),高鐵車地信號傳輸鏈路對完整性保護(hù)有更為迫切的需求。3G、4G系統(tǒng)僅針對控制面數(shù)據(jù)提供完整性保護(hù)。5G系統(tǒng)從R15版本起,為用戶面提供了可選的完整性保護(hù),但其沿用了4G、5G控制面所采用的NIA1、NIA2、NIA3算法,僅支持最高64 kbps的傳輸速率[16]。超出這一速率上限的用戶面數(shù)據(jù)將無法使用完整性保護(hù)功能,而這顯然與未來多業(yè)務(wù)高帶寬車地通信鏈路的需求相互矛盾。與此同時(shí),3GPP 的5G-NR提供的3種機(jī)密性保護(hù)算法NEA1、NEA2和NEA3(分別對應(yīng)Snow3G、AES-CTR和ZUC),均為序列加密方式。序列密碼的原理決定了,如果沒有完整性保護(hù),在已知明文條件下,攻擊者可實(shí)現(xiàn)對傳輸數(shù)據(jù)的篡改[17]。
上述5G系統(tǒng)的安全缺陷,決定單一依靠5G自身安全機(jī)制,尚無法為列控系統(tǒng)通信安全提供足夠保護(hù),仍需根據(jù)列控系統(tǒng)實(shí)際,定義額外的端到端安全層。
在現(xiàn)有C3列控系統(tǒng)的核心安全協(xié)議ER層中,除了使用ER-MAC算法對傳輸消息提供數(shù)據(jù)來源認(rèn)證和完整性保護(hù)外,在信號設(shè)備間建立安全連接過程中,同樣基于ER-MAC算法完成了對等實(shí)體認(rèn)證和會(huì)話密鑰派生,ATP只需存儲(chǔ)與沿線RBC建立安全連接所需的對稱認(rèn)證密鑰,密鑰管理相對簡單。然而隨著列控系統(tǒng)的不斷發(fā)展,其通信架構(gòu)將愈加復(fù)雜,沿用現(xiàn)有的依靠密鑰生成中心KGC為每一對通信雙方分配對稱認(rèn)證密鑰的方式,將會(huì)帶來巨大的密鑰管理難度和運(yùn)營成本。因此,本文提出基于國密SM9標(biāo)識密碼算法構(gòu)建面向5G萬物互聯(lián)場景的列控設(shè)備間認(rèn)證與密鑰協(xié)商(Authentication & Key Agreement, AKA)機(jī)制,替代現(xiàn)有的方案,在保證系統(tǒng)安全性的同時(shí)降低密鑰管理的復(fù)雜程度。
國密算法SM9[18]是一種基于雙線性對的標(biāo)識密碼(Identity-based Cryptography, IBC),直接使用用戶標(biāo)識(如證件號、郵箱地址、手機(jī)號和物理地址等)和系統(tǒng)參數(shù)計(jì)算用戶公鑰,由密鑰生成中心KGC生成各個(gè)用戶的私鑰。IBC是一種無證書的公鑰密碼體制,避免了復(fù)雜的證書管理流程,用戶在進(jìn)行密鑰交換前,無需交換和檢驗(yàn)證書,極大地降低了密鑰交換過程的通信量和復(fù)雜程度,且可以支持對海量用戶進(jìn)行標(biāo)識。在列控系統(tǒng)中,每一個(gè)設(shè)備均有一個(gè)11位的CTCS ID[19],基于此編號即可唯一地標(biāo)識用戶并以此派生用戶的IBC公鑰。
雙線性對定義在橢圓曲線群上,SM9使用了安全性能好、運(yùn)算速率高的R-ate對。設(shè)(G1, +)、(G2, +)、(GT, ·)是3個(gè)循環(huán)群,G1、G2、GT的階均為素?cái)?shù)N(N>2191)。P1為G1的生成元,P2為G2的生成元,存在G2到G1的同態(tài)映射ψ,使得ψ(P2)=P1。雙線性對e是G1×G1→GT的映射,滿足如下條件:
(1)雙線性性:對任意的P∈G1,Q∈G2,a、b∈ZN,有e([a]P, [b]Q)=e(P,Q)ab。
(2)非退化性:e(P1,P2)≠1GT。
(3)可計(jì)算性:對任意的P∈G1,Q∈G2,存在有效的算法計(jì)算e(P,Q)。
基于SM9的列控設(shè)備安全連接建立流程見圖3,其中共包含3個(gè)輔助函數(shù):Hashv(·)為基于國密SM3算法實(shí)現(xiàn)的輸出長度為v比特的雜湊函數(shù);H1(Z,n)為輸入為字符串Z和整數(shù)n,輸出為h1∈[1,N-1]的雜湊函數(shù),H1(Z,n)需要調(diào)用Hashv(·);KDF(Z,klen)為輸入為字符串Z和整數(shù)klen的密鑰派生函數(shù),輸出長度為klen的密鑰比特串K。SM9算法的原理,以及h1和KDF函數(shù)的定義均可參見文獻(xiàn)[18],本文限于篇幅,不再詳述。
圖3 基于SM9的列控設(shè)備安全連接建立流程
(1)在安全性方面,基于SM9的認(rèn)證與密鑰交換方案能夠提供與目前方案相當(dāng)?shù)陌踩?。文獻(xiàn)[20]提出由于IBC體制下用戶私鑰均由KGC集中生成,因此存在密鑰托管和私鑰安全分發(fā)的問題,導(dǎo)致整個(gè)系統(tǒng)的安全嚴(yán)重依賴于KGC。目前C3系統(tǒng)的對稱認(rèn)證密鑰同樣是由KGC統(tǒng)一產(chǎn)生,在KGC安全且可信的情況下,采用IBC機(jī)制并不會(huì)為現(xiàn)有系統(tǒng)引入額外安全風(fēng)險(xiǎn)。與此同時(shí),SM9相當(dāng)于RSA3072位的安全強(qiáng)度,足以滿足列控系統(tǒng)通信安全的需要。
(2)在效率方面,SM9算法在不同平臺(tái)上有較大區(qū)別,在不考慮初始化和通信延遲情況下,基于SM9的密鑰交換和安全鏈接建立時(shí)間通常在幾十毫秒至數(shù)秒之間。雖然較ER安全層的原密鑰交換協(xié)議性能有所下降,但目前列控通信系統(tǒng)的安全連接建立延遲通常僅要求低于40 s[2,4],因此基于SM9的密鑰交換機(jī)制足以滿足要求。
在引入5G系統(tǒng)之后,5G自身安全機(jī)制可在一定程度上改善車地通信鏈路的安全態(tài)勢,但仍存在不足:首先,未來列控系統(tǒng)的車地鏈路需傳輸包含視頻信息等在內(nèi)的大量數(shù)據(jù),而5G-NR僅支持為64 kbps以下速率提供完整性保護(hù);其次,5G系統(tǒng)無法為用戶面數(shù)據(jù)提供真正意義上的端到端的安全保護(hù),一旦gNB被入侵,對用戶面的保護(hù)將完全失效。綜上所述,在引入基于SM9的認(rèn)證與密鑰交換機(jī)制之后,新型列控系統(tǒng)的通信鏈路仍需構(gòu)建一個(gè)基于對稱密鑰的低延時(shí)、高吞吐量、高安全強(qiáng)度的端到端保護(hù)方案,以替代現(xiàn)有的ER-MAC方案。
認(rèn)證加密(Authenticated Encryption, AE)是目前唯一能夠達(dá)到文獻(xiàn)[21]定義的CCA3安全性的對稱密碼原語,即同時(shí)達(dá)到選擇明文攻擊下的不可區(qū)分(IND-CPA)和密文完整性(INT-CTXT)。考慮到傳輸報(bào)文的部分關(guān)聯(lián)信息(如報(bào)頭)必須采用明文傳送以方便解析和轉(zhuǎn)發(fā),文獻(xiàn)[22]提出了帶有關(guān)聯(lián)數(shù)據(jù)的認(rèn)證加密模式(Authenticated Encryption with Associated Data, AEAD),可在為明文數(shù)據(jù)提供機(jī)密性和完整性雙重保護(hù)的同時(shí), 為關(guān)聯(lián)數(shù)據(jù)提供完整性保護(hù)。目前,AEAD模式已逐步實(shí)現(xiàn)了對加密、認(rèn)證和認(rèn)證加密3種密碼工作模式的統(tǒng)一,以正在進(jìn)行中的NIST輕量密碼算法遴選[23]為例,其征集對象就只包含了AEAD和AEAD&Hash兩類。此外,近年來幾乎所有的端到端安全協(xié)議和無線安全協(xié)議,如TLS、IPSec ESP、WIFI(802.11i)、MACSec(802.1AE)、無線個(gè)域網(wǎng)(802.15.4),和安全實(shí)時(shí)傳輸協(xié)議SRTP(RFC3711)中,均采用或者提供了可選的AEAD算法套件實(shí)現(xiàn)端到端安全保護(hù),而在3GPP關(guān)于5G超高可靠超低延時(shí)通信(URLLC)鏈路的技術(shù)報(bào)告中,同樣建議采用AEAD算法實(shí)現(xiàn)端到端安全保護(hù)[24]。
在安全性方面,防止攻擊者對傳輸信息的篡改和偽造是新型列控通信系統(tǒng)端到端通信防護(hù)的核心安全需求,AEAD機(jī)制不僅可為傳輸數(shù)據(jù)提供數(shù)據(jù)來源認(rèn)證和完整性保護(hù),還可通過對重要數(shù)據(jù)字段(如列控指令等)的加密,提升方案整體的安全性。這主要是因?yàn)锳E算法認(rèn)證模塊保護(hù)的是密文完整性,因此即使攻擊者攻破了AE算法的認(rèn)證模塊,實(shí)現(xiàn)了對密文的篡改或者偽造,但只要AE算法的加密模塊仍然安全,攻擊者就無法篡改或偽造出有意義的明文。在效率方面,目前 AEAD算法多采用One-pass結(jié)構(gòu),即一個(gè)消息分組只需要調(diào)用一次分組密碼,配合分組間的并行處理,可以達(dá)到比基于串行結(jié)構(gòu)的ER-MAC算法更高的執(zhí)行效率。綜合在安全性和效率方面的突出優(yōu)勢,AEAD方案是實(shí)現(xiàn)新型列控系統(tǒng)信號安全通信的最佳選擇。
2019年2月結(jié)束的CAESAR (Competition for Authenticated Ciphers: Security, Applicability, and Robustness)算法遴選,分別針對深度防御(高安全性)、高性能和輕量級三類應(yīng)用場景,各選出了2種推薦AEAD算法[25]。這些算法是從全球提交的48個(gè)合格候選方案中,花費(fèi)了6年時(shí)間經(jīng)歷了3輪的評價(jià)和對比后選出的,幾乎可以代表目前AE方案設(shè)計(jì)的最高水平。由于車地列控通信場景對于算法輕量化并無需求,因此本文主要從CAESAR競賽的高性能場景推薦方案AEGIS-128和OCB3,以及深度防御場景推薦方案Deoxys-Ⅱ和COLM中,挑選一種安全性和實(shí)現(xiàn)效率均可滿足需求的AEAD算法,構(gòu)建列控系統(tǒng)通信鏈路的端到端安全方案。以上4種候選方案的算法特性分析見表1,主要從結(jié)構(gòu)設(shè)計(jì)、安全性、效率和靈活部署等方面進(jìn)行對比。
表1 4種候選方案算法特性分析
從整體設(shè)計(jì)而言,OCB3和COLM均基于分組密碼構(gòu)造,Deoxys-Ⅱ底層則使用了可調(diào)分組碼Deoxys-BC,且為了增強(qiáng)安全性將AES的迭代輪數(shù)從10輪增加到了14輪(128位版本)。AEGIS-128是唯一的直接設(shè)計(jì)方案,為了提升算法性能,其底層采用了并行化的AES迭代結(jié)構(gòu),且將輪數(shù)壓縮到了5輪,因此實(shí)現(xiàn)了代價(jià)低、速度快,是4種方案中唯一能夠突破分組密碼工作模式效率上界的設(shè)計(jì),但其問題在于底層構(gòu)造缺乏合理的安全性假設(shè),導(dǎo)致安全性無法從理論上證明, 只能依靠各種密碼分析方法對其安全性進(jìn)行評估[26]。此外,根據(jù)2020年1月1日起實(shí)施的《中華人民共和國密碼法》的配套標(biāo)準(zhǔn)GB/T 39786—2021和GB/T 37092—2018的相關(guān)規(guī)定,目前核準(zhǔn)可以使用且完全公開的商用分組密碼算法只有SM4,因此,底層密碼模塊是否可更換也是必須要考慮的因素之一。
在安全性方面,CASEAR競賽對深度防御場景的首要要求就是需支持抗Nonce誤用(Misuse-Resistant AE,MRAE)[27]。在正常情況下,算法的Nonce會(huì)采用計(jì)數(shù)器或者時(shí)間戳等方式實(shí)現(xiàn),從而避免出現(xiàn)重復(fù),但在實(shí)際工程使用中,由于實(shí)現(xiàn)失誤或者使用錯(cuò)誤等各種原因,仍可能出現(xiàn)Nonce被重用的情況,一旦接收方允許接收Nonce重復(fù)的消息并給出解密輸出,將可能直接導(dǎo)致認(rèn)證模塊安全性被破壞,且對方案機(jī)密性也有一定影響。MRAE方案可以保證在Nonce重用情況下,仍可提供足夠的安全性。Deoxys-Ⅱ支持完整的MRAE特性,COLM僅支持在線抗Nonce誤用。此外,由于生日攻擊的存在,n比特消息摘要的認(rèn)證模式安全強(qiáng)度通常只能達(dá)到2n/2,這也被稱為認(rèn)證工作模式的生日界。Deoxys-Ⅱ算法在Nonce不復(fù)用情況下,可提供2n-1的認(rèn)證強(qiáng)度,而在Nonce復(fù)用場景下,其安全性將隨著Nonce復(fù)用次數(shù)的增多以線性方式降低,攻擊者需復(fù)用相同的Nonce約2n/2次認(rèn)證強(qiáng)度才會(huì)降低到生日界[28]。OCB3算法的底層可視為一個(gè)抗生日界的可調(diào)分組碼,因此在標(biāo)簽截?cái)嘁话氲那闆r下并不會(huì)造成方案認(rèn)證安全性的降低[29],而Deoxys-Ⅱ算法由于是支持超生日界安全特性的算法,因此標(biāo)簽截?cái)嘁话肭闆r下仍可提供接近264的認(rèn)證安全性。
在算法效率方面,最重要的特性是消息處理過程中調(diào)用分組密碼的比率。OCB3處理每個(gè)關(guān)聯(lián)數(shù)據(jù)和明文分組時(shí)均需調(diào)用1次分組密碼,此外在初始化階段的掩碼生成以及生成認(rèn)證標(biāo)簽時(shí),對密文校驗(yàn)和的加密處理再各自需要調(diào)用1次。Deoxys-Ⅱ和COLM為了支持抗Nonce誤用特性,處理每個(gè)明文分組時(shí)需要調(diào)用2次分組密碼,處理關(guān)聯(lián)數(shù)據(jù)分組時(shí)還需調(diào)用1次。COLM算法在掩碼、Ⅳ和認(rèn)證標(biāo)簽生成中分別需要調(diào)用1次分組密碼,而Deoxys-Ⅱ無需預(yù)先生成任何初始參數(shù),僅需在生成認(rèn)證標(biāo)簽時(shí)多調(diào)用1次,因此在部分短消息場景Deoxys-Ⅱ效率可能更具優(yōu)勢。除了消息處理過程的比率之外,還有一些適用于在不同場景下提升算法效率的特性。例如:支持加/解密分組間并行處理的算法,可在多核處理器平臺(tái)上采用并行處理以提高算法整體處理效率;支持在線AE的算法,可在獲取前i塊明文后即可輸出第i塊密文,而無需等待全部明文生成后才開始處理。Deoxys-Ⅱ算法由于需要首先完成Tag的計(jì)算,再將Tag作為調(diào)柄參數(shù)加入密文計(jì)算過程,因此是唯一不支持在線AE的算法。同理,支持未驗(yàn)證明文輸出(Release Unverified Plaintext, RUP)的算法可在尚未完成對所收到密文Tag的校驗(yàn)情況下開始解密并輸出明文,而不會(huì)影響方案的安全性,上述方案中僅有COLM依靠對中間標(biāo)簽的支持,通過對消息進(jìn)行分段校驗(yàn),從而在一定程度上達(dá)到RUP安全。在線AE和RUP特性適合在消息長度較長的場景中提升方案的性能。
綜合以上對比分析可以得出:
(1)AEGIS-128采用AES輪函數(shù)構(gòu)造,無法給出可證安全結(jié)論,且底層密碼模塊無法替換為國密算法,因此不符合密碼法的相關(guān)要求。
(2)Deoxys-Ⅱ和COLM為了支持MRAE,均需對消息分組處理兩遍,效率較低。COLM還額外支持在線AE和中間標(biāo)簽特性,但這兩個(gè)特性主要適用于發(fā)送較長消息的場景。
(3)OCB3每消息分組僅需調(diào)用1次分組密碼,且可支持加解密并行、在線AE和標(biāo)簽截?cái)嗟戎T多特性。雖然OCB3不支持MRAE特性,但正如GCM的設(shè)計(jì)者M(jìn)cGrew[30]所指出的,所有基于Nonce的AEAD算法,只要配合正確實(shí)現(xiàn)的Nonce生成機(jī)制,即可看做MRAE方案。在列控通信系統(tǒng)中,存在序列號、時(shí)間戳或EC計(jì)數(shù)器等多種不同Nonce來源,正確使用即可保證Nonce不會(huì)重復(fù)。
考慮到OCB3在效率上的突出優(yōu)勢,且其安全性足以滿足列控信號安全通信的需求,本文選擇基于OCB3構(gòu)建列控通信系統(tǒng)的端到端安全方案。
OCB全稱是偏移密碼本模式,由Phillip Rogaway等人所設(shè)計(jì),到目前為止共有3個(gè)版本:OCB1(2001)即IEEE 802.11i的可選模式WRAP;OCB2(2003)是ISO/IEC 19772∶2009收錄的標(biāo)準(zhǔn)之一,但由于近期被發(fā)現(xiàn)初始安全性證明存在錯(cuò)誤,隨后文獻(xiàn)[31]進(jìn)一步給出了實(shí)際攻擊,因此已被從標(biāo)準(zhǔn)中撤除;OCB3(2011)采用了與OCB1相同的查找表結(jié)構(gòu),且彌補(bǔ)了OCB1不支持AEAD的缺陷。需要指出的是,OCB1、OCB3安全性證明并未發(fā)現(xiàn)存在問題,而針對OCB2的攻擊也不適用于攻擊OCB1和OCB3。
根據(jù)《中華人民共和國密碼法》的相關(guān)規(guī)定,我國關(guān)鍵基礎(chǔ)設(shè)施上搭載的密碼模塊僅能選擇國密算法。SM4是目前唯一公開的國密通用分組算法。出口設(shè)備則可不受此限制,而選擇國際算法AES。因此本節(jié)將對OCB3-SM4、OCB3-AES與原ER-MAC方案進(jìn)行性能對比和測試,總結(jié)3種方案的結(jié)構(gòu)特點(diǎn)、安全特性和理論效率?;贠CB3的改進(jìn)方案與原ER-MAC方案的比較見表2。表2中,t為輸出摘要長度,σ為調(diào)用分組碼的總次數(shù),q為訪問預(yù)言機(jī)的次數(shù),l為輸入預(yù)言機(jī)的最長消息的分組數(shù)目,len為消息的比特長度。
表2 基于OCB3的改進(jìn)方案與原ER-MAC方案的比較
從表2比較結(jié)果可以得出:在安全性方面,AE方案可同時(shí)提供IND-CPA和INT-CTXT安全,安全性遠(yuǎn)高于單純的認(rèn)證方案;其次,即使將OCB3的輸出摘要截?cái)嗟脚cER-MAC一樣的64 bit,ER-MAC算法在認(rèn)證模塊的理論安全界仍遠(yuǎn)高于ER-MAC(假設(shè)每個(gè)消息的長度相等,即σ=ql,此時(shí)OCB的認(rèn)證模塊需要264次分組密碼調(diào)用,其認(rèn)證模塊才失去安全性,而對于ER-MAC則僅需232次調(diào)用)。在效率方面,受益于SM4和AES的128 bit分組長度,串行環(huán)境下OCB3-SM4和OCB3-AES調(diào)用分組密碼的次數(shù)約為ER-MAC的一半,而在并行環(huán)境下,支持全并行加解密的OCB3算法,其性能還將大幅提升。
由于在信號設(shè)備中,安全算法均基于軟件方式實(shí)現(xiàn),因此本節(jié)對基于SM4和AES分組密碼的OCB3算法,以及基于DES分組密碼的ER-MAC算法,在表3所示平臺(tái)上對軟件實(shí)現(xiàn)性能進(jìn)行對比測試。需要指出的是,為了保證結(jié)果準(zhǔn)確性,測試中只使用了處理器中的一個(gè)內(nèi)核,并未調(diào)用多核并行加速。
表3 測試環(huán)境參數(shù)
本文以RSSP-Ⅱ協(xié)議定義的數(shù)據(jù)包傳輸消息格式為參考,使用圖4所示的測試消息結(jié)構(gòu),其中關(guān)聯(lián)數(shù)據(jù)和Nonce的長度均固定為16 Bytes,應(yīng)用信息最短16 Bytes(AES和SM4的分組長度),最長不超過1000 Bytes(規(guī)范中報(bào)文長度的上限),每個(gè)長度隨機(jī)生成106組數(shù)據(jù),運(yùn)算完成后取平均值。
圖4 測試消息結(jié)構(gòu)
為了盡量避免不同算法優(yōu)化帶來的性能差異,上述3種分組密碼算法均調(diào)用國密GmSSL開源密碼工具箱[32]實(shí)現(xiàn)。由于GmSSL分別支持使用AES-NI指令集和AVX2指令集實(shí)現(xiàn)對AES和SM4算法的加速,因此測試數(shù)據(jù)共分為5組,不同長度消息的認(rèn)證加密和驗(yàn)證解密效率測試結(jié)果見圖5。
圖5 不同長度消息的認(rèn)證加密和驗(yàn)證解密效率測試結(jié)果
在未使用指令集情況下,由于SM4采用非平衡Feistel結(jié)構(gòu),其加解密僅是輪密鑰使用順序相反,因此加解密效率幾乎相同;AES算法則采用了SPN結(jié)構(gòu),解密時(shí)需要進(jìn)行逆運(yùn)算,效率稍低于加密算法。測試結(jié)果顯示,OCB3-AES的加密效率比OCB3-SM4稍高,而解密效率則稍低,綜合考慮端到端通信收發(fā)雙方,OCB3-AES和OCB3-SM4算法的效率幾乎相同;ER-MAC則受限于DES算法較差的軟件實(shí)現(xiàn)性能,導(dǎo)致方案整體效率僅有OCB3-AES和OCB3-SM4算法的1/3~1/2。
在對SM4算法開啟AVX2指令集加速情況下,GmSSL主要通過調(diào)用256位SIMD 寄存器,并行實(shí)現(xiàn)對8個(gè)32-bit 字的運(yùn)算操作[33],因此,在處理的消息分組數(shù)小于8個(gè)的情況下(112 Bytes明文+16 Bytes關(guān)聯(lián)數(shù)據(jù)),是否開啟AVX2指令集對OCB3-SM4算法的效率幾乎沒有影響。當(dāng)消息長度超過8個(gè)分組時(shí),開啟指令集可提升約1倍的性能。但需要指出的是,在列控通信場景中,傳輸報(bào)文的長度通常不會(huì)超過114 Bytes[4]。
相較于通用的AVX2指令集,AES-NI指令集則直接將AES的基本運(yùn)算固化為CPU指令,因此開啟指令集加速后,對OCB3-AES算法性能的提升巨大。在消息長度較短時(shí)(≤64 Bytes),OCB3-AES算法的效率可達(dá)到ER-MAC的15~20倍,而隨著消息長度的增加,OCB3-AES算法的效率甚至可達(dá)ER-MAC的30倍以上。
(1)本文提出了一種面向5G通信架構(gòu)的高鐵列控系統(tǒng)信號安全通信協(xié)議?;趪躍M9算法,實(shí)現(xiàn)基于標(biāo)識信息的認(rèn)證與密鑰協(xié)商機(jī)制,簡化了萬物互聯(lián)場景下的密鑰管理流程。通過對CASEAR競賽獲勝的4種認(rèn)證加密算法在列控通信場景的適用性評估,最終選擇以O(shè)CB3為核心,配合國密SM4算法,來實(shí)現(xiàn)信號設(shè)備間端到端通信的認(rèn)證加密保護(hù)。理論分析表明,OCB3-SM4算法可提供遠(yuǎn)高于原ER-MAC方案的理論安全性,能夠抵御針對列控系統(tǒng)信號安全通信鏈路的各類已知攻擊。
(2)在方案性能方面,由于SM4算法缺少主流處理器平臺(tái)提供的專用加速指令集支持,因此無法實(shí)現(xiàn)如使用了AES-NI指令集加速的OCB3-AES算法那樣巨大的性能提升。但現(xiàn)有測試結(jié)果表明,在單核處理時(shí),OCB3-SM4較ER-MAC有1~2倍的性能提升,而當(dāng)調(diào)用多核并行處理時(shí),受益于OCB3的全并行結(jié)構(gòu),方案性能還將進(jìn)一步成倍提升,可滿足未來不斷提高的車地通信速率要求。此外,目前主流國產(chǎn)CPU(如X86架構(gòu)的海光和兆芯、MIPS架構(gòu)的龍芯以及ARM架構(gòu)的飛騰等)均已提供了SM4算法的硬件加密引擎,其余平臺(tái)也可通過外掛SM4專用加密芯片來實(shí)現(xiàn)高速密碼應(yīng)用。