尚文利,邢祥宇,劉賢達(dá),尹 隆,高恩陽
(1.中國科學(xué)院沈陽自動(dòng)化研究所 網(wǎng)絡(luò)化控制系統(tǒng)重點(diǎn)實(shí)驗(yàn)室,遼寧 沈陽 110016;2.沈陽建筑大學(xué)信息與控制工程學(xué)院,遼寧 沈陽 110168;3.中國科學(xué)院機(jī)器人與智能制造創(chuàng)新研究院,遼寧 沈陽 110016;4.中國科學(xué)院大學(xué),北京 100049)
“全艦計(jì)算環(huán)境”(Total Ship Computing Environment,TSCE)是一個(gè)分布于全艦范圍的開放式系統(tǒng)環(huán)境,其可兼容戰(zhàn)術(shù)用途和非戰(zhàn)術(shù)用途,開放式系統(tǒng)使系統(tǒng)的重用不再困難,互操作性更高[1]。我軍第3 代信息系統(tǒng)發(fā)展缺少開放體系結(jié)構(gòu)設(shè)計(jì)理念,采用的集成方式為自頂向下,計(jì)算設(shè)備具有“專機(jī)專用”的特點(diǎn),靈活性和可擴(kuò)展性較TSCE 明顯不足[2]。
全艦計(jì)算環(huán)境為我軍建立集中式信息系統(tǒng)集成模式提供了很好的參考,但是同時(shí)全艦計(jì)算環(huán)境也面臨著諸多的挑戰(zhàn)[3-4]。全艦計(jì)算環(huán)境自提出之日起,其理論與實(shí)踐就備受關(guān)注,國內(nèi)學(xué)者也針對(duì)TSCE 進(jìn)行了詳盡的分析。董曉明[5-6]從體系結(jié)構(gòu)和系統(tǒng)集成框架的角度對(duì)TSCE 進(jìn)行了分析;金剛[4]從安全體系結(jié)構(gòu)角度進(jìn)行了研究;鄭志蓉[3]從TSCE 安全服務(wù)架構(gòu)角度進(jìn)行了分析;裴曉黎[2]著重分析了TSCE 對(duì)我軍信息系統(tǒng)集成的影響。
全艦計(jì)算環(huán)境下的安全環(huán)境構(gòu)建,保證全艦計(jì)算環(huán)境下的操作是安全的,但是全艦計(jì)算的可信賴性未知,這是一個(gè)關(guān)鍵的問題。目前的全艦計(jì)算環(huán)境的相關(guān)技術(shù)并沒有回答這一問題。
為了全面提高操作的可信賴性,提出“可信全艦計(jì)算環(huán)境”的概念?!翱尚湃炗?jì)算環(huán)境”就是在傳統(tǒng)“全艦計(jì)算環(huán)境”的基礎(chǔ)上,考慮可信計(jì)算[7-9]的相關(guān)手段,提高全艦計(jì)算環(huán)境的安全程度,從而構(gòu)建一個(gè)可信的艦船計(jì)算環(huán)境。
出于安全考慮,全艦計(jì)算環(huán)境的數(shù)據(jù)流考慮從2個(gè)方面建立:
1)從實(shí)時(shí)性角度考慮,根據(jù)實(shí)時(shí)性需求的不同,將實(shí)時(shí)應(yīng)用與非實(shí)時(shí)應(yīng)用進(jìn)行區(qū)分,從邏輯上建立2條總線,通過面向服務(wù)架構(gòu)提供不同協(xié)議之間的轉(zhuǎn)換,實(shí)現(xiàn)在全艦計(jì)算環(huán)境中的數(shù)據(jù)交換。
現(xiàn)場總線作為一種能夠減少可編程邏輯控制器(PLC)負(fù)載并減少響應(yīng)時(shí)間的通信技術(shù)得到廣泛使用。全艦計(jì)算環(huán)境的控制系統(tǒng)需要高實(shí)時(shí)性,實(shí)現(xiàn)高實(shí)時(shí)性的一個(gè)關(guān)鍵就是使用商用成品的現(xiàn)場總線技術(shù)作為實(shí)時(shí)數(shù)據(jù)總線[9]。企業(yè)服務(wù)總線(ESB)是大型分布式系統(tǒng)連通性最重要的架構(gòu)模式。ESB 在節(jié)點(diǎn)交互中是一種邏輯中介一樣的存在,主要的功能有協(xié)議轉(zhuǎn)換、 提供消息路由、 解析和處理數(shù)據(jù)和數(shù)據(jù)轉(zhuǎn)換[6]。
2)考慮數(shù)據(jù)流功能,可以將系統(tǒng)看做控制網(wǎng)絡(luò)和管理網(wǎng)絡(luò),控制網(wǎng)絡(luò)和管理網(wǎng)絡(luò)之間采用分布方式適配處理器(DAP)實(shí)現(xiàn)協(xié)議的轉(zhuǎn)換。
在控制網(wǎng)絡(luò)層,以智能化儀表和智能性傳感器為主,一般采用現(xiàn)場總線接口,能夠方便實(shí)現(xiàn)設(shè)備控制信號(hào)輸出和數(shù)據(jù)采集需求。通??刂凭W(wǎng)絡(luò)與管理網(wǎng)絡(luò)采用不同的協(xié)議、引入數(shù)據(jù)交換過程。數(shù)據(jù)交換通常采用中間層技術(shù)、動(dòng)態(tài)數(shù)據(jù)交換或加入轉(zhuǎn)換接口等[6]。
全艦計(jì)算環(huán)境基礎(chǔ)設(shè)施分為顯示層、核心層和適配層3 個(gè)層面。各種多功能的前端設(shè)備通過適配層連接到全艦計(jì)算環(huán)境的核心,適配層支持多種標(biāo)準(zhǔn)接口的物理和協(xié)議轉(zhuǎn)換,并且具備較強(qiáng)的接口擴(kuò)展能力。
適配處理識(shí)別是TSCE 基礎(chǔ)設(shè)施的重要組成部分,提供必要的數(shù)據(jù)轉(zhuǎn)換和處理功能。DAP 的設(shè)計(jì)遵循開放式體系結(jié)構(gòu),采用統(tǒng)一的技術(shù)標(biāo)準(zhǔn)規(guī)范,目前的主流方案是采用現(xiàn)成的商用處理器,應(yīng)用系統(tǒng)上采用實(shí)時(shí)操作系統(tǒng),具有數(shù)據(jù)協(xié)議轉(zhuǎn)換處理能力、標(biāo)準(zhǔn)的物理接口和其他輔助功能,為集成作戰(zhàn)系統(tǒng)和各分系統(tǒng)提供了統(tǒng)一的技術(shù)途徑,具有開放、通用和標(biāo)準(zhǔn)的特點(diǎn)[6]。
全艦計(jì)算環(huán)境的設(shè)計(jì)遵循4 個(gè)設(shè)計(jì)理念:架構(gòu)開放、需求主導(dǎo)、應(yīng)用透明和統(tǒng)籌管理。這4 種設(shè)計(jì)理念必須從頂層設(shè)計(jì)開始,為了實(shí)現(xiàn)更高程度的系統(tǒng)集成,全艦計(jì)算環(huán)境從功能集成、數(shù)據(jù)集成和物理集成方面進(jìn)行了頂層設(shè)計(jì)[10-11]。
功能集成是指運(yùn)用分析手段構(gòu)建和組織功能系統(tǒng)的過程。這些手段主要包括系統(tǒng)需求分析、組織和運(yùn)用模式分析、業(yè)務(wù)流程的確定,信息處理需求的明確。功能集成面向主要用戶的使用,其次是應(yīng)用的執(zhí)行,由3 個(gè)層次構(gòu)成,分別是構(gòu)件、服務(wù)和任務(wù),如圖1 所示。
圖1 全艦計(jì)算環(huán)境功能集成框架Fig.1 TSCE function integration framework
構(gòu)件、服務(wù)和任務(wù)構(gòu)成了一個(gè)遞進(jìn)關(guān)系,構(gòu)件作為服務(wù)的基礎(chǔ),服務(wù)作為任務(wù)的基礎(chǔ),互相依賴,但是耦合程度較未采用功能集成的應(yīng)用系統(tǒng)明顯降低。
數(shù)據(jù)集成主要解決數(shù)據(jù)的分布性和異構(gòu)性問題,這些數(shù)據(jù)具有不同的來源和不同的數(shù)據(jù)格式,需要進(jìn)行統(tǒng)一管理,支持應(yīng)用與服務(wù)、應(yīng)用與數(shù)據(jù)庫之間的數(shù)據(jù)統(tǒng)一訪問和描述,建立高效的數(shù)據(jù)共享機(jī)制,支持應(yīng)用和服務(wù)在安全權(quán)限內(nèi)快速高效的訪問數(shù)據(jù)??紤]應(yīng)用的實(shí)時(shí)性需求,從邏輯上建立2條數(shù)據(jù)總線,一是實(shí)時(shí)數(shù)據(jù)總線,二是企業(yè)服務(wù)總線,如圖2 所示。
圖2 全艦計(jì)算環(huán)境數(shù)據(jù)集成Fig.2 TSCE data integration
從長遠(yuǎn)發(fā)展趨勢(shì)來看,實(shí)時(shí)應(yīng)用和非實(shí)時(shí)應(yīng)用,控制網(wǎng)絡(luò)和管理網(wǎng)絡(luò)采用統(tǒng)一協(xié)議是不現(xiàn)實(shí)的,更加實(shí)際的是采用多種符合標(biāo)準(zhǔn)的數(shù)據(jù)協(xié)議。因此,橋接機(jī)制的使用成為必然,但由此帶來的數(shù)據(jù)驗(yàn)證、數(shù)據(jù)處理開銷、數(shù)據(jù)傳輸開銷、吞吐量與延遲等問題必須考慮[12-13]。
通過對(duì)全艦計(jì)算環(huán)境的技術(shù)架構(gòu)、數(shù)據(jù)需求、設(shè)備需求、系統(tǒng)集成等角度的分析,本文認(rèn)為全艦計(jì)算環(huán)境作為一種最先進(jìn)的艦船設(shè)計(jì)理念,仍然存在一些不足,這些問題主要是:
1)數(shù)據(jù)轉(zhuǎn)換過程中缺少對(duì)數(shù)據(jù)完整性、安全性和可靠性的校驗(yàn)。關(guān)鍵服務(wù)數(shù)據(jù)的完整、安全性和可靠性無法得到保障。
關(guān)鍵服務(wù)數(shù)據(jù)的可靠性決定了關(guān)鍵服務(wù)的功能是否能夠順利完成,關(guān)乎著關(guān)鍵服務(wù)的計(jì)算結(jié)果是否可信。增加安全手段雖然能夠保證數(shù)據(jù)的完整性、安全性和可靠性,在構(gòu)建時(shí)需要考慮延遲問題。
不同的數(shù)據(jù)分發(fā)技術(shù)采用的數(shù)據(jù)驗(yàn)證手段也存在著一定的差別,這些數(shù)據(jù)驗(yàn)證手段之間的互信程度如何值得探討。數(shù)據(jù)中心如何處理不同分發(fā)技術(shù)獲取的數(shù)據(jù),全艦計(jì)算環(huán)境并沒有給出安全可靠的解決方案。
2)設(shè)備的抗偽造能力不足,無法判斷新增或更換硬件的安全性和可靠性。適配處理設(shè)備接口的安全性沒有得到保護(hù)。
3 個(gè)層次對(duì)應(yīng)大量硬件設(shè)備,為了實(shí)現(xiàn)關(guān)鍵部件的自主可更換性,對(duì)設(shè)備的身份認(rèn)證需要進(jìn)行大量的設(shè)計(jì),但是全艦計(jì)算環(huán)境并沒有考慮這方面的設(shè)計(jì),設(shè)備的抗偽造能力不足,無法判斷新增或更換的硬件的安全性和可靠性。同時(shí)采用網(wǎng)關(guān)型適配器通常會(huì)預(yù)留一部分接口,這些接口的安全性并沒有得到保護(hù),這都是在未來的改進(jìn)中需要解決的問題。
3)缺少底層構(gòu)件的程序級(jí)訪問控制手段,導(dǎo)致一旦某個(gè)構(gòu)件受到修改,將會(huì)威脅上層服務(wù)的可用性。
目前的結(jié)構(gòu)存在著明顯的缺點(diǎn):底層構(gòu)件的重用程度高,一旦某一構(gòu)件受到攻擊,會(huì)造成大面積的影響。而全艦計(jì)算環(huán)境對(duì)底層構(gòu)件的程序級(jí)訪問控制并沒有進(jìn)行設(shè)計(jì),導(dǎo)致一旦某個(gè)構(gòu)件受到修改,其上層服務(wù)的安全性會(huì)受到嚴(yán)重影響。在完整性方面沒有完善的手段保障構(gòu)件的完整性需求,由完整性帶來的影響會(huì)反映在程序的可用性上。艦船作為一個(gè)作戰(zhàn)單位其可靠性十分關(guān)鍵,而全艦計(jì)算環(huán)境本身并沒有涉及可靠性的提升手段。對(duì)底層構(gòu)件的保護(hù)能夠有效地控制攻擊程序?qū)ο到y(tǒng)重要文件的修改,保護(hù)文件的安全,提高系統(tǒng)的安全性。
這些問題正是可信計(jì)算要研究的主要問題??尚庞?jì)算作為一種新型的安全手段,在數(shù)據(jù)的完整性、安全性和可靠性方面較傳統(tǒng)安全手段有著巨大的優(yōu)勢(shì)。
為了彌補(bǔ)全艦計(jì)算環(huán)境的不足,提高全艦計(jì)算環(huán)境的安全性,提出可信全艦計(jì)算環(huán)境的概念,可信全艦計(jì)算環(huán)境是指采用可信計(jì)算的手段,提高全艦計(jì)算環(huán)境的可信性,構(gòu)建安全可信的全艦計(jì)算環(huán)境。
TCG 用實(shí)體行為的預(yù)期性來定義“可信”:如果一個(gè)實(shí)體的行為是以預(yù)期的方式符合預(yù)期的目標(biāo),則該實(shí)體可信[14]。張煥國[15]認(rèn)為可信計(jì)算系統(tǒng)是能夠提供系統(tǒng)的可靠性、可用性、安全性的計(jì)算機(jī)系統(tǒng),通俗地稱為:可信≈可靠+安全。
構(gòu)建可信全艦計(jì)算環(huán)境從可靠和安全2 個(gè)角度出發(fā),因此,本文提出采用可信計(jì)算對(duì)全艦計(jì)算環(huán)境進(jìn)行安全增強(qiáng)主要的手段有以下3 種:
1)針對(duì)數(shù)據(jù)轉(zhuǎn)換過程中缺少對(duì)數(shù)據(jù)完整性、安全性和可靠性的校驗(yàn)問題,一方面,通過完整性度量確保數(shù)據(jù)采集設(shè)備和數(shù)據(jù)轉(zhuǎn)換服務(wù)的可信性,保證數(shù)據(jù)獲取設(shè)備的可信,并保證轉(zhuǎn)換服務(wù)可信,在一定程度上就可以保障數(shù)據(jù)的可靠性;另一方面,建立經(jīng)驗(yàn)數(shù)據(jù)庫,通過與經(jīng)驗(yàn)數(shù)據(jù)庫的比對(duì),判斷數(shù)據(jù)是否符合預(yù)期要求。
2)針對(duì)設(shè)備的抗偽造能力不足,無法判斷新增或更換的硬件的安全性和可靠性問題,采用基于設(shè)備特征的完整性校驗(yàn)方法,對(duì)全艦計(jì)算環(huán)境中設(shè)備進(jìn)行安全增強(qiáng)??尚庞?jì)算的完整性校驗(yàn)方法通常都存在著一個(gè)弊端,就是面對(duì)設(shè)備增加需求時(shí),修改校驗(yàn)過程繁瑣。而基于設(shè)備不變屬性的完整性校驗(yàn)方法能夠一定程度上緩解這一問題。
3)針對(duì)全艦計(jì)算環(huán)境缺少底層構(gòu)件的程序級(jí)訪問控制問題,采用可信計(jì)算組織(TCG)可信軟件棧構(gòu)建新的領(lǐng)域應(yīng)用設(shè)計(jì)架構(gòu),增加用戶服務(wù)可信引擎,和擴(kuò)展支持模塊,對(duì)底層構(gòu)件的訪問進(jìn)行控制。
采用2 種策略對(duì)數(shù)據(jù)進(jìn)行安全加固,如圖3 所示。
圖3 關(guān)鍵服務(wù)數(shù)據(jù)校驗(yàn)方法Fig.3 Key service data verification method
1)確保數(shù)據(jù)采集設(shè)備和DAP 的完整性。通過保證數(shù)據(jù)采集設(shè)備,數(shù)據(jù)傳輸和數(shù)據(jù)轉(zhuǎn)換各環(huán)節(jié)的硬件和軟件完整性,確保數(shù)據(jù)采集的可信性[16]。
2)設(shè)置經(jīng)驗(yàn)數(shù)據(jù)庫。收集既往數(shù)據(jù)采集設(shè)備數(shù)據(jù),建立經(jīng)驗(yàn)數(shù)據(jù)庫,通過經(jīng)驗(yàn)數(shù)據(jù)庫建立異常檢測模型。異常檢測的內(nèi)容可以包括數(shù)據(jù)范圍檢測、趨勢(shì)偏離等。異常檢測還可以用來發(fā)現(xiàn)數(shù)據(jù)缺失,保證數(shù)據(jù)的完整性,一旦發(fā)現(xiàn)異常值,應(yīng)自動(dòng)進(jìn)入異常處理機(jī)制,確定錯(cuò)誤源頭。
設(shè)備不變屬性的完整性校驗(yàn)方法,通過基于設(shè)備不變屬性的完整性校驗(yàn)方法加強(qiáng)設(shè)備的抗偽造能力,在節(jié)點(diǎn)中添加的設(shè)備都將受到嚴(yán)格的完整性校驗(yàn),出現(xiàn)設(shè)備文件修改、不可信設(shè)備時(shí)不能通過完整性校驗(yàn),系統(tǒng)將不允許現(xiàn)場設(shè)備的使用,從而保護(hù)的全艦計(jì)算環(huán)境的設(shè)備安全。
基于設(shè)備不變屬性的完整性校驗(yàn)方法的實(shí)質(zhì)是尋找一種能夠表征設(shè)備完整性狀態(tài)的不變屬性[17]。固有屬性是設(shè)備的本身身份標(biāo)識(shí),是設(shè)備最基本的完整性表征;賦予屬性是為防止固有屬性被拷貝,給予設(shè)備節(jié)點(diǎn)秘鑰等不變屬性,是設(shè)備完整性增強(qiáng)的表征;派生屬性是采用屬性融合算法對(duì)固有屬性與賦予屬性進(jìn)行融合壓縮,是設(shè)備完整性具有實(shí)用性、可操作性的屬性表征,如圖4 所示。
圖4 完整性表征圖Fig.4 Integrity representation
固有屬性是設(shè)備本身身份標(biāo)識(shí),其屬性值在設(shè)備工作期間保持不變,偽造和替換都會(huì)使屬性發(fā)生變化。賦予屬性是為了防止固有屬性被克隆,給予設(shè)備節(jié)點(diǎn)秘鑰等不變屬性,節(jié)點(diǎn)秘鑰由TPM 進(jìn)行控制,采用TPM 控制秘鑰具有更加安全的特點(diǎn),受TPM 控制的秘鑰泄露可能性極低,從而保證節(jié)點(diǎn)秘鑰的安全[18]。對(duì)于不同的設(shè)備固有屬性、賦予屬性和屬性融合算法,將產(chǎn)生不同的派生屬性,在TPM 的使用中,常采用SHA-1 算法進(jìn)行屬性融合。
可信軟件棧(TSS)能夠?qū)崿F(xiàn)2 個(gè)方面的設(shè)計(jì),首先能夠控制底層構(gòu)件的完整性,其次通過領(lǐng)域應(yīng)用設(shè)計(jì)框架,能夠進(jìn)行構(gòu)件訪問的控制。TSS 是一種為上層的可信計(jì)算應(yīng)用提供訪問TPM 接口的軟件系統(tǒng),起到了連接硬件與應(yīng)用的重要作用[19]。TSS 起到了連接應(yīng)用程序和TPM 的功能,應(yīng)用程序訪問TPM 的操作經(jīng)由TSS 轉(zhuǎn)發(fā),再由TSS 直接管理TPM。
在整個(gè)可信計(jì)算平臺(tái)體系中,可信軟件棧(TSS)是必不可少的系統(tǒng)組件[20]。TSCE 的軟件可以分為領(lǐng)域應(yīng)用和基礎(chǔ)設(shè)施,基礎(chǔ)設(shè)計(jì)采用商用現(xiàn)成產(chǎn)品,目前主流軟件產(chǎn)品均已經(jīng)支持TCG 的TSS,而領(lǐng)域應(yīng)用通常專門為艦船定制,這些產(chǎn)品具有一定的特殊性。為此,提出如圖5 所示的基于TSS 的領(lǐng)域應(yīng)用設(shè)計(jì)架構(gòu),從底層進(jìn)行TSS 的設(shè)計(jì),從而保證底層構(gòu)件的訪問受到控制。
系統(tǒng)底層主要由TPM 硬件構(gòu)成,負(fù)責(zé)提供基本的TPM 組件服務(wù)。TSS 是TPM 的的支撐軟件,TSS 通常采用通用版本,但是同樣支持根據(jù)特殊情況進(jìn)行重新編寫,提供基于TPM 的應(yīng)用開發(fā)平臺(tái)[21]。
圖5 基于TSS 的領(lǐng)域應(yīng)用設(shè)計(jì)架構(gòu)Fig.5 TSS-based domain application design architecture
擴(kuò)展支持模塊實(shí)現(xiàn)對(duì)底層功能的封裝,避免更高層的軟件直接調(diào)用底層核心代碼,降低代碼的耦合性。同時(shí),對(duì)擴(kuò)展支持模塊的代碼進(jìn)行更加細(xì)致的審核,使代碼的可用性更高。擴(kuò)展支持模塊是用戶軟件與TPM 之間的中轉(zhuǎn)站。
用戶服務(wù)可信引擎起到訪問控制的目的。用戶服務(wù)引擎利用TPM 中的秘鑰生成、加/解密算法等部件實(shí)現(xiàn)判斷可訪問性,如果出現(xiàn)未被許可服務(wù),用戶服務(wù)可信引擎可以對(duì)服務(wù)提出拒絕。
全艦計(jì)算環(huán)境作為一種先進(jìn)的艦船設(shè)計(jì)理念,對(duì)海軍建設(shè)有著積極的意義。本文通過分析現(xiàn)有全艦計(jì)算環(huán)境的安全威脅,全面地認(rèn)識(shí)全艦計(jì)算環(huán)境的安全風(fēng)險(xiǎn),針對(duì)這些缺點(diǎn),提出了基于可信計(jì)算方法的改進(jìn)方法,為進(jìn)一步建設(shè)現(xiàn)代化艦船系統(tǒng)提供新思路。