买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】基于需求的IMA安全验证分析方法_南京航空航天大学_201710252450.3 

申请/专利权人:南京航空航天大学

申请日:2017-04-18

公开(公告)日:2020-07-24

公开(公告)号:CN107220539B

主分类号:G06F21/53(20130101)

分类号:G06F21/53(20130101);G06F21/57(20130101)

优先权:

专利状态码:有效-授权

法律状态:2020.07.24#授权;2017.10.27#实质审查的生效;2017.09.29#公开

摘要:本发明公开了一种基于需求的IMA安全验证分析方法,包含以下步骤:步骤一:确定系统级危害和安全约束;步骤二:构建出系统的控制结构图,通过控制结构图找出不安全的控制行为,进而得到系统的安全需求;步骤三:用SCR模型对安全需求进行建模,对描述不准确的需求进行修改,并用形式化的方法验证需求的可靠性和准确性。本发明能有效分析系统的控制结构,找到组件交互产生的潜在危害,得到系统的安全需求。

主权项:1.一种基于需求的IMA安全验证分析方法,其特征在于包含以下步骤:步骤一:确定系统级危害和安全约束;步骤二:构建出系统的控制结构图,通过控制结构图找出不安全的控制行为,进而得到系统的安全需求;步骤三:用SCR模型对安全需求进行建模,对描述不准确的需求进行修改,并用形式化的方法验证需求的可靠性和准确性;所述步骤一具体为,从IMA系统提供的服务出发,找到IMA提供的与分区通信相关的服务,然后找到会导致相关服务失效的危险,确定分区通信的系统级危险,若IMA的分区间通信服务失效,则会导致分区通信系统的系统级危险;所述分区通信的系统级危险包含,H1通道没有正确获取发送进程发送的消息;H2通道接收进程没有正确接收通道的消息;H3通道分区通信初始化过程出现错误;进而产生系统级的安全约束:SC1通道必须要正确获取发送进程发送的消息;SC2通道接收进程必须正确接收通道的消息;SC3通道分区通信初始化过程不能出错。

全文数据:基于需求的IMA安全验证分析方法技术领域[0001]本发明涉及一种安全验证分析方法,特别是一种基于需求的IMA安全验证分析方法。背景技术[0002]综合模块化航空电子ΠΙΑ是航电系统架构发展新的阶段,頂A架构给航电开发带来了更多的灵活性,显著地提升了开发效率。頂A架构一个重要益处就是允许应用系统独立地开发,然后集成到统一的IMA平台之上共享硬件资源。系统开发与安全性评估的隔离,加上不同开发人员对于系统安全性认知的不同使得IMA的安全性分析变得十分复杂。传统的基于事件链模型的危害分析方法将硬件与软件放在一起考虑且主要考虑组件失效,这些传统危害分析方法适用于联合式航电系统,并不适用于MA这种软件密集型系统。相比于组件失效,MA中存在大量潜在的危害是由组件交互引起的,目前关于MA系统安全性的分析与验证的研究较少,且还没有很好地解决这方面的问题。发明内容[0003]本发明所要解决的技术问题是提供一种基于需求的MA安全验证分析方法,找到组件交互产生的潜在危害,得到系统的安全需求。[0004]为解决上述技术问题,本发明所采用的技术方案是:[0005]—种基于需求的IMA安全验证分析方法,其特征在于包含以下步骤:[0006]步骤一:确定系统级危害和安全约束;[0007]步骤二:构建出系统的控制结构图,通过控制结构图找出不安全的控制行为,进而得到系统的安全需求;[0008]步骤三:用SCR模型对安全需求进行建模,对描述不准确的需求进行修改,并用形式化的方法验证需求的可靠性和准确性。[0009]进一步地,所述步骤一具体为,从頂A系统提供的服务出发,找到頂A提供的与分区通信相关的服务,然后找到会导致相关服务失效的危险,确定分区通信的系统级危险,若IM的分区间通信服务失效,则会导致分区通信系统的系统级危险。[0010]进一步地,所述分区通信的系统级危险包含,[0011]Hl通道没有正确获取发送进程发送的消息;[0012]Η2接收进程没有正确接收通道的消息;[0013]Η3分区通信初始化过程出现错误;[0014]进而产生系统级的安全约束:[0015]SCl通道必须要正确获取发送进程发送的消息;[0016]SC2接收进程必须正确接收通道的消息;[0017]SC3分区通信初始化过程不能出错。[0018]进一步地,所述步骤二包含,[0019]2.1熟悉系统,了解整个系统的工作方式和系统结构,找出系统的所有独立的组件,分析每个组件在系统中的作用,提取控制动作和反馈动作,构建出控制结构图;[0020]2.2从控制结构图中提取控制动作,从“没有提供所需的安全控制行为”,“提供了不正确的控制行为”,“不正确的时间顺序”,“停止过快过慢”四类控制不力的情况出发,分析每个控制动作可能会导致的系统危险,得到不安全的控制行为,并根据不安全的控制动作得出安全约束;[0021]2.3分析不安全控制行为产生原因,原因包含系统缺陷、组件失效、算法缺陷和外界环境干扰;[0022]2.4把提取出的安全约束作为系统的安全需求,提取需求中的变量。[0023]进一步地,所述2.1具体为,IMA分区通信分为两个阶段:初始化阶段和通信阶段,针对两个不同阶段分别构建控制结构图,以提取不同阶段的安全需求;在构建通信阶段的控制结构图时,先构建通信阶段的流程图,然后在流程图中提取控制动作和反馈动作,找出控制方和被控制方,构建出通信阶段的控制结构图。[0024]进一步地,所述2.2具体为,从控制结构图中提取控制动作得到分区通信模块14个控制动作,其中初始化阶段4个控制动作,通信阶段10个控制动作,按照STPA方法从“没有提供所需的安全控制行为”、“提供了不正确的控制行为”、“不正确的时间顺序”、“停止过快过慢”四类控制不力的情况出发,分析每个控制动作会导致的系统危险,得到不安全的控制行为,通过对14个控制动作的分析,得到70个UCA,其中初始化阶段有16个UCA,通信阶段有54个UCA,识别出不安全控制行为可以转换为有关系统组件行为的安全约束,即得到系统的安全需求,通过对得到的70个UCA的分析,得到分区通信的安全约束。[0025]进一步地,所述步骤三包含,[0026]3.1根据安全需求,构建变量之间的关系,建立SCR模型,验证安全需求的描述准确性,对描述不准确的需求进行修改;[0027]3.2把建立好的SCR模型在T-VEC工具上进行模拟,进行形式化验证,确保系统需求的可靠性和准确性。[0028]进一步地,所述3.1具体为,提取完安全需求的变量之后,找到变量之间的关系,把安全需求用形式化的语言描述,对不明确的安全需求进行相应的修改完善,使STPA方法得到的安全需求表述更加准确,对形式化表述之后的安全需求构建SCR关系表。[0029]进一步地,所述3.2具体为,把构建好的SCR模型在T-VEC工具上进行模拟,进行形式化验证,确保系统需求各变量和需求间的依赖关系符合系统要求,且需求所描述的系统行为满足安全性,通过T-VEC工具可以自动生成测试向量。[0030]本发明与现有技术相比,具有以下优点和效果:[0031]1、本发明利用STPA方法能有效分析系统的控制结构,找到组件交互产生的潜在危害,得到系统的安全需求。[0032]2、本发明结合了安全需求分析方法和形式化模型,为安全关键系统需求的产生和验证提供了一种有效的方法流程。[0033]3、本发明利用SCR模型检对需求进行形式化验证,提高了需求描述的准确性,验证需求的一致性和完备性检查并为需求生成自动测试向量。附图说明[0034]图1是本发明的基于需求的IMA安全验证分析方法的流程框图。[0035]图2是本发明的实施例的分区通信模块安全性分析验证的初始化阶段的控制结构图。[0036]图3是本发明的通信阶段的控制结构图。[0037]图4是本发明的通过UCA寻找安全缺陷的流程图。[0038]图5是本发明的SCR模型生成的自动测试向量示意图。[0039]图6是本发明的表1示意图。[0040]图7是本发明的表2示意图。[0041]图8是本发明的表3不意图。[0042]图9是本发明的表3不意图。具体实施方式[0043]下面结合附图并通过实施例对本发明作进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。[0044]如图1所示,本发明的一种基于需求的IM安全验证分析方法,包含以下步骤:[0045]步骤一:确定系统级危害和安全约束;分析系统级危害,获取分区通信模块的系统级安全性约束条件。为了找到能导致分区通信模块的系统级危险,从IMA系统提供的服务出发,找到IMA提供的与分区通信相关的服务,然后找到会导致相关服务失效的危险,这样就确定了分区通信的系统级危险。若IM的分区间通信服务失效,则会导致分区通信系统的系统级危险。通过对分区通信的研究,可以得到以下三个系统级危险Hazard:[0046]Hl通道没有正确获取发送进程发送的消息;[0047]H2接收进程没有正确接收通道的消息;[0048]H3分区通信初始化过程出现错误。[0049]进而产生系统级的安全约束SafetyConstraint:[0050]SCl通道必须要正确获取发送进程发送的消息;[0051]SC2接收进程必须正确接收通道的消息;[0052]SC3分区通信初始化过程不能出错。[0053]安全性是一种涌现性,系统的安全性是由安全性约束条件来保障的。系统级危害的发生意味着系统级的安全性约束条件被违反。因此,除了确定系统级危害外,还需要确定系统级安全性性约束,以便在后续分析中确定安全性约束如何被满足。[0054]步骤二:构建出系统的控制结构图,通过控制结构图找出不安全的控制行为,进而得到系统的安全需求;[0055]步骤二包含,[0056]2.1熟悉系统,了解整个系统的工作方式和系统结构,找出系统的所有独立的组件,分析每个组件在系统中的作用,提取控制动作和反馈动作,构建出控制结构图;[0057]頂A分区通信分为两个阶段:初始化阶段和通信阶段。初始化阶段和通信阶段的控制动作完全不一样,且对系统的安全性息息相关,所以本文针对两个不同阶段分别构建控制结构图,以便提取不同阶段的安全需求。在构建通信阶段的控制结构图时,考虑到通信的时序性,先构建了通信阶段的流程图,然后在流程图中提取控制动作和反馈动作,找出控制方和被控制方,构建出通信阶段的控制结构图。初始化阶段的控制结构图如图2,通信阶段的控制结构图如图3。[0058]构建系统的分层控制结构可以清楚地表现表面系统不同层次的交互过程,以及各个层级之间的关系,为进一步辨识导致系统危险的原因(不安全控制)奠定分析基础。控制结构并不仅包含分层控制框图所体现的信息,还包含对各个控制过程所进行的描述,如过程模型、控制算法等。[0059]2.2从控制结构图中提取控制动作,从“没有提供所需的安全控制行为”,“提供了不正确的控制行为”,“不正确的时间顺序”,“停止过快过慢”四类控制不力的情况出发,分析每个控制动作可能会导致的系统危险,得到不安全的控制行为,并根据不安全的控制动作得出安全约束;[0060]从步骤2.1的控制结构图中,得到了分区通信模块14个控制动作(附录ICA,controIaction,其中初始化阶段4个控制动作,通信阶段10个控制动作。分区通信的控制行为可能导致系统级危险,按照STPA方法可从“没有提供所需的安全控制行为”,“提供了不正确的控制行为”,“不正确的时间顺序”,“停止过快过慢”四类控制不力的情况出发,分析每个控制动作可能会导致的系统危险,得到不安全的控制行为UCA,unsafecontrolaction。通过对14个控制动作的分析,得到74个UCA附录2,其中初始化阶段有16个UCA,通信阶段有54个UCA。识别出不安全控制行为可以转换为有关系统组件行为的安全约束,即得到系统的安全需求,通过对上节得到的74个UCA的分析,得到分区通信的安全约束(SC,SafetyConstraint,一共有56个附录3。图6所示的表1给出通过控制动作识别出UCA的过程。[0061]上述四种不同类型的不安全控制行为确定每个控制器包括人工控制器和自动控制器潜在的不安全控制行为。这些通用分类仅作为不安全控制辨识时的参考,针对具体的系统需要具体区分。另外,由于危险分析的主要目的是在事故发生前找出潜在的危险原因并进行预防,因而需要根据辨识出的危险原因一一不安全控制来形成具体的安全约束,以保证系统的安全。[0062]2.3分析不安全控制行为产生原因,原因包含系统缺陷、组件失效、算法缺陷和外界环境干扰;针对2.2辨识出的不恰当控制行为,分析其控制缺陷。要分析不恰当控制行为的产生原因,可以依据STPA方法提供的一般控制模型所要考虑的因素出发,对不恰当控制行为进行分析,找出其中的控制缺陷,UCA37分析控制缺陷的过程如图4。[0063]分析不安全控制行为产生原因。这个阶段辨别控制结构中的控制缺陷(ControlFlaws一一导致危害发生的原因。STPA分析不仅要找到上述的不安全控制行为,还需要进一步分析产生这些不安全控制行为的原因,及控制缺陷,控制缺陷会和安全需求一同交付系统开发人员,使其在构建系统时能更好的是安全需求得到满足。[0064]2.4把提取出的安全约束作为系统的安全需求,提取需求中的变量。对2.2提取的安全需求进行验证,首先提取安全需求中的变量,确定变量的类型和取值范围。如图7所示的表2给出了SC1-SC5的所有变量集合。[0065]对安全需求提取变量,分析需求中的所有实体,把每个实体对应SCR模型的中不同变量类型。[0066]步骤三:用SCR模型对安全需求进行建模,对描述不准确的需求进行修改,并用形式化的方法验证需求的可靠性和准确性。[0067]步骤三包含,[0068]3.1根据安全需求,构建变量之间的关系,建立SCR模型,验证安全需求的描述准确性,对描述不准确的需求进行修改;[0069]提取完安全需求的变量之后,需要找到变量之间的关系,把安全需求用形式化的语言描述,SC1-5的形式化描述如图4。对不明确的安全需求进行了相应的修改完善,使STPA方法得到的安全需求表述更加准确。如图8和图9所示的表3和表4所示,对形式化表述之后的安全需求构建SCR关系表。[0070]变量之间的关系包括四种结构,利用这四种结构可以以一种更加实际和简明的方式对系统进行描述,这四种结构分别是模式mode,项(term,条件(condition和事件event。其中,模式类是定义在受监控的变量上的状态机,状态机中的状态称为系统模式或简单的称之为模式),其中的状态转换由事件触发,复杂系统可同时定义多个模型类,这些模式类可以一种并行方式进行操作。项定义在输入变量、模式或其他项上,用以描述系统中的某个场景。条件即为断言,定义在系统中一个或多个实体之上一个系统实体是指一个输入或输出变量,模式或项)。由事件来改变系统实体的值,所有事件中有一种特殊的事件,称为输入事件,当输入变量值发生变化时会触发该类事件,同时,当有一个特定条件为真时,如果事件发生,则称该事件为条件事件。下面给出相关定义:[0071]定义1系统状态是关于RF中的各个实体名到具体值之间映射的函数,更详细来讲,对所有的reRF:sr=v,v=TYr。因此,通过假设,系统中任何一个状态S,都是模式类中的某一模式,且每个实体都拥有唯一值。[0072]一MS是N个非空且两两不相交的集合相结合构成,S卩M^M2,...,Mn,称为模式类。模式类中每个成员都称为模式。[0073]—TS是数据类型集,每个类型是值的一个非空集。[0074]—VS=MSUTS,是实体值集。[0075]一RF是实体名集合。RF又分为四个子集:MS,模式类的名称集;IR,输入变量的名称集;OR,输出变量的名称集;GR,项的名称集。对于所有的regKS是实体名r的类型池就是可能的值集),对所有的rGMR,存在i满足TYr=Mi,那么称r为对应于Mi的模式类名。[0076]定义2条件是通过逻辑连接符U,η和^将简单条件连接组成的逻辑语句。[0077]条件定义在RF的实体值上,简单条件可以是true,false,或一条逻辑语句r.®V其中reRF是一个实体名,《6{=,#,,,4斗是关系操作符,¥^¥«是常量值。[0078]定义3事件定义如下:[0079]@TcWHEN^=1λc'Λ,[0080]其中,条件c中的状态是原始状态,而条件c,中的状态是改变后的新的状态。给定^”^那么可将…定义为^^卜^:^广㊉^基于这些定义以及标准谓词演算规则名何一个条件事件都可以表示为一个逻辑语句。[0081]定义4系统是一个四元组,{Em,S,So,T},其中:[0082]+Em是输入事件集合,[0083]—S是可能的系统状态集,[0084]—So是一个特殊的状态集,称为初始状态,[0085]—T是系统转换。[0086]3.2把建立好的SCR模型在T-VEC工具上进行模拟,进行形式化验证,确保系统需求的可靠性和准确性。[0087]把构建好的SCR模型在T-VEC工具上进行模拟,进行形式化验证,确保系统需求各变量和需求间的依赖关系符合系统要求,且需求所描述的系统行为满足安全性,通过T-VEC工具可以自动生成测试向量,T-VEC生成的测试报告如图5所示。[0088]把构建好的SCR模型模拟,进行形式化验证,确保系统需求各变量和需求间的依赖关系符合系统要求,且需求所描述的系统行为满足安全性,自动生成测试向量。[0089]本说明书中所描述的以上内容仅仅是对本发明所作的举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种修改或补充或采用类似的方式替代,只要不偏离本发明说明书的内容或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。

权利要求:1.一种基于需求的IM安全验证分析方法,其特征在于包含以下步骤:步骤一:确定系统级危害和安全约束;步骤二:构建出系统的控制结构图,通过控制结构图找出不安全的控制行为,进而得到系统的安全需求;步骤三:用SCR模型对安全需求进行建模,对描述不准确的需求进行修改,并用形式化的方法验证需求的可靠性和准确性。2.按照权利要求1所述的基于需求的IMA安全验证分析方法,其特征在于:所述步骤一具体为,从IMA系统提供的服务出发,找到IMA提供的与分区通信相关的服务,然后找到会导致相关服务失效的危险,确定分区通信的系统级危险,若IMA的分区间通信服务失效,则会导致分区通信系统的系统级危险。3.按照权利要求2所述的基于需求的IMA安全验证分析方法,其特征在于:所述分区通信的系统级危险包含,Hl通道没有正确获取发送进程发送的消息;H2接收进程没有正确接收通道的消息;H3分区通信初始化过程出现错误;进而产生系统级的安全约束:SCl通道必须要正确获取发送进程发送的消息;SC2接收进程必须正确接收通道的消息;SC3分区通信初始化过程不能出错。4.按照权利要求1所述的基于需求的IMA安全验证分析方法,其特征在于:所述步骤二包含,2.1熟悉系统,了解整个系统的工作方式和系统结构,找出系统的所有独立的组件,分析每个组件在系统中的作用,提取控制动作和反馈动作,构建出控制结构图;2.2从控制结构图中提取控制动作,从“没有提供所需的安全控制行为”,“提供了不正确的控制行为”,“不正确的时间顺序”,“停止过快过慢”四类控制不力的情况出发,分析每个控制动作可能会导致的系统危险,得到不安全的控制行为,并根据不安全的控制动作得出安全约束;2.3分析不安全控制行为产生原因,原因包含系统缺陷、组件失效、算法缺陷和外界环境干扰;2.4把提取出的安全约束作为系统的安全需求,提取需求中的变量。5.按照权利要求4所述的基于需求的IMA安全验证分析方法,其特征在于:所述2.1具体为,IMA分区通信分为两个阶段:初始化阶段和通信阶段,针对两个不同阶段分别构建控制结构图,以提取不同阶段的安全需求;在构建通信阶段的控制结构图时,先构建通信阶段的流程图,然后在流程图中提取控制动作和反馈动作,找出控制方和被控制方,构建出通信阶段的控制结构图。6.按照权利要求4所述的基于需求的頂A安全验证分析方法,其特征在于:所述2.2具体为,从控制结构图中提取控制动作得到分区通信模块14个控制动作,其中初始化阶段4个控制动作,通信阶段10个控制动作,按照STPA方法从“没有提供所需的安全控制行为”、“提供了不正确的控制行为”、“不正确的时间顺序”、“停止过快过慢”四类控制不力的情况出发,分析每个控制动作会导致的系统危险,得到不安全的控制行为,通过对14个控制动作的分析,得到70个UCA,其中初始化阶段有16个UCA,通信阶段有54个UCA,识别出不安全控制行为可以转换为有关系统组件行为的安全约束,即得到系统的安全需求,通过对得到的70个UCA的分析,得到分区通信的安全约束。7.按照权利要求1所述的基于需求的IMA安全验证分析方法,其特征在于:所述步骤三包含,3.1根据安全需求,构建变量之间的关系,建立SCR模型,验证安全需求的描述准确性,对描述不准确的需求进行修改;3.2把建立好的SCR模型在T-VEC工具上进行模拟,进行形式化验证,确保系统需求的可靠性和准确性。8.按照权利要求7所述的基于需求的IMA安全验证分析方法,其特征在于:所述3.1具体为,提取完安全需求的变量之后,找到变量之间的关系,把安全需求用形式化的语言描述,对不明确的安全需求进行相应的修改完善,使STPA方法得到的安全需求表述更加准确,对形式化表述之后的安全需求构建SCR关系表。9.按照权利要求7所述的基于需求的IMA安全验证分析方法,其特征在于:所述3.2具体为,把构建好的SCR模型在T-VEC工具上进行模拟,进行形式化验证,确保系统需求各变量和需求间的依赖关系符合系统要求,且需求所描述的系统行为满足安全性,通过T-VEC工具可以自动生成测试向量。

百度查询: 南京航空航天大学 基于需求的IMA安全验证分析方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。