李春梅,柴 涌,汪小勇
(卡斯柯信號有限公司,上海 200071)
信號系統(tǒng)應用國產加密技術通常有以下幾種:在既有信號系統(tǒng)設備的基礎上,增加國密安全芯片等相關設備;使用國產商用密碼分組標準對稱(SM1)算法對通信數(shù)據(jù)提供機密性保護;使用國產商用密碼橢圓曲線公鑰(SM2)算法對通信數(shù)據(jù)提供可鑒別性保護和不可否認性保護;使用國產商用密碼雜湊(SM3)算法對通信數(shù)據(jù)提供完整性保護。
公鑰基礎設施(Public Key Infrastructure,PKI)也稱為公開密鑰基礎設施,按照國際電聯(lián)制定的X.509標準,PKI是一個包括硬件、軟件、人員、策略和規(guī)程的集合,用來實現(xiàn)基于公鑰密碼體制的密鑰和證書的產生、管理、存儲、分發(fā)和撤銷等功能。PKI是一種遵循標準、利用公鑰加密技術提供安全基礎平臺的技術和規(guī)范,能夠為網絡應用提供密碼服務的基本解決方案。PKI解決了大規(guī)模網絡中的公鑰分發(fā)和信任建立問題。
提供一種在應用國產加密技術的信號系統(tǒng)中,基于傳統(tǒng)PKI模型進行適應性改造并使用SM2算法完成身份驗證的方法,由此信號系統(tǒng)的通信數(shù)據(jù)得到可鑒別性保護和不可否認性保護,同時也為使用SM1、SM3算法對通信數(shù)據(jù)提供機密性保護和完整性保護打下了前提基礎。
PKI一般由認證權威機構(Certification Authority,CA)、注冊權威機構(Registration Authority,RA)、 證 書 /證 書 吊 銷 列 表(Certi fi cate Revocation List,CRL)庫和終端實體等部分組成,如圖1所示,主要元素說明如下。
圖1 PKI模型標準結構Fig.1 PKI model standard structure
1) CA
數(shù)字證書是各實體的身份證明,具有唯一性和權威性。為滿足這一要求,需要建立一個可信的機構,專門負責數(shù)字證書的產生、發(fā)放和管理,以保證數(shù)字證書真實可靠,這個機構就是認證權威機構CA,也稱數(shù)字證書管理中心,它作為PKI管理實體和服務的提供者,管理用戶數(shù)字證書的生成、發(fā)放、更新和撤銷等。CA是PKI的核心組成部分,PKI體系也往往被稱為PKI/CA體系。
2) RA
RA又稱證書注冊中心,是受CA委派,負責和終端實體交互的、接受數(shù)字證書申請并進行審核的機構,同時也是CA認證機構的延伸,有時也稱為用戶注冊系統(tǒng)。在邏輯上RA和CA是一個整體,主要負責證書注冊、審核以及發(fā)證。
3) 證書/CRL庫
證書/CRL庫主要用來發(fā)布、存儲數(shù)字證書和證書撤銷列表,供用戶查詢、獲取其他用戶的數(shù)字證書,為系統(tǒng)中的CRL所用。在信號系統(tǒng)中,鑒于證書/CRL庫的使用頻率不高,所需存儲空間也不大,故將證書/CRL庫和CA設置安裝在一個硬件服務器中,共同使用硬件設備。
4) 終端實體
終端實體(end entity)是只擁有公/私鑰對和相應公鑰證書的最終用戶,可以是人、設備、進程等。在信號系統(tǒng)中,終端實體指代分布于信號系統(tǒng)各子系統(tǒng)上的國密安全芯片設備。
國密安全設備與信號系統(tǒng)集成后的結構如圖2所示,應用層設備由車載子系統(tǒng)(CC),軌旁子系統(tǒng)(ZC/LC),聯(lián)鎖子系統(tǒng)(CI),列車監(jiān)控子系統(tǒng)(ATS),維護子系統(tǒng)(MSS)幾個子系統(tǒng)組成,見圖2中黃色部分,在應用層設備上增加國密安全芯片。通信層設備為通信子系統(tǒng)(DCS)設備,見圖2中綠色部分。本方案結合信號系統(tǒng)架構和PKI模型,增加CA服務器(含證書/CRL數(shù)據(jù)庫)和RA服務器,見圖2中紅色部分。
圖2 信號系統(tǒng)與國密安全設備集成結構Fig.2 Signal system and state security equipment integration structure
信號系統(tǒng)的身份認證包含以下幾個階段,其中1~4階段為線下人工操作,如圖3所示;5~6為線上軟件行為,如圖4、5所示。
圖3 線下證書操作Fig.3 Off-line certificate operation
圖4 會話密鑰協(xié)商階段的身份驗證Fig.4 Authentication during the session key negotiation phase
圖5 CRL查詢下載Fig.5 CRL query and download
1) 證書申請
信號系統(tǒng)通過固定的終端,使用特定的支持PKI的應用程序,向CA申請數(shù)字證書給指定的國密安全芯片。該終端與CA通過網絡連接,同時指定的國密安全芯片必須安裝在該終端上。
2) 證書生成
一旦信號系統(tǒng)申請了數(shù)字證書,CA就將根據(jù)其建立的認證策略驗證國密安全芯片設備信息。如果確定信息有效,則CA創(chuàng)建該證書。
3) 證書存儲
CA在生成證書后,通過網絡把證書發(fā)回給國密安全芯片設備。數(shù)字證書將被保存在國密安全芯片設備里。
4) 證書發(fā)布
CA除了將生成的數(shù)字證書發(fā)回給國密安全芯片設備外,還會將自身設備的數(shù)字證書發(fā)送到所有申請的國密安全芯片設備中。CA確保數(shù)字證書中信息的真實性,可以作為終端實體的身份證明。
5) 證書校驗
信號系統(tǒng)使用國密安全芯片設備時,不同的國密安全芯片設備在會話階段使用存儲在自身芯片中的CA根證書驗證對方身份證書,只有驗證通過后才會繼續(xù)進行會話,驗證未通過則經過嘗試(嘗試次數(shù)可以配置)后中斷會話密鑰協(xié)商。即會話密鑰協(xié)商必須以身份驗證為前提。
6) 證書廢止
國密安全芯片設備的數(shù)字證書不配置特定的到期時間,避免分布安裝在信號系統(tǒng)內的國密安全芯片設備需要頻繁拆解、集中更新、重新安裝的問題。如果需要撤銷某一特定證書,可以由CA將這一撤銷事實發(fā)布到CRL中,使所有國密安全芯片設備都可以查詢。CRL是由CA簽名的一組電子文檔,包括被撤銷證書的唯一標識(證書序列號)。出于減少信號系統(tǒng)網絡吞吐量和系統(tǒng)負荷考慮,信號系統(tǒng)內的國密安全芯片設備需要定期連接CA查詢CRL,在查詢同時下載CRL并保存到芯片內部,在下一個查詢周期前國密安全芯片將一直將此CRL視為最新并使用。
本文描述的信號系統(tǒng)與國密安全設備集成后,在設備啟動時首先進行一次CRL更新,如果更新成功,則以更新后的CRL為準;如果多次嘗試(嘗試次數(shù)可以配置)后仍然無法更新成功,則跳過本次CRL更新,以上一次更新成功的CRL為準,對于沒有任何成功更新經驗的設備來說,CRL為空。設備啟動后,每隔固定間隔(間隔時間可以配置)進行一次CRL更新,以保證CRL保持最新,其更新判斷與第一次更新相同,對于未更新成功的情況,信號系統(tǒng)設備會發(fā)出告警至維護子系統(tǒng),提醒運維人員注意查驗。詳細流程如圖6所示。
圖6 CRL更新流程圖Fig.6 CRL update flowchart
在會話階段,客戶端首先發(fā)起會話請求,請求消息中包含了客戶端的證書;服務端收到請求后,驗證客戶端證書(CRL、有效期、簽發(fā)者關系、以及簽名數(shù)據(jù))后,再通過客戶端的證書,服務端證書及服務端本地生成的隨機數(shù),根據(jù)SM2算法生成會話密鑰,然后對客戶端請求進行響應,并向客戶端發(fā)送服務端證書與隨機數(shù);同樣,客戶端收到回復后,驗證服務端證書(CRL、有效期、簽發(fā)者關系、以及簽名數(shù)據(jù))后,再根據(jù)客戶端的證書,服務端證書及服務端本地生成的隨機數(shù),通過SM2算法生成會話密鑰,并對服務端響應進行確認,向服務器端發(fā)送會話密鑰。詳細流程如圖7所示。
圖7 會話階段身份認證流程圖Fig.7 Authentication flow chart during session phase
本文提出一種在城市軌道交通信號系統(tǒng)中,基于傳統(tǒng)PKI模型進行改造并使用國產密碼算法進行身份驗證的方法。實際應用結果表明,與現(xiàn)有技術相比本方法具有以下優(yōu)點。
1) 針對采用國產加密技術的信號系統(tǒng),使用SM2算法進行身份驗證,使信號系統(tǒng)的通信數(shù)據(jù)得到可鑒別性保護和不可否認性保護;
2) 基于KPI模型改進,使身份驗證機制各階段的工作流程更好的適配于信號系統(tǒng);
3) 提供旁路功能,即使身份驗證機制出現(xiàn)問題,仍然能夠保證信號系統(tǒng)的運行不受影響,并提供告警功能,可以在最大程度上保證身份驗證功能的可維護性;
4) 保證信號系統(tǒng)既有功能和安全等級不受影響。