CN109145607A - 一种卫星安全关键软件系统性验证方法 - Google Patents

一种卫星安全关键软件系统性验证方法 Download PDF

Info

Publication number
CN109145607A
CN109145607A CN201810924465.4A CN201810924465A CN109145607A CN 109145607 A CN109145607 A CN 109145607A CN 201810924465 A CN201810924465 A CN 201810924465A CN 109145607 A CN109145607 A CN 109145607A
Authority
CN
China
Prior art keywords
critical software
security
software
security critical
constraint
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810924465.4A
Other languages
English (en)
Other versions
CN109145607B (zh
Inventor
吕小虎
韩笑冬
宫江雷
邓兵
李翔
王雷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Academy of Space Technology CAST
Original Assignee
China Academy of Space Technology CAST
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Academy of Space Technology CAST filed Critical China Academy of Space Technology CAST
Priority to CN201810924465.4A priority Critical patent/CN109145607B/zh
Publication of CN109145607A publication Critical patent/CN109145607A/zh
Application granted granted Critical
Publication of CN109145607B publication Critical patent/CN109145607B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Abstract

一种卫星安全关键软件系统性验证方法,首先构建安全关键软件多维影响要素模型,然后根据安全关键软件多维影响要素模型构建安全关键软件需求约束集,最后使用得到的安全关键软件需求约束集对安全关键软件进行验证。本发明结合安全关键软件的运行处理过程,通过抽象安全关键软件的控制过程处理模型,提炼形成了软件系统层面的安全约束集,并在此基础上设计了安全关键软件的验证集,实现了建立于软件处理过程模型上的安全性影响要素覆盖分析,以及从安全关键软件安全性影响要素到安全关键软件的验证集的无缝映射,与传统的测试验证方法相比,所验证的系统性问题数量提高大概20%以上,具有很好的使用价值。

Description

一种卫星安全关键软件系统性验证方法
技术领域
本发明涉及卫星安全关键软件的验证领域,特别是一种卫星安全关键软件系统性验证方法。
背景技术
卫星安全关键软件是卫星星务管理的核心,集成了遥测遥控、热控、能源、内务、FDIR管理等功能,通过总线与多台综合处理单元进行数据交互,发送遥控指令并接收遥测信息,完成对卫星的控制管理工作。
伴随着软件执行功能比例持续上升,软件代码规模不断增长,软件自身结构复杂度提高且软硬件耦合程度增强,使得与软件相关的安全性问题凸显。
因此,明确安全关键软件安全性问题的薄弱环节和问题机理,聚焦软件研制过程中对于安全性的深层次需求,寻求合理的验证方法,成为迫切需要,而如何分析验证,也成为软件安全性工作的难点。
传统的软件安全性处理技术,采用类似于硬件失效问题的视角看待软件问题,认为导致软件相关的问题中软件自身不可靠因素占据很大比重,仅仅局限于软件自身功能范围内对软件进行验证,其缺陷在于:忽略了许多软件相关的事故其原因是多维的、系统的、动态的这个关键问题,未将软件功能自身外的其他系统影响因素纳入进行验证,验证缺乏系统性,导致难以挖掘潜在的、系统性的软件安全性问题。
发明内容
本发明解决的技术问题是:克服现有技术的不足,提供了一种卫星安全关键软件系统性验证方法,从系统的角度对影响软件安全性的多维危险要素进行解析和建模,给出安全关键软件验证的方法和处理步骤。
本发明的技术解决方案是:一种卫星安全关键软件系统性验证方法,包括如下步骤:
(1)构建安全关键软件多维影响要素模型;
(2)根据安全关键软件多维影响要素模型构建安全关键软件需求约束集;
(3)对安全关键软件进行验证。
所述的构建安全关键软件多维影响要素模型的方法为:
根据影响安全关键软件系统性的要素建立多维影响要素模型为:
F=<PE,HW,EN,SW,OT>
其中,F为安全关键软件系统性多维影响要素模型;SW为安全关键软件的算法实现;HW为软硬交互要素;PE为人机交互要素;EN为运行环境要素;OT为其他约束要素。
所述的算法实现包括处理逻辑实现不符合需求规定、初始化错误、数据处理错误、中断设计不合理、逻辑分支处理缺陷,其中,数据处理错误包括数据有效性判断、数组越界、精度,中断设计不合理包括中断初始化及清零时机、堆栈溢出、资源冲突;软硬交互要素包括传感器故障、处理器平台故障、通道故障和传输干扰、存储芯片异常、硬件处理超时,其中,通道故障和传输干扰包括1553B通信异常、信号延迟;人机交互要素包括未对导致危险的不合理操作动作进行规避、未能提供警示信息;运行环境要素包括空间强电磁干扰、深空射线辐射、高能粒子干扰;其他约束要素包括软件运行模式切换。
所述的根据安全关键软件多维影响要素模型构建安全关键软件需求约束集的方法为:
(1)建立安全关键软件的控制过程处理模型;
(2)根据安全关键软件的控制过程处理模型建立非安全关键控制过程集合,其中,建立非安全关键控制过程集合的约束包括未能提供所需的安全性措施、产生不安全的错误输出、所需的控制措施提供的时机与预期不符;
(3)根据非安全关键控制过程集合建立安全关键软件安全约束集。
根据权利要求4所述的一种卫星安全关键软件系统性验证方法,所述的安全关键软件的控制过程处理模型为闭环,运行于特定硬件和运行环境中的安全关键软件根据控制指令、外部采集器提供的数据、动作执行机构提供的控制变量反馈为处理输入,通过算法处理形成处理输出和显示信息,并反馈至动作执行机构和外部。
一种计算机可读存储介质,所述的计算机可读存储介质存储有计算机程序,所述的计算机程序被处理器执行时实现如权利要求1-权利要求5任一所述方法的步骤。
本发明与现有技术相比的优点在于:
(1)本发明是从系统的角度出发,围绕软件自身逻辑及其运行环境、交互特性等各个方面,将系统中影响安全关键软件的要素抽象为涵盖软件自身算法及实现、软硬交互、人机交互、运行环境以及其他约束要素这五个元素的结构化模型,系统性地剖析了软件安全性问题机理,提炼了安全关键软件安全性影响要素,使之成为安全关键软件验证的基础;
(2)本发明结合安全关键软件的运行处理过程,通过抽象安全关键软件的控制过程处理模型,提炼形成了软件系统层面的安全约束集,并在此基础上设计了安全关键软件的验证集,实现了建立于软件处理过程模型上的安全性影响要素覆盖分析,以及从安全关键软件安全性影响要素到安全关键软件的验证集的无缝映射。在随后基于安全性验证集的测试验证环节表明,本发明可以有效识别出安全关键软件潜在系统性问题,与传统的测试验证方法相比,所验证的系统性问题数量提高大概20%以上。
附图说明
图1为本发明的基于系统多维要素的安全关键软件验证流程图;
图2为本发明的安全关键软件多维危险因素模型图;
图3为本发明的安全关键软件控制过程处理模型图
具体实施方式
本发明的解决方案是:1)围绕软件自身逻辑及其运行环境、交互特性等方面,进行安全关键软件多维影响要素模型构建;2)在系统的需求阶段,纳入对安全关键软件的安全性需求考虑,并建立安全关键软件需求约束集;3)基于安全关键软件需求约束集,设计安全关键软件验证集并进行基于安全验证集的测试验证。
下面结合附图对本发明的具体实施方式进行进一步的详细描述。
图1为本发明基于系统多维要素的安全关键软件验证方法的验证流程图,整个验证流程分为三大部分,分别是:
Step1:安全关键软件多维影响要素模型构建;
Step2:安全关键软件需求约束集的构建,该步骤又细分为3个子步骤,分别是:
Step2-1:抽象安全关键软件的控制过程处理模型;
Step2-2:建立安全关键控制过程集合;
Step2-3:建立软件系统层面安全约束集;
Step3:进行安全关键软件的验证,该步骤又细分为2个子步骤,分别是:
Step3-1:进行安全关键软件验证集的设计;
Step3-2:进行基于安全性验证集的测试验证。
以下对安全关键软件验证中所涉及到的上述3个步骤过程分别予以描述。
1、Step1:安全关键软件多维影响要素模型构建
如图2所示,通过对安全关键软件研制工作的梳理,本发明从系统的角度出发,围绕软件自身逻辑及其运行环境、交互特性等方面,在此基础上对多维安全影响要素进行系统建模,将影响安全关键软件系统性的要素抽象为涵盖以下五元素的结构化模型:
F=<PE,HW,EN,SW,OT>
式中各符号的含义解释如下:
F—安全关键软件系统性影响要素结构化模型;
SW—安全关键软件自身算法实现;
HW—软硬交互要素;
PE—人机交互要素;
EN—运行环境要素;
OT—其他约束要素。
上述五类要素与安全关键软件问题的内在关联关系解析如下:
SW软件自身算法及实现要素主要包括:处理逻辑实现不符合需求规定、初始化错误、数据处理错误(数据有效性判断、数组越界、精度等)、中断设计不合理(中断初始化及清零时机、堆栈溢出、资源冲突等)、逻辑分支处理缺陷(存在未处理逻辑分支)等;
HW软硬交互要素主要包括:传感器故障(如数据采集异常)、处理器平台故障(如切机、掉电等)、通道故障和传输干扰(如1553B通信异常、信号延迟等)、存储芯片异常、硬件处理超时(如执行动作机构未在规定的时间内响应外部指令或处理关键参数等)等要素;
PE人机交互要素主要体现在软件设计时未对可能导致危险的不合理操作动作进行规避,或未能及时提供警示信息等;
EN运行环境要素主要包括:空间强电磁干扰、深空射线辐射、高能粒子干扰等;
OT其他约束要素主要指:软件运行模式切换、运行状态更改过程中需要考虑的约束要素。
基于上述模型,当软件运行在某种特定运行状态OTi下,存在某种特定的软硬交互HWi及人机交互PEi,并且受某种运行环境ENi的影响,同时由于软件自身实现逻辑问题SWi等诸多要素共同作用影响时(这些要素中某些要素可能为空),可能导致产生某种特定的危险事件,则Fi=<PEi,HWi,ENi,SWi,OTi>成为影响安全关键软件的一个要素结构。
2、Step2:安全关键软件需求约束集的构建
(1)Step2-1:抽象安全关键软件的控制过程处理模型
在“Step2:安全关键软件需求约束集的构建”阶段,首先要进行的步骤是抽象安全关键软件的控制过程处理模型。
如图3所示,本发明对安全关键软件参与的系统控制处理过程进行抽象,形成闭环的控制过程处理模型。在该模型中,运行于特定硬件和运行环境中的软件模块以操作人员的控制指令、外部采集器提供的数据以及动作执行机构提供的控制变量反馈为处理输入,通过算法处理,形成处理输出和显示信息,分别反馈至动作执行机构和操作人员。
(2)Step2-2:建立安全关键控制过程集合
针对Step2-1中描述的安全关键软件的控制过程处理模型,建立其中所有的安全关键控制过程集合(以CA表示,其中,安全关键控制过程为影响安全关键软件正常工作的控制过程),进而提炼出与CA相对应的所有可能导致问题的非安全控制集(以UCA表示),主要根据以下几条原则进行提炼:
■未能提供所需的安全性措施
■产生了不安全的错误输出
■所需的控制措施提供的时机与预期不符(太早或太晚)
(3)Step2-3:建立软件系统层面安全约束集
围绕Step2-2中所提炼的UCA集中每一个非安全的控制过程,梳理得出其所对应的Fi,即与当前控制过程所对应的软件自身实现逻辑问题SWi、软硬交互HWi、人机交互PEi、运行环境ENi、某种特定运行状态OTi,实现每一个非安全的控制过程与Fi之间的映射。遍历完UCA集中的所有非安全的控制过程后,即可得到所有的Fi,所有的Fi组合在一起,形成了软件系统层面的安全约束集Constraints-Sets,表示为Constraints-Sets={F1,F2……Fn}。
3、Step3:进行安全关键软件的验证
(1)Step3-1:进行安全关键软件验证集的设计
在构建完成安全关键软件需求约束集后,需要依据安全约束集对安全关键软件进行验证。为此,提出了基于约束集的安全关键软件验证集设计方法如下:
遍历Constraints-Sets中的每个Fi,对每个Fi进行测试模型转换,生成与之一一对应的验证用例TCi。该测试模型转换基于我们特定的测试工具实现,对于每个Fi中的PEi,HWi,ENi,SWi,OTi,将其转换为相应的测试条件、测试数据、测试指令以及测试执行动作的组合,从而形成相应的验证用例TCi,所有的TCi组合在一起,构成安全约束集Constraints-Sets相对应的软件安全性验证集TC-Sets。
(2)Step3-2:进行基于安全性验证集的测试验证
在完成对安全约束集Constraints-Sets、及与之相对应的软件安全性验证集TC-Sets的建立后,在特定的测试环境中,我们以TC-Sets中的每个验证用例TCi作为验证输入,自动执行,并判断验证结果是否和预期结果相符。若出现与预期结果不符的现象,将当前所采用的TCi和验证结果反馈至软件需求提出方和开发人员,进行相应的修正完善。
至此,本发明描述的基于系统多维要素的安全关键软件验证方法中各个步骤全部说明完毕。
本发明说明书中未作详细描述的内容属本领域技术人员的公知技术。

Claims (6)

1.一种卫星安全关键软件系统性验证方法,其特征在于包括如下步骤:
(1)构建安全关键软件多维影响要素模型;
(2)根据安全关键软件多维影响要素模型构建安全关键软件需求约束集;
(3)对安全关键软件进行验证。
2.根据权利要求1所述的一种卫星安全关键软件系统性验证方法,其特征在于:所述的构建安全关键软件多维影响要素模型的方法为:
根据影响安全关键软件系统性的要素建立多维影响要素模型为:
F=<PE,HW,EN,SW,OT>
其中,F为安全关键软件系统性多维影响要素模型;SW为安全关键软件的算法实现;HW为软硬交互要素;PE为人机交互要素;EN为运行环境要素;OT为其他约束要素。
3.根据权利要求2所述的一种卫星安全关键软件系统性验证方法,其特征在于:所述的算法实现包括处理逻辑实现不符合需求规定、初始化错误、数据处理错误、中断设计不合理、逻辑分支处理缺陷,其中,数据处理错误包括数据有效性判断、数组越界、精度,中断设计不合理包括中断初始化及清零时机、堆栈溢出、资源冲突;软硬交互要素包括传感器故障、处理器平台故障、通道故障和传输干扰、存储芯片异常、硬件处理超时,其中,通道故障和传输干扰包括1553B通信异常、信号延迟;人机交互要素包括未对导致危险的不合理操作动作进行规避、未能提供警示信息;运行环境要素包括空间强电磁干扰、深空射线辐射、高能粒子干扰;其他约束要素包括软件运行模式切换。
4.根据权利要求1或2所述的一种卫星安全关键软件系统性验证方法,其特征在于:所述的根据安全关键软件多维影响要素模型构建安全关键软件需求约束集的方法为:
(1)建立安全关键软件的控制过程处理模型;
(2)根据安全关键软件的控制过程处理模型建立非安全关键控制过程集合,其中,建立非安全关键控制过程集合的约束包括未能提供所需的安全性措施、产生不安全的错误输出、所需的控制措施提供的时机与预期不符;
(3)根据非安全关键控制过程集合建立安全关键软件安全约束集。
5.根据权利要求4所述的一种卫星安全关键软件系统性验证方法,其特征在于:所述的安全关键软件的控制过程处理模型为闭环,运行于特定硬件和运行环境中的安全关键软件根据控制指令、外部采集器提供的数据、动作执行机构提供的控制变量反馈为处理输入,通过算法处理形成处理输出和显示信息,并反馈至动作执行机构和外部。
6.一种计算机可读存储介质,所述的计算机可读存储介质存储有计算机程序,其特征在于,所述的计算机程序被处理器执行时实现如权利要求1-权利要求5任一所述方法的步骤。
CN201810924465.4A 2018-08-14 2018-08-14 一种卫星安全关键软件系统性验证方法 Active CN109145607B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810924465.4A CN109145607B (zh) 2018-08-14 2018-08-14 一种卫星安全关键软件系统性验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810924465.4A CN109145607B (zh) 2018-08-14 2018-08-14 一种卫星安全关键软件系统性验证方法

Publications (2)

Publication Number Publication Date
CN109145607A true CN109145607A (zh) 2019-01-04
CN109145607B CN109145607B (zh) 2021-06-11

Family

ID=64793005

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810924465.4A Active CN109145607B (zh) 2018-08-14 2018-08-14 一种卫星安全关键软件系统性验证方法

Country Status (1)

Country Link
CN (1) CN109145607B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111208746A (zh) * 2020-04-16 2020-05-29 中国人民解放军国防科技大学 一种北斗全球系统软硬协同仿真试验验证系统及建立方法
CN112487801A (zh) * 2020-10-23 2021-03-12 南京航空航天大学 一种面向安全关键软件的术语推荐方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111208746A (zh) * 2020-04-16 2020-05-29 中国人民解放军国防科技大学 一种北斗全球系统软硬协同仿真试验验证系统及建立方法
CN112487801A (zh) * 2020-10-23 2021-03-12 南京航空航天大学 一种面向安全关键软件的术语推荐方法及系统

Also Published As

Publication number Publication date
CN109145607B (zh) 2021-06-11

Similar Documents

Publication Publication Date Title
WO2015039632A1 (zh) 多路输出协调控制电动汽车一体化充电机监控系统及方法
CN108255728B (zh) 软件的失效模式的识别方法及装置
CN109145607A (zh) 一种卫星安全关键软件系统性验证方法
CN112069649A (zh) 一种基于模型驱动架构(mda)的电动汽车eps系统可靠性评估方法
CN104320677A (zh) 一种审核服务器、主控服务器及视频检测系统
Kang et al. Concept of an intelligent operator support system for initial emergency responses in nuclear power plants
CN110361609B (zh) 特高压设备监测系统及方法
CN110175359B (zh) 基于业务流程的复杂系统安全性建模方法及装置
CN108051637A (zh) 一种智能电能表时钟电池故障诊断方法
CN104142628B (zh) 空间辐射环境可靠性指标的设计方法
CN106547236A (zh) 一种核电厂数字化事故程序要素的设计方法
Hsiung et al. Model checking safety-critical systems using safecharts
CN109683040B (zh) 柔性直流输电换流阀的可靠性检测方法、装置及设备
CN105761015B (zh) 一种适用于操作票的智能防误方法及系统
CN113835390B (zh) 基于区块链的抽水蓄能电站分布式控制方法及相关设备
Maerani et al. Reverse Engineering Program Using MBSE to Support Development of I&C System Experimental Power Reactor from PLC to FPGA.
Wakankar et al. Architecture-Centric Dependability Analysis for I&C Safety Systems in NPP: A Case Study
CN104568195A (zh) 功能安全温度变送器
CN105119268A (zh) 一种电力系统暂态严重故障筛选的方法
CN105093939B (zh) 楼宇控制系统设计及调试设备和方法
Bizjak et al. Vision 2020 dynamic security assessment in real time environment
CN204612819U (zh) 功能安全温度变送器
CN102819508A (zh) 响应来自安防监控子系统信号的方法
CN114706755A (zh) 软件测试案例生成方法、电子设备以及可读存储介质
CN117648891A (zh) 一种基于统型基础库复用的机载电子产品失效分析方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant