面向协议安全性质的形式化协同规约的方法及图形建模系统与流程

文档序号:23146754发布日期:2020-12-01 13:27阅读:178来源:国知局
面向协议安全性质的形式化协同规约的方法及图形建模系统与流程

本发明涉及可信软和通信协议技术领域,尤其涉及一种关于网络协议进程模板的状态机上描述的进程行为的功能安全和信息安全性质形式化协同规约方法,并提供了一种图形化系统。



背景技术:

针对人工编码的应用软件存在安全缺陷多、纠错难度大等问题,可以对软件进行形式化验证,来确保软件的可靠性。应用软件形式化建模技术是软件安全构造的起点,同时贯穿整个软件构造的全生命周期,为后续的模型验证和代码生成提供系统模型、威胁模型与安全性规约。而针对得到的形式化模型,需要在其上形式化地定义一些安全性质,以告诉后端验证器要对哪些安全性质进行验证。应用软件形式安全性质规约对应用软件所要满足的信息安全和功能安全性质进行规约,使用一阶时序逻辑对功能安全性质和包括机密性、完整性、可用性、认证性在内的信息安全性质进行规约。并且,针对各种典型的功能安全性质和信息安全性质定制模版,以提高用户友好程度。



技术实现要素:

本发明的主要目的在于提出一种对协议进程行为状态机的功能安全和信息安全性质形式化协同规约方法。

为实现上述目的,本发明提供一种对协议进程行为状态机的功能安全和信息安全性质形式化协同规约的方法,所述方法包括以下内容:

基于行为状态机,用ctl公式描述的功能安全性质规约方法;

基于行为状态机,不变性的功能安全性质规约方法;

基于行为状态机,保密性的信息安全性质规约方法;

基于行为状态机,完整性的信息安全性质规约方法;

基于行为状态机,认证性的信息安全性质规约方法;

基于行为状态机,可用性的信息安全性质规约方法。

其中,所述基于行为状态机,用ctl公式描述的功能安全性质规约方法包括:

确定该公式所属的进程模板的行为状态机;

确定ctl关系、原子命题和逻辑关系,依照一阶ctl语法规范生成使用路径量词和时态连接词描述的功能安全性质描述公式。

其中,所述基于行为状态机,不变性的功能安全性质规约方法包括:

确定该公式所涉及的一些进程模板的属性;

确定从这些属性出发,全局满足的不变性性质,是一个命题逻辑公式。

其中,所述基于行为状态机,保密性的信息安全性质规约方法包括:

确定保密性要指定的协议的进程模板;

确定保密性要指定的协议的该进程模板下的保密属性。

其中,所述基于行为状态机,完整性的信息安全性质规约方法包括:

确定完整性要指定的协议的双方进程模板;

确定完整性要指定的协议的双方进程模板状态机上的状态;

确定完整性要指定的协议的双方进程模板的属性。

其中,所述基于行为状态机,认证性的信息安全性质规约方法包括:

确定认证性要指定的协议的双方进程模板;

确定认证性要指定的协议的双方进程模板状态机上的状态;

确定认证性要指定的协议的双方进程模板的复合类型属性;

确定前述的协议双方进程模板的属性下的二级属性。

其中,所述基于行为状态机,可用性的信息安全性质规约方法包括:

确定可用性要指定的协议的进程模板;

确定可用性要指定的协议的进程模板状态机上的状态。

本发明提供的对协议进程行为状态机的功能安全和信息安全性质形式化协同规约的方法,通过事先对协议进程模板的行为进行抽象建模,在其行为状态机上用上述几种方法对功能安全和信息安全性质进行描述,将复杂的协议性质描述成功能安全性质和信息安全性质的协同规约,使得语义清晰明了;其次,对模型进行形式化规约可以连接协议安全性质和验证器,在此基础上再进行性质分析,可以提供连接的桥梁。

另外,本发明提供的对协议进程行为状态机的功能安全和信息安全性质形式化协同规约的方法还提供一种图形建模系统,功能包括:

功能安全性质类图,可以添加、编辑、删除ctl和不变性;

信息安全性质类图,可以添加、编辑、删除保密性、完整性、认证性、可用性。

在一个具体实施方式中,所述对协议进程行为状态机的功能安全和信息安全性质形式化协同规约的方法,包括:

(1)基于行为状态机,用ctl公式描述的功能安全性质规约方法

使用一阶ctl公式来描述用户建模的状态机上的一些功能安全性质,一阶ctl公式的文法定义如下:

t∷=c|x|f(t1,t2,…,tk)

其中r是关系符号,t是关系中的项,c是常量,x是变量,f是函数符号。a和e是路径量词,a表示从该状态出发的所有路径,e表示从该状态出发存在一条路径。x、f、g、u是时态连接词,x表示存在一个状态,f表示最终,g表示所有状态,u表示前公式一直满足,直到后公式满足。ctl公式的时态连接词前面必须跟路径量词。描述功能安全性质时,需要指定该性质所属的进程模板,书写的ctl公式中的变元都是关于进程模板的属性的,表示从该进程模板对应的状态机的初始节点出发的满足的ctl公式,例如:

p1:a[a>0ub=false]

表示从进程模板p1的初始状态出发的所有路径都满足“a>0直到b=false”。

(2)基于行为状态机,不变性的功能安全性质规约方法

不变性用于描述系统进程内部、进程与进程之间属性所满足的全局不变的功能安全性质,是一条命题逻辑公式,例如:

p1.a+p2.b=0

表示进程模板p1的属性a和进程模板p2的属性b的求和结果始终为0。

(3)基于行为状态机,保密性的信息安全性质规约方法

保密性用于描述进程模板的某个属性在协议运作过程中不会被窃取,属于信息安全性。保密性由进程模板和属性组成,形如:

process.attribute

例如,保密性p1.a表示进程模板p1的属性a是保密的。

(4)基于行为状态机,完整性的信息安全性质规约方法

完整性用于描述进程模板的某个属性在传输中信息保持完整,即传输前后保持一致。完整性由一对进程模板、状态、属性组成,形如:

process.state.attribute|process.state.attribute

例如,完整性p1.s1.msga|p2.s2.msgb表示进程模板p1在s1状态时的msga属性和进程模板p2在s2状态时的msgb属性总是一致。如果s1是p1发送msga前后的状态,s2是p2接收到msgb之后的状态,这条性质就能表达p1发送的msga和p2接收的msgb一致,即在传输中信息保持完整。

(5)基于行为状态机,认证性的信息安全性质规约方法

认证性用于表达双方进程通信时的认证关系,通过一个认证字段来认证身份。认证性由一对进程模板、状态、复合属性、二级属性组成,形如:

process.state.attribute.attr|process.state.attribute.attr

例如,认证性p1.s1.msga.auth|p2.s2.msgb.auth表示进程模板p1在s1状态时的msga属性的auth字段和进程模板p2在s2状态时的msgb属性的auth字段总是一致。如果s1是p1发送msga前后的状态,s2是p2接收到msgb之后的状态,这条性质就能表达p1发送的msga和p2接收的msgb通过各自的auth字段完成了认证。

(6)基于行为状态机,可用性的信息安全性质规约方法

可用性(availability)是指系统能够从错误中安全而快速地恢复到正常运行状态,这里用进程模板的某个状态来表达,即某个状态从系统中的任意状态可达,即其上的功能总是可用的。可用性由进程模板和状态组成,形如:

process.state

例如,可用性p1.clock_tick表示进程模板p1从任意状态都能到达clock_tick状态,如果clock_tick这个状态做的事情是系统中的时钟跳动一个周期,则这条可用性表达的即是p1进程中时钟跳变这个功能总是可用的,即从p1中任何状态都能到达clock_tick这个状态,从而执行时钟跳变的功能。

本发明的有益效果在于:通过约定这些规约规范能够较为全面地针对协议的行为和内容对功能安全性质和信息安全性质建模,为后续的验证提供一定的帮助,能够为建模用户和性质的形式化验证器建立有效的连接桥梁,节约协议标准的开发和验证的时间和成本。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。在附图中:

图1为比特交换协议中涉及的进程模板和信道。

图2为比特交换协议中计时器timer进程的行为状态机。

图3为比特交换协议中发送方sender进程的行为状态机。

图4为比特交换协议中接收方receiver进程的行为状态机。

图5为通过构建语法树生成一条ctl公式。

图6为添加的一些功能安全性质。

图7为添加的一些信息安全性质。

图8为本发明面向协议安全性质的形式化协同规约的方法示意图。

具体实施方式

结合以下具体实施例和附图,对发明作进一步的详细说明。实施本发明的过程、条件、实验方法等,除以下专门提及的内容之外,均为本领域的普遍知识和公知常识,本发明没有特别限制内容。

本发明公开了一种面向协议安全性质的形式化协同规约描述方法及图形化系统,涉及可信软件和通信协议技术领域。所述方法包括:面向计算树逻辑(computationtreelogic,ctl)和不变性(invariant)的软件功能安全性质(safetyproperty)规约规范;针对机密性(confidential)、认证性(authenticity)、完整性(integrity)和可用性(availability)的信息安全性质(securityproperty)规约规范。本发明中,通过约定这些规约规范能够较为全面地针对协议的行为和内容对功能安全性质和信息安全性质建模,为后续的验证提供一定的帮助,能够为建模用户和性质的形式化验证器建立有效的连接桥梁,节约协议标准的开发和验证的时间和成本。

下面将以比特控制协议(abp)为例详细地描述本公开的示例性实施方式。在比特控制协议中,有计时器timer、发送方sender、接收方receiver三个进程。

计时器进程timer包括表示开启/关闭的enable字段,以及一个内置的计时器类对象。具有一个发送超时信号的通信方法,一个接收控制信号的通信方法。

发送方进程包括一个待发送的消息m,比特控制位x,以及用于接收超时信号的字段tout。具有一个随机生成消息的方法。还具有一个向接收方发送消息和比特控制位的通信方法、一个接收回传的确认信号(比特控制位)的通信方法,一个接收超时信号的通信方法,一个发送计时器控制信号的通信方法。

接收方进程包括一个用于接收消息的属性m,用于接收比特控制位的属性y。还具有一个接收消息和比特控制位的通信方法,一个回传比特控制位的通信方法。以上进程定义和通信方法的配对如图1所示。

计时器进程timer的行为状态机如图2所示,刚启动时计时器在off关闭状态,接收到开启信号后,用reset()方法重置计时器t,进去on开启状态。如果在on状态接收到关闭信号,则回到off状态。如果在on状态发现超时,则要向sender进程发送超时信号,在enable处记录关闭,并回到off状态。

发送方进程sender的行为如图3所示,一开始随机创建一个msg,然后和标志位0一起发送给receiver,并开启计时器,如果收到receiver回传的标志位,检查为1则要继续等待,如果等待超时,则要重新发送,如果检查为0则表示receiver成功收到了消息,那么先关闭计时器,再将msg和标志位1一起发送,然后开启计时器,等待收到receiver回传的标志位,检查为0则继续等待,如果等待超时则要重新发送,如果检查为1则表示receiver成功收到了消息,关闭计时器回到最开始的状态,如此反复。

接收方进程receiver的行为如图4所示,一开始等待接收sender发来的信息m和标志位y,检查y,如果y是1不符合预期,则要继续接收,如果y是0则符合预期,向sender回传标志位0,然后继续等待接收sender发来的信息m和标志位y,检查y,如果y是0不符合预期,则要继续接收,如果y是1则符合预期,向sender回传标志位0,然后回到最开始的状态继续等待,如此反复。

基于以上进程和状态机模型,可以使用本发明公开的面向协议安全性质的形式化协同规约描述方法对功能安全性质和信息安全性质进行描述。

如图5所示是为接收方进程生成的ctl公式,表示接收到的y一直为1,直到y为0。同理也可以生成y一直为1,直到y为0,这样即表达了接收方接受到的y只能取这两个值中的一个。该功能安全性质还可以用不变性来表达,即y只能取1或取0,整个功能安全性质如图6所示。

如图7所示是针对该协议书写的一些信息安全性质,从上到下分别表示,接受方进程接收到的m是保密的;发送方进程在snd_msg1状态的标志位x和接收方进程在snd_ack0状态的标志位y总是一致的;计时器进程总能回到on状态。由于本协议认证用的比特位没有和msg合成一个数据类型,所以不需要用认证性描述认证关系,如果想使用认证性表达,可以将它们合成一个数据类型,然后选择其中的比特标志位作为认证位。

参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

由此,通过对比特交换协议的模型使用规约语言描述安全性质,即使用形式化方法对比特交换协议的模型进程性质规约,使得能够更清楚准确地描述安全性质,为后续的验证提供桥梁。本发明首次提出使用形式化方法对协议的功能安全性质和信息安全性质进行协同规约,并给出了图形化的规约语言辅助系统,能够提供语义更加准确和不易产生二义性的规约规范,从而指导协议开发和验证人员更好地进行后续的工作。

需要说明的是,在本文中,术语“包括”、“具有”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1