本发明专利技术公开了一种测试移动可信平台软件安全性的方法,能够在软件开发过程中使用B语言设计移动可信平台的形式化规范并对所述形式化规范的可信证明义务进行证明。当所有的证明义务均证明可信时,则说明所测试的软件是安全的。通过应用以上技术方案,本发明专利技术能够在软件开发过程中快速测试软件安全性,保证了软件开发的效率。
【技术实现步骤摘要】
本专利技术涉及软件测试
,特别是涉及。
技术介绍
随着科学技术的发展,大容量、高速度的计算机纷纷出现,也使得软件开发数量急剧增长。现在,软件系统的规模越来越大,复杂程度越来越高,软件可靠性问题也越来越突出ο为了提高软件开发的效率,人们研究出了软件工程的方法。但这种方法存在一定的缺陷,它无法保证最终软件的实现能够满足最初的设计。通过软件工程开发的软件,最终仍然需要进行大量的测试以寻找软件的潜在问题。这无疑对提高软件开发效率不利。因而现在急需一种能够在软件开发过程中快速测试软件安全性的方法。
技术实现思路
为解决上述技术问题,本专利技术实施例提供,以实现在软件开发过程中快速测试软件安全性的目的,技术方案如下,包括使用B语言设计移动可信平台的形式化规范;对所述形式化规范的可信证明义务进行证明并生成证明结果;根据所述证明结果判断移动可信平台软件是否安全。优选的,所述使用B语言设计移动可信平台的形式化规范,包括使用B语言描述软件生成抽象机;对所述抽象机进行精化,生成精化后的抽象机;实现所述精化后的抽象机。优选的,所述对所述形式化规范的可信证明义务进行证明并生成证明结果包括对抽象机的可信证明义务进行证明并生成证明结果;对所述精化后的抽象机证明义务进行证明并生成证明结果;对实现抽象机的可信证明义务进行证明并生成证明结果。优选的,所述根据所述证明结果判断移动可信平台软件是否安全包括判断对抽象机的可信证明义务进行证明生成的证明结果、对所述精化后的抽象机证明义务进行证明生成的证明结果和对实现抽象机的可信证明义务进行证明生成的证明结果均为通过,则判定移动可信平台软件安全。优选的,所述对抽象机的可信证明义务进行证明并生成证明结果包括对包含语句hcludes的可信证明义务进行证明并生成证明结果;对断言语句Assertion的可信证明义务进行证明并生成证明结果;对初始化语句hitialisation的可信证明义务进行证明并生成证明结果;对操作语句Operations的可信证明义务进行证明并生成证明结果。优选的,所述对所述精化后的抽象机证明义务进行证明并生成证明结果包括对包含语句hcludes的可信证明义务进行证明并生成证明结果;对断言语句Assertion的可信证明义务进行证明并生成证明结果;对初始化语句hitialisation的可信证明义务进行证明并生成证明结果;对操作语句Operations的可信证明义务进行证明并生成证明结果。优选的,所述对实现抽象机的可信证明义务进行证明并生成证明结果包括对引入子句Import的可信证明义务进行证明并生成证明结果;对赋值语句Value的可信证明义务进行证明并生成证明结果;对断言语句Assert的可信证明义务进行证明并生成证明结果;对初始化语句hitialisation的可信证明义务进行证明并生成证明结果;对操作语句Operation的可信证明义务进行证明并生成证明结果;对抽象机规范Specification的可信证明义务进行证明并生成证明结果;对抽象机实现Implementation的可信证明义务进行证明并生成证明结果。本专利技术提供的,能够在软件开发过程中使用B语言设计移动可信平台的形式化规范并对所述形式化规范的可信证明义务进行证明。当所有的证明义务均证明可信时,则说明所测试的软件是安全的。通过应用以上技术方案,本专利技术能够在软件开发过程中快速测试软件安全性,保证了软件开发的效率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。图1为本专利技术实施例的的流程图;图2为本专利技术实施例的移动可信平台的软件设计框架图;图3为本专利技术实施例的TCSpec的主要变量示意图;图4为本专利技术实施例的TCSpec中变量的全局不变式示意图;图5为本专利技术实施例的抽象机实例;图6为本专利技术实施例的抽象机精化的实例;图7为本专利技术实施例的抽象机实现的实例。具体实施例方式为了使本
的人员更好地理解本专利技术中的技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本专利技术保护的范围。如图1所示,本专利技术实施例提供的包括S101、使用B语言设计移动可信平台的形式化规范;具体可以包括 使用B语言描述软件生成抽象机;对所述抽象机进行精化,生成精化后的抽象机;实现所述精化后的抽象机。本领域技术人员可以理解的是,抽象机、抽象机的精化、抽象机的实现是软件开发过程中的三个步骤。移动可信平台下,软件设计的框架如图2所示,其中,B Specification ofTrusted Computing 为可信计算的规范,可简称为 TCSpec。B Abstract Machineof Software 为需要调用TCSpec的软件的抽象机规范,它可以经过精化过程生成B Implementation of Software,即该抽象机对应的实现,此实现可以利用B方法的软件Atelier B生成C代码。 TCSpec 经过精化过程生成 B Implementationof Trusted Computing,即 TCSpec 对应的实现。同样,该实现也是可以利用Atelier B软件生成C代码的。TCSpec向上提供了一套可信操作的接口,上层软件通过在实现环节Import TCSpec,调用可信操作。在此环节中,每当调用TCSpec的一个操作,Atelier B会产生一个相应的证明义务,要求证明软件的当前状态符合调用操作所给出的前件。TCSpec也向下封装了移动平台下TPM、网络Network、1/0 的相关操作,其方法是通过在TCSpec的实现环节Import各抽象机。各抽象机没有直接的实现,而是通过自编写的C接口(CHnterface)与B语言接口(B Interface)相衔接。其他抽象机(如B LibraryMachine)则均有相应的实现,其实现在证明义务被证明通过后,就能直接生成C代码。然后利用之前各自生成的C代码共同构造可信的路由软件。在TCSpec中,主要设计思想是Al 对每个移动结点,它所给出的公开标识是一个假名(Pseudo Name, PN),而不用真实的身份来标识,每隔一定时间,其假名会发生改变,这样即可保证移动结点的完全匿名。同时,每个PN对应一个信任级别,通过直接匿名认证DAA和基于性质的认证PBA对信任级别进行修改,如果DAA和PBA认证均通过,则信任级别最高,并且此时,可以允许和对方交换私有数据。A2 每一个被处理的数据,首先被放入一个数据集合D中,同时,每个数据被拆分为元素,并将每个元素放入E中。每个元素都会设定一个元素类型,而每个类型都会设定一个安全级别。通过对TCSpec的一系列约束,AtelierB对所有的数据进行静态的安全检查。TCSpec主要变量设定如图3所示。其中,D记录了所有需处理数据的指针地址,记录了每个元素的指针地址,PNs记录本机上本文档来自技高网...
【技术保护点】
【技术特征摘要】
【专利技术属性】
技术研发人员:苗付友,王行甫,熊焰,黄文超,吴呈邑,
申请(专利权)人:中国科学技术大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。