石艷紅 李聲濤
(中車青島四方機車車輛股份有限公司,山東青島 266111)
與城軌板塊、動車板塊相比,列車軟件升級方法和步驟存在明顯差別,受運維人員數(shù)量有限、認識不足等因素影響,升級工作始終未能得到有序開展。以往多采用人工車載軟件升級方式,具有耗時長、成本投入高、時效性差等缺陷,難以滿足智能化發(fā)展的新要求。對此,可采用遠程升級的方式,有效彌補傳統(tǒng)人工軟件升級的不足,使上述問題迎刃而解。要想充分發(fā)揮遠程升級的優(yōu)勢,重點在于保證數(shù)據(jù)傳輸安全。可見,軌道交通車載軟件遠程安全傳輸設計顯得十分關鍵。
由地面管理中心負責提供任務管理及安全傳輸?shù)裙δ埽_保列車軟件可得到高效且安全的遠程升級。為實現(xiàn)遠程升級目標,提出對1+1+1+N系統(tǒng)框架進行構建,具體內(nèi)容如:(1)地面管理中心可借助手動導入或數(shù)據(jù)接口方式,對供應商及列車數(shù)據(jù)進行采集,為上層業(yè)務的有序開展提供支持[1]。(2)充分利用列車所搭載網(wǎng)絡及服務器,為管理中心主機高效運行提供保證,同時為信息傳輸打造安全環(huán)境。(3)建設車地管理中心,確保軟件存儲及加密傳輸?shù)裙ぷ骺傻玫礁咝ч_展,根據(jù)軟件遠程升級所具有需求,為其提供相應的服務。在頂層對監(jiān)控中心進行建設,由其負責指標監(jiān)控和信息推送等工作,通過實時監(jiān)管的方式,保證軟件升級所存在問題能被及時發(fā)現(xiàn)和處理。
管理中心依托Nginx達到負載均衡目的,該技術可根據(jù)用戶請求的內(nèi)容及特點,將其分發(fā)給對應業(yè)務功能,并完成相應的操作。系統(tǒng)數(shù)據(jù)層創(chuàng)造性地引入了HDFS技術,用于操作大數(shù)據(jù),基于MySQL對結構化數(shù)據(jù)進行及時且完整的存儲,在存儲以及下載升級包或相關文件時,以SFTP為核心技術,用Redis進行緩存操作[2]。由TCP協(xié)議負責連接列車和管理中心,SFTP則被用來對升級包進行安全傳輸。車載軟件地面管理中心系統(tǒng)相關的技術要點如下:系統(tǒng)包括SaaS層、PaaS層、IaaS層與邊緣層。其中,在SaaS層中設計了車地域、運維域、分析域和挖掘域,通過上述區(qū)域設計,完成對數(shù)據(jù)資源的對比分析與交互應用;在PaaS層中,重點設計了應用開發(fā)服務、數(shù)據(jù)管理、工具組件,并做好數(shù)據(jù)存儲和離線處理,形成了系統(tǒng)數(shù)據(jù)庫與應用層數(shù)據(jù)庫,同時對分布式文件進行了傳輸。在IaaS層上,設計人員采取了大數(shù)據(jù)集群設計理念,充分利用了X86服務器與網(wǎng)絡系統(tǒng),完成對這一層面的優(yōu)化設計,以達到理想的控制效果。邊緣層則主要收集車地數(shù)據(jù)、對地面隧道情況進行分析,并做好生產(chǎn)運維數(shù)據(jù)采集。內(nèi)網(wǎng)接口主要與文件存儲服務器相連接;外網(wǎng)接口則主要與應用服務器相連,并且在內(nèi)網(wǎng)與外網(wǎng)之間設置了防火墻,確保雙向通信安全。
現(xiàn)有大數(shù)據(jù)平臺、地面管理中心均位于四方股份中心,由四方股份負責提供升級、解析軟件包的相關協(xié)議,確保數(shù)據(jù)能夠依托互聯(lián)網(wǎng)、SFTP協(xié)議得到及時且準確的傳輸。業(yè)主方可利用所獲取加密數(shù)據(jù)進行協(xié)議解析、軟件升級等。根據(jù)軌道交通車輛安全行駛要求,在車載軟件的設計中,應做好門數(shù)據(jù)緩沖區(qū)的設計。網(wǎng)關需要管理60個車門,要求在數(shù)據(jù)的采集上具有較高的時效性,并且能夠滿足同時并發(fā)處理。在具體設計環(huán)節(jié),相關人員考慮到短距離無線模塊寬帶性能較差,由此設計出數(shù)據(jù)緩存模塊,并完善車載網(wǎng)關多級緩存體系,緩存區(qū)包括串口緩存、單門數(shù)據(jù)緩存、多門數(shù)據(jù)緩存等多項功能。首先,數(shù)據(jù)被存儲在串口緩存區(qū),通過Linux內(nèi)核實現(xiàn)該部分功能;然后,根據(jù)門ID號將數(shù)據(jù)提取出來,并與單門數(shù)據(jù)緩存區(qū)對應,每個車門均與一個循環(huán)鏈表對應,并將數(shù)據(jù)存儲在鏈表終端;最后,車載軟件系統(tǒng)需要判斷數(shù)據(jù)傳輸是否完整,倘若數(shù)據(jù)完整,則提取鏈表中數(shù)據(jù),組合成完整的開門或關門數(shù)據(jù)包,以執(zhí)行相關具體操作。數(shù)據(jù)傳輸流程如圖1所示。

圖1 門數(shù)據(jù)緩存與傳輸示意圖
在數(shù)據(jù)傳輸中,要求以密鑰服務器所提供主密鑰為依據(jù),通過握手的方式對雙方身份進行確認,避免出現(xiàn)身份被冒充的情況。首先,在公私鑰進行分發(fā)期間,為確保身份驗證過程安全且結果可靠,需定期對公私鑰進行更新,同時借助主密鑰完成加密傳輸。其次,在順利通過身份驗證的情況下,地面服務器便可對密鑰進行分發(fā),隨著公私鑰的加入,傳輸過程所具有保密性可得到顯著提高。服務器可根據(jù)實際情況對加密算法具體種類加以確定,通過一次一密的模式,向接收端傳遞相關數(shù)據(jù),現(xiàn)階段,得到廣泛應用的對稱加密算法,主要有RC、AES還有DES。傳輸前后均要以實際情況為依據(jù)進行相應的拆包及組包,并對數(shù)據(jù)進行處理,確保數(shù)據(jù)一致。傳輸期間由相應對稱密鑰負責加密,出于確保數(shù)據(jù)傳輸完整的考慮,每次傳輸均應生成數(shù)據(jù)摘要并加以記錄,該環(huán)節(jié)所應用算法以SHA-256和SM3為主。最后,數(shù)據(jù)終止通常由接收端提出,同時利用對稱密鑰對握手過程所涉及數(shù)據(jù)進行加密處理,確保數(shù)據(jù)安全且具有實際意義。
該框架所采取加密模式為3層加密,由對稱密鑰、主密鑰和非對稱密鑰分別進行加密(見圖2)。主密鑰的常見形式為短信驗證碼,即:密鑰服務器向執(zhí)行人員、管理中心發(fā)送驗證碼。事實證明,對主密鑰加以使用,可使通信各方身份所具有準確性得到保證。另外,主密鑰還具有加密非對稱密鑰的功能,使密鑰處于加密傳輸?shù)臓顟B(tài)。密鑰服務器所生成并負責分發(fā)的非對稱密鑰,其功能是加密對稱密鑰,為對稱密鑰所具有安全性提供保障。

圖2 加密系統(tǒng)
密鑰服務器的主要功能是生成密鑰,并對密鑰進行分發(fā)及存儲,分別向各接收端發(fā)送不同的公私鑰。待接收端獲取對應公私鑰后,以公私鑰所搭載數(shù)據(jù)為依據(jù),聯(lián)合服務器完成驗證身份、傳輸對稱密鑰等操作。服務器負責對數(shù)據(jù)、接收端私鑰進行存儲,根據(jù)實際需求處理相關數(shù)據(jù),參考安全傳輸對報文格式所作出規(guī)定,對處理后數(shù)據(jù)進行組包并加密,確保數(shù)據(jù)能夠被安全且完整的傳輸至接收端。在獲得加密數(shù)據(jù)后,接收端先要對其進行解密,再對其準確性進行確認并完成后續(xù)的處理,確保數(shù)據(jù)價值可得到最大程度的實現(xiàn)。
(1)生成密鑰與算法。車地安全傳輸設計采用三種加密算法,即對稱秘鑰、非對稱秘鑰、消息摘要算法。生成密鑰的過程與生成算法密切相關,可供本項目使用的算法如:SM3摘要算法,RSA非對稱算法,AES對稱算法。其中,RSA非對稱秘鑰算法安全性高、應用范圍廣泛,缺陷在于秘鑰尺寸大,加解密速度慢,通常用于加密少量數(shù)據(jù);AES對稱加密算法為分組密碼,安全性高、運算速度快、資源消耗少、靈活性高;SM3消息摘要算法校驗結果為256位,適用于商用密碼應用中的數(shù)字簽名、驗證消息認證碼生成、驗證和隨機數(shù)的生成。由系統(tǒng)定期生成全新公私鑰并替換原有公私鑰,對稱密鑰通常在傳輸期間生成,其特點為一次一密,這樣設計可保證傳輸過程具有理想保密性,數(shù)據(jù)自然能夠獲得全方位的安全保護。
(2)分發(fā)密鑰。分發(fā)密鑰所描述內(nèi)容為生成并向使用者提供密鑰的各個環(huán)節(jié)。傳遞密鑰的關鍵是借助主密鑰為會話密鑰提供保護,確保密鑰傳遞安全,同時利用MAC白名單、手機白名單以及IP白名單,對主密鑰進行傳遞。除特殊情況外,公私鑰均需要由主密鑰進行加密護送,公私鑰的作用主要是護送對稱密鑰,確保其能夠得到安全傳遞。該系統(tǒng)可定期對公私鑰進行分發(fā),并借助短信驗證對主密鑰進行傳遞,考慮到公私鑰的應用頻率較高,需定期進行更換,而應用頻率較低的主密鑰,其更換周期通常較公私鑰更長。在分發(fā)公私鑰時,為保證分發(fā)過程安全,通常不會對公鑰進行公布,而是采取與私鑰相同的方式,即加密發(fā)送。對公私鑰進行更新的方法如:由服務器根據(jù)各接收端情況,分別生成相應的公私鑰并進行更新,根據(jù)公私鑰所搭載信息,對接收端、服務器身份進行驗證。
(3)交互系統(tǒng)設計。根據(jù)軌道交通運營安全需求,對車載系統(tǒng)進行了升級,以車載旅客資訊系統(tǒng)為例,目前實現(xiàn)了個性化信息切換,通過人工與自動語音相結合的方式,為旅客提供了視頻、滾動字幕、靜讓圖片。同時,升級完成后的系統(tǒng),也實現(xiàn)了信息交互功能,交互對象包括人員基本信息、車輛配屬、技術加工單、供應商信息等等,通過上述方式完成對車輛履歷的更新。更新后的系統(tǒng)也可與PHM系統(tǒng)和其他子系統(tǒng)進行集成,并通過預留接口調(diào)整交互需求。車載交互系統(tǒng)的創(chuàng)新設計,使得系統(tǒng)本身性能得以提升,系統(tǒng)訪問量明顯提高,可穩(wěn)定支持100個用戶以上同時在線,交互操作的響應時間縮短,其平均響應時間為2s,最長響應時間也未能超過5s,極大提高了車載系統(tǒng)服務穩(wěn)定性。
優(yōu)選安全系數(shù)較高的操作系統(tǒng),對系統(tǒng)版本標注化管理,詳細記錄各軟件版本;針對升級、補丁制定相關方案;定期掃描IT系統(tǒng)軟件,包括漏洞掃描、數(shù)據(jù)庫軟件安全、中間件安全等進行安全防護處理和檢查,確保漏洞及其他安全威脅可得到及時解決;由主機維護人員聯(lián)合系統(tǒng)運維人員,對主機進行管理,主機維護人員的任務主要是檢查硬件安全,系統(tǒng)運維人員負責檢查系統(tǒng)配置及數(shù)據(jù),并定期開展安全漏洞和安全掃描檢查工作。
對數(shù)據(jù)進行脫敏、備份/刪除處理,可確保數(shù)據(jù)始終處于安全狀態(tài)。一般來說,由脫敏模塊負責篩選數(shù)據(jù),以訪問者角色為依據(jù),對敏感數(shù)據(jù)進行相應的模糊處理。對數(shù)據(jù)進行備份/刪除的要點:(1)人工設定備份周期及方式。(2)引入部分備份、增量備份還有全備份3種備份模式。(3)可選擇脫機備份或是聯(lián)機備份。(4)支持人工備份以及自動備份。對于全部數(shù)據(jù)庫用戶口令禁止在程序內(nèi)寫死,用戶可根據(jù)自身需求靈活修改,全部口令均要符合密碼復雜度要求。
(1)以用戶角色為依據(jù),為其分配相應的操作權限,同時監(jiān)控其訪問過程并進行記錄。(2)集中管理賬號權限,引入用戶會話控制、強密碼管理模式,根據(jù)現(xiàn)有規(guī)則對驗證系統(tǒng)進行完善,具體包括:1)保證用戶識別是對用戶身份進行確認的唯一手段;2)對全部默認密碼進行修改;3)不得打印或是顯示具體密碼;4)連續(xù)3次輸入錯誤密碼,需禁用該用戶身份;5)要求用戶定期更換密碼,保證密碼長度在6個字符以上,同時包括大小寫字母、數(shù)字及標點符號。
本文以遠程升級車載軟件為切入點,從安全傳輸?shù)慕嵌瘸霭l(fā)對相應的升級平臺進行了構建,該系統(tǒng)強調(diào)以地面維護中心為依托,充分利用軟件服務器對數(shù)據(jù)協(xié)議進行可靠且安全的傳輸,在保證軟件得到遠程升級的前提下降低運維人員的工作難度并減少其工作量。