0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

认证用于军事系统的嵌入式COTS软件

星星科技指导员 来源:嵌入式计算设计 作者:RICH JAENICKE 2022-11-09 15:27 次阅读

商用现货 (COTS) 软件很少经过任何类型的认证过程,对功能、API [应用程序编程接口] 合规性或安全性进行独立验证,主要例外是针对需要安全认证的应用程序的软件。部分问题在于大多数软件标准没有指定认证测试套件或正式的认证过程。然而,对于一些军事嵌入式系统来说,这种情况开始发生变化,部分由航空界定义的过程驱动,但可以更广泛地应用于航空电子设备之外。

即使对于不需要认证即可实现法规遵从性的应用程序,软件认证也可能是有益的。最重要的好处可能是认证使 OEM、集成商和最终用户确信软件按预期运行。紧随其后的可能是避免由于定义不明确的要求而导致的可交付成果争议,因为获得认证是一个非常明确的可交付成果。认证的其他好处包括通过使用独立测试的产品来降低产品召回的可能性,并通过证明公司为使用认证产品付出了额外的努力来减轻法律责任。

API 一致性

一种类型的认证是符合标准的API[应用程序编程接口],该标准包括验证测试套件和独立验证方法。带有广泛使用的软件测试套件的标准的一个例子是IEEE和The Open Group的POSIX认证,其中The Open Group是证书颁发机构。POSIX 认证测试套件同时测试 API 一致性和功能测试。

具有一致性测试套件的标准的特定安全示例是ARINC 653,航空电子应用软件标准接口:ARINC 653第1部分定义了操作系统和应用软件之间的通用API,该API可以在同一硬件上以不同的保证级别托管多个应用程序。ARINC 653 第 3 部分是一致性测试规范,其中包括应用程序内的实质性功能测试以及 API 一致性测试。ARINC 653 Part 1 的最新版本(对于包含多核处理器的系统特别感兴趣)包括软件架构需要确保具有多个线程的应用程序可以跨多个处理器内核并行运行的要求。

对于更广阔的军事嵌入式系统市场,FACE [未来机载能力环境] 技术标准(图 1)旨在使军事计算操作更加强大、可互操作、便携和安全。该标准使开发人员能够通过通用操作环境创建和部署广泛的应用程序目录,以用于整个军事电子系统范围。FACE 技术标准包括每个体系结构段的一致性测试:操作系统、I/O 服务、特定于平台的服务、传输服务和便携式组件。

图1|面对建筑细分市场。

450-5e6a6bb15b92a-Green_Hills-Figure_1.jpg.jpg

尽管FACE技术标准是为机载系统设计的,但该软件标准适用于所有环境。例如,操作系统段(OSS)包括通用配置文件的定义以及安全配置文件和安全配置文件。至少符合已定义的 POSIX 子集是每个 OSS 配置文件的要求;安全和安保配置文件还需要 ARINC 653 支持。其他人脸分段仅限于使用所选 OSS 配置文件中包含的 API。每个段中的每个配置文件都有一致性测试套件,认证过程包括由独立验证机构进行的验证测试,然后由证书颁发机构审查测试和验证结果。

安全保证认证

软件安全保证通常被认为是需要高度安全性的特定行业。从一般实时系统的角度来看,软件安全保证意味着系统以最高程度的确定性执行其预期功能。软件安全保证主要涉及增强的产品生命周期,以发现和消除设计错误和遗漏。所需的审查和记录级别基于故障的预测影响,通常以伤害或生命损失来描述。

电子系统功能安全的国际基本标准是IEC 61508,适用于广泛的行业。该标准由国际电工委员会颁布,定义了四个安全完整性等级(SIL),最严格的是SIL 1,连续或频繁运行每小时发生危险故障的概率为《10-5。作为评估符合IEC 61508的一种手段,外部审核员可以使用安全相关系统合格评定(CASS)方法进行认可认证。特定行业的安全标准通常是IEC 61508的衍生产品,包括汽车软件(ISO 26262),铁路软件(IEC 62279)和核电站(IEC 61513)。

软件安全保障最严格的应用之一是飞行安全,包括用于机载软件的DO-178C / ED-12C和用于地面软件的DO-278A / ED-109A,特别是通信,导航,监视和空中交通管理(CNS / ATM)。软件根据故障条件的影响开发和验证到设计保证级别 (DAL),其中 DAL A“灾难性”最高,DAL D“次要”。没有安全保证要求的应用程序标记为 DAL E。作为美国的航空认证机构,联邦航空管理局 (FAA) 根据系统提供商提供的设计、测试和验证工件批准系统。

在高 DAL 下实现合规性的最大障碍可能是多核处理器中发生的共享资源争用。这种争用可能导致在一个处理器内核上运行的应用程序干扰在另一个内核上运行的另一个应用程序,从而对确定性、服务质量以及最终的安全性产生负面影响。为了直接解决多核干扰问题,证书颁发机构软件团队(CAST)在一份名为CAST-32A的立场文件中发布了多核系统的指南。CAST-32A包括10个目标,需要满足这些目标才能解决使用多核处理器的问题。

减轻多核干扰也是在集成模块化航空电子设备(IMA)中使用多核处理器的先决条件。如 DO-297 中所述,IMA 应用程序的关键特征之一是应用程序是可独立修改的。如果没有缓解多核干扰的通用解决方案,来自修改的应用程序的干扰可能会导致现有应用程序无法正确执行,反之亦然。

安全认证备受关注

安全性已成为几乎每个军事电子系统中更重要的问题。尽管每个军事程序都有自己的一套安全要求,但经过标准保护配置文件认证的软件具有巨大的优势。计算机硬件和软件安全保证的国际标准是“信息技术安全评估通用标准”(ISO/IEC 15408)。评估可以针对不同的深度和严格性级别进行,称为评估保证级别(图 2),EAL1 是最不严格的,EAL7 是最严格的。

图2|评估保证级别。

450-5e6a6c2370e08-Green_Hills-Figure_2_REV.jpg.jpg

通用准则的框架非常通用,允许供应商定义自己的评估安全要求。当根据政府定义的保护配置文件进行评估时,通用准则的主要价值就出现了。在美国,国家信息保障伙伴关系 (NIAP) 定义保护配置文件并管理通用标准评估和验证方案 (CCEVS) 验证机构。当评估达到EAL5或更高时,国家安全局(NSA)参与评估。

安全级别不是直接来自评估保证级别,而是来自保护配置文件中的安全要求。只有当以非常苛刻的保护配置文件实现高 EAL 时,才能实现最佳安全性。

软件的 NIAP 保护配置文件的一些示例包括

通用操作系统保护配置文件 (GPOS PP):此 PP 不是为特定的 EAL 设计的,而是主要基于 EAL2 要求。

需要高鲁棒性 (SKPP) 的环境中分离内核的保护配置文件:此保护配置文件专为 EAL6 和其他要求 (EAL6+) 而设计。

航空业现在也有安全指导:作为DO-178C的补充,有一套高级机载安全规范,包括DO-326A,DO-355和DO-356。这些规范包含系统和飞机级别的安全目标。任何新的商用飞机系统都必须满足DO-326A的要求。

DO-326A 没有具体说明如何实现所需的安全目标;它仅提供有关识别威胁媒介并确保采取适当缓解措施的过程的指导。DO-326A 中的流程并行 DO-178C,例如要求认证安全方面计划 (PSecAC) 类似于软件方面认证计划 (PSAC)。

通过 EAL5 或更高通用标准认证的软件产品在满足 DO-326A 方面领先一步,因为流程中存在显著重叠。特别是SKPP,其安全要求和测试比DO-326A的要求要严格得多。

将一切整合在一起

认证过程可能既困难又耗时,特别是如果产品不是从一开始就针对正在测试的功能进行整体设计的。同时设计用于满足 API 一致性、安全认证和安全认证所有要求的软件产品的一个例子是 INTEGRITY-178 tuMP 实时操作系统 (RTOS)。INTEGRITY-178 tuMP是第一款通过最新FACE技术标准3.0版认证的产品。该OSS认证是针对安全和安保配置文件的,其中包括POSIX和ARINC 653一致性测试。

INTEGRITY-178 tuMP 实时操作系统支持多核干扰抑制的通用解决方案,可帮助系统集成商满足 CAST-32A 和 DO-297 的要求。该解决方案使用 DAL A 机制来监视和强制实施从每个处理器核心到共享资源的带宽分配。

在安全方面,INTEGRITY-178 操作系统通过了 NSA 定义的分离内核保护配置文件 (SKPP) 的高健壮性认证,并且是唯一通过通用标准 EAL6 或更高版本认证的操作系统。INTEGRITY-178 tuMP 将该设计扩展到多核处理器,继续满足 SKPP 严格的功能和保证要求。这些安全和安保保证认证在实际客户应用中得到了验证,在 30 多个不同的微处理器上提供了 80 多个 DO-178B/C A/EAL 6+ 级独特的客户认证包。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5056

    文章

    18955

    浏览量

    301663
  • 接口
    +关注

    关注

    33

    文章

    8435

    浏览量

    150687
  • 应用程序
    +关注

    关注

    37

    文章

    3232

    浏览量

    57535
收藏 人收藏

    评论

    相关推荐

    嵌入式系统的硬件架构

    特定的任务,并嵌入到更大的设备或系统中,以实现对宿主对象的控制、监测或辅助等功能。嵌入式系统广泛应用于工业控制、消费电子、汽车电子、医疗设备
    的头像 发表于 09-29 16:29 280次阅读

    嵌入式软件开发与AI整合

    嵌入式软件开发与AI整合是当前技术发展的重要趋势之一。随着人工智能技术的快速发展,嵌入式系统越来越多地集成了AI算法,以实现更复杂的智能功能。以下是关于
    的头像 发表于 07-31 09:25 621次阅读
    <b class='flag-5'>嵌入式</b><b class='flag-5'>软件</b>开发与AI整合

    嵌入式系统怎么学?

    系统设计与调试:需要掌握嵌入式系统的设计方法和调试技术,包括硬件设计、软件设计、电路调试等,以确保系统的稳定性和可靠性。 随着技术的不断进
    发表于 07-02 10:10

    嵌入式系统软硬件基础知识大全

    嵌入式系统是现代科技发展的一个重要分支,广泛应用于工业控制、消费电子、医疗设备、汽车电子等领域。本文试图全面解析嵌入式系统的软基础知识,以期
    发表于 05-09 14:12

    嵌入式系统的前世今生

    一、初始阶段(1960-1970)1960年代末:嵌入式系统的概念开始形成,最初用于专业的军事和航天应用,例如用于导弹控制的计算机
    的头像 发表于 04-12 08:11 1412次阅读
    <b class='flag-5'>嵌入式</b><b class='flag-5'>系统</b>的前世今生

    嵌入式fpga是什么意思

    嵌入式FPGA是指将FPGA技术集成到嵌入式系统中的一种解决方案。嵌入式系统是一种为特定应用而设计的计算机
    的头像 发表于 03-15 14:29 1160次阅读

    嵌入式软件设计的原则分享

    嵌入式软件开发如果具有更好的阅读性、扩展性以及维护性,就需要考虑很多因素。今天给大家分享几个嵌入式软件设计的原则。
    发表于 02-25 10:54 600次阅读
    <b class='flag-5'>嵌入式</b><b class='flag-5'>软件</b>设计的原则分享

    嵌入式系统发展前景?

    的发展前景也十分广阔。 随着物联网和智能设备的快速发展,嵌入式系统将更为普遍地应用于各种设备和设施,包括家用电器、医疗设备、交通工具等。这些设备将通过嵌入式
    发表于 02-22 14:09

    嵌入式软件开发应该掌握哪些知识?

    嵌入式软件开发应该掌握哪些知识? 一、 什么是嵌入式软件嵌入式软件通常是指
    发表于 02-19 11:23

    嵌入式学习步骤

    嵌入式行业是一个涉及广泛领域的行业,嵌入式、物联网、人工智能、智能与科学、电子信息工程、通信工程、自动化工程、测控、计算机科学等专业在嵌入式系统中使得
    发表于 02-02 15:24

    嵌入式软件开发和软件开发的区别

    嵌入式软件开发和软件开发是两个不同的概念,它们在一些关键方面有着明显的区别。嵌入式软件开发是指开发嵌入
    的头像 发表于 01-22 15:27 2114次阅读

    啥是嵌入式嵌入式都有啥?薪资如何?前景如何

    嵌入式系统(Embedded Systems)是一种特殊类型的计算机系统,被嵌入到其他设备或系统中,用于
    的头像 发表于 01-17 16:39 704次阅读
    啥是<b class='flag-5'>嵌入式</b>?<b class='flag-5'>嵌入式</b>都有啥?薪资如何?前景如何

    什么是嵌入式系统嵌入式系统的具体应用

    嵌入式,一般是指嵌入式系统用于控制、监视或者辅助操作机器和设备的装置。
    的头像 发表于 12-20 13:33 2326次阅读

    嵌入式硬件和软件哪个好?

    嵌入式硬件和软件哪个好? 嵌入式软硬件工程师哪个更有前途呢?一起来看看。 嵌入式是分为软硬件工程师的,首先我们先来看看嵌入式硬件工程师吧!
    发表于 12-05 15:17

    嵌入式软件的开发流程

    电子发烧友网站提供《嵌入式软件的开发流程.doc》资料免费下载
    发表于 11-17 14:39 0次下载
    <b class='flag-5'>嵌入式</b><b class='flag-5'>软件</b>的开发流程