商用現(xiàn)貨 (COTS) 軟件很少經(jīng)過任何類型的認證過程,對功能、API [應(yīng)用程序編程接口] 合規(guī)性或安全性進行獨立驗證,主要例外是針對需要安全認證的應(yīng)用程序的軟件。部分問題在于大多數(shù)軟件標準沒有指定認證測試套件或正式的認證過程。然而,對于一些軍事嵌入式系統(tǒng)來說,這種情況開始發(fā)生變化,部分由航空界定義的過程驅(qū)動,但可以更廣泛地應(yīng)用于航空電子設(shè)備之外。
即使對于不需要認證即可實現(xiàn)法規(guī)遵從性的應(yīng)用程序,軟件認證也可能是有益的。最重要的好處可能是認證使 OEM、集成商和最終用戶確信軟件按預(yù)期運行。緊隨其后的可能是避免由于定義不明確的要求而導(dǎo)致的可交付成果爭議,因為獲得認證是一個非常明確的可交付成果。認證的其他好處包括通過使用獨立測試的產(chǎn)品來降低產(chǎn)品召回的可能性,并通過證明公司為使用認證產(chǎn)品付出了額外的努力來減輕法律責(zé)任。
API 一致性
一種類型的認證是符合標準的API[應(yīng)用程序編程接口],該標準包括驗證測試套件和獨立驗證方法。帶有廣泛使用的軟件測試套件的標準的一個例子是IEEE和The Open Group的POSIX認證,其中The Open Group是證書頒發(fā)機構(gòu)。POSIX 認證測試套件同時測試 API 一致性和功能測試。
具有一致性測試套件的標準的特定安全示例是ARINC 653,航空電子應(yīng)用軟件標準接口:ARINC 653第1部分定義了操作系統(tǒng)和應(yīng)用軟件之間的通用API,該API可以在同一硬件上以不同的保證級別托管多個應(yīng)用程序。ARINC 653 第 3 部分是一致性測試規(guī)范,其中包括應(yīng)用程序內(nèi)的實質(zhì)性功能測試以及 API 一致性測試。ARINC 653 Part 1 的最新版本(對于包含多核處理器的系統(tǒng)特別感興趣)包括軟件架構(gòu)需要確保具有多個線程的應(yīng)用程序可以跨多個處理器內(nèi)核并行運行的要求。
對于更廣闊的軍事嵌入式系統(tǒng)市場,F(xiàn)ACE [未來機載能力環(huán)境] 技術(shù)標準(圖 1)旨在使軍事計算操作更加強大、可互操作、便攜和安全。該標準使開發(fā)人員能夠通過通用操作環(huán)境創(chuàng)建和部署廣泛的應(yīng)用程序目錄,以用于整個軍事電子系統(tǒng)范圍。FACE 技術(shù)標準包括每個體系結(jié)構(gòu)段的一致性測試:操作系統(tǒng)、I/O 服務(wù)、特定于平臺的服務(wù)、傳輸服務(wù)和便攜式組件。
圖1|面對建筑細分市場。

盡管FACE技術(shù)標準是為機載系統(tǒng)設(shè)計的,但該軟件標準適用于所有環(huán)境。例如,操作系統(tǒng)段(OSS)包括通用配置文件的定義以及安全配置文件和安全配置文件。至少符合已定義的 POSIX 子集是每個 OSS 配置文件的要求;安全和安保配置文件還需要 ARINC 653 支持。其他人臉分段僅限于使用所選 OSS 配置文件中包含的 API。每個段中的每個配置文件都有一致性測試套件,認證過程包括由獨立驗證機構(gòu)進行的驗證測試,然后由證書頒發(fā)機構(gòu)審查測試和驗證結(jié)果。
安全保證認證
軟件安全保證通常被認為是需要高度安全性的特定行業(yè)。從一般實時系統(tǒng)的角度來看,軟件安全保證意味著系統(tǒng)以最高程度的確定性執(zhí)行其預(yù)期功能。軟件安全保證主要涉及增強的產(chǎn)品生命周期,以發(fā)現(xiàn)和消除設(shè)計錯誤和遺漏。所需的審查和記錄級別基于故障的預(yù)測影響,通常以傷害或生命損失來描述。
電子系統(tǒng)功能安全的國際基本標準是IEC 61508,適用于廣泛的行業(yè)。該標準由國際電工委員會頒布,定義了四個安全完整性等級(SIL),最嚴格的是SIL 1,連續(xù)或頻繁運行每小時發(fā)生危險故障的概率為《10-5。作為評估符合IEC 61508的一種手段,外部審核員可以使用安全相關(guān)系統(tǒng)合格評定(CASS)方法進行認可認證。特定行業(yè)的安全標準通常是IEC 61508的衍生產(chǎn)品,包括汽車軟件(ISO 26262),鐵路軟件(IEC 62279)和核電站(IEC 61513)。
軟件安全保障最嚴格的應(yīng)用之一是飛行安全,包括用于機載軟件的DO-178C / ED-12C和用于地面軟件的DO-278A / ED-109A,特別是通信,導(dǎo)航,監(jiān)視和空中交通管理(CNS / ATM)。軟件根據(jù)故障條件的影響開發(fā)和驗證到設(shè)計保證級別 (DAL),其中 DAL A“災(zāi)難性”最高,DAL D“次要”。沒有安全保證要求的應(yīng)用程序標記為 DAL E。作為美國的航空認證機構(gòu),聯(lián)邦航空管理局 (FAA) 根據(jù)系統(tǒng)提供商提供的設(shè)計、測試和驗證工件批準系統(tǒng)。
在高 DAL 下實現(xiàn)合規(guī)性的最大障礙可能是多核處理器中發(fā)生的共享資源爭用。這種爭用可能導(dǎo)致在一個處理器內(nèi)核上運行的應(yīng)用程序干擾在另一個內(nèi)核上運行的另一個應(yīng)用程序,從而對確定性、服務(wù)質(zhì)量以及最終的安全性產(chǎn)生負面影響。為了直接解決多核干擾問題,證書頒發(fā)機構(gòu)軟件團隊(CAST)在一份名為CAST-32A的立場文件中發(fā)布了多核系統(tǒng)的指南。CAST-32A包括10個目標,需要滿足這些目標才能解決使用多核處理器的問題。
減輕多核干擾也是在集成模塊化航空電子設(shè)備(IMA)中使用多核處理器的先決條件。如 DO-297 中所述,IMA 應(yīng)用程序的關(guān)鍵特征之一是應(yīng)用程序是可獨立修改的。如果沒有緩解多核干擾的通用解決方案,來自修改的應(yīng)用程序的干擾可能會導(dǎo)致現(xiàn)有應(yīng)用程序無法正確執(zhí)行,反之亦然。
安全認證備受關(guān)注
安全性已成為幾乎每個軍事電子系統(tǒng)中更重要的問題。盡管每個軍事程序都有自己的一套安全要求,但經(jīng)過標準保護配置文件認證的軟件具有巨大的優(yōu)勢。計算機硬件和軟件安全保證的國際標準是“信息技術(shù)安全評估通用標準”(ISO/IEC 15408)。評估可以針對不同的深度和嚴格性級別進行,稱為評估保證級別(圖 2),EAL1 是最不嚴格的,EAL7 是最嚴格的。
圖2|評估保證級別。

通用準則的框架非常通用,允許供應(yīng)商定義自己的評估安全要求。當根據(jù)政府定義的保護配置文件進行評估時,通用準則的主要價值就出現(xiàn)了。在美國,國家信息保障伙伴關(guān)系 (NIAP) 定義保護配置文件并管理通用標準評估和驗證方案 (CCEVS) 驗證機構(gòu)。當評估達到EAL5或更高時,國家安全局(NSA)參與評估。
安全級別不是直接來自評估保證級別,而是來自保護配置文件中的安全要求。只有當以非常苛刻的保護配置文件實現(xiàn)高 EAL 時,才能實現(xiàn)最佳安全性。
軟件的 NIAP 保護配置文件的一些示例包括
通用操作系統(tǒng)保護配置文件 (GPOS PP):此 PP 不是為特定的 EAL 設(shè)計的,而是主要基于 EAL2 要求。
需要高魯棒性 (SKPP) 的環(huán)境中分離內(nèi)核的保護配置文件:此保護配置文件專為 EAL6 和其他要求 (EAL6+) 而設(shè)計。
航空業(yè)現(xiàn)在也有安全指導(dǎo):作為DO-178C的補充,有一套高級機載安全規(guī)范,包括DO-326A,DO-355和DO-356。這些規(guī)范包含系統(tǒng)和飛機級別的安全目標。任何新的商用飛機系統(tǒng)都必須滿足DO-326A的要求。
DO-326A 沒有具體說明如何實現(xiàn)所需的安全目標;它僅提供有關(guān)識別威脅媒介并確保采取適當緩解措施的過程的指導(dǎo)。DO-326A 中的流程并行 DO-178C,例如要求認證安全方面計劃 (PSecAC) 類似于軟件方面認證計劃 (PSAC)。
通過 EAL5 或更高通用標準認證的軟件產(chǎn)品在滿足 DO-326A 方面領(lǐng)先一步,因為流程中存在顯著重疊。特別是SKPP,其安全要求和測試比DO-326A的要求要嚴格得多。
將一切整合在一起
認證過程可能既困難又耗時,特別是如果產(chǎn)品不是從一開始就針對正在測試的功能進行整體設(shè)計的。同時設(shè)計用于滿足 API 一致性、安全認證和安全認證所有要求的軟件產(chǎn)品的一個例子是 INTEGRITY-178 tuMP 實時操作系統(tǒng) (RTOS)。INTEGRITY-178 tuMP是第一款通過最新FACE技術(shù)標準3.0版認證的產(chǎn)品。該OSS認證是針對安全和安保配置文件的,其中包括POSIX和ARINC 653一致性測試。
INTEGRITY-178 tuMP 實時操作系統(tǒng)支持多核干擾抑制的通用解決方案,可幫助系統(tǒng)集成商滿足 CAST-32A 和 DO-297 的要求。該解決方案使用 DAL A 機制來監(jiān)視和強制實施從每個處理器核心到共享資源的帶寬分配。
在安全方面,INTEGRITY-178 操作系統(tǒng)通過了 NSA 定義的分離內(nèi)核保護配置文件 (SKPP) 的高健壯性認證,并且是唯一通過通用標準 EAL6 或更高版本認證的操作系統(tǒng)。INTEGRITY-178 tuMP 將該設(shè)計擴展到多核處理器,繼續(xù)滿足 SKPP 嚴格的功能和保證要求。這些安全和安保保證認證在實際客戶應(yīng)用中得到了驗證,在 30 多個不同的微處理器上提供了 80 多個 DO-178B/C A/EAL 6+ 級獨特的客戶認證包。
審核編輯:郭婷
-
嵌入式
+關(guān)注
關(guān)注
5199文章
20454瀏覽量
334229 -
接口
+關(guān)注
關(guān)注
33文章
9524瀏覽量
157060 -
應(yīng)用程序
+關(guān)注
關(guān)注
38文章
3344瀏覽量
60269
發(fā)布評論請先 登錄
什么是嵌入式應(yīng)用開發(fā)?
嵌入式系統(tǒng)軟件架構(gòu)通常劃分
CW32嵌入式軟件開發(fā)的必備知識
嵌入式和FPGA的區(qū)別
嵌入式系統(tǒng)的定義和應(yīng)用領(lǐng)域
嵌入式實時操作系統(tǒng)的特點
RT-Thread 2025嵌入式軟件大賽重磅來襲
認證用于軍事系統(tǒng)的嵌入式COTS軟件
評論