论文部分内容阅读
随着计算机的广泛应用尤其是网络应用的不断普及,信息安全问题一直以来都是科研人员和广大用户所关注的核心问题。计算机病毒、恶意代码、黑客攻击等层出不穷,信息窃取与身份假冒等现象不断发生。研究和实践表明:这些安全事故的根本原因之一是PC平台软、硬件结构的简化。为了减少计算机和网络上的不安全因素,达到从根本上提高其可靠性,必须从芯片、硬件结构和操作系统等方面采取综合措施。由此产生了可信计算的基本思想,其目的是在计算和通信系统中广泛使用基于硬件安全模块支撑下的可信计算平台,以提高整体的安全性。可信计算现在已经成为了计算机安全领域的主要发展趋势之一。我国的可信计算技术与产业正处于蓬勃发展的阶段,随着可信计算产品的逐渐成熟,可信计算平台的应用将会越来越广泛。采用可信计算平台能够极大地增强信息系统的安全性,这样就需要对可信计算系列产品中的高可信软件进行测评,从而提高信息系统的安全。软件质量问题一直是工业界和学术界共同关注的问题,软件测试是软件质量保障中的一项关键技术,其目的是为了尽可能的发现并纠正软件中的错误。本文主要从可信软件分析、测试用例约简生成、非功能属性的分析与评估等方面对可信软件进行分析与测试。本文第一个方面是可信软件分析。针对可信软件的高等级安全需求,在安全性测试过程中所遇到的常见问题,提出改进的指向分析方法,该方法基于改进的静态单赋值方法,能够有效地提高指针变量在解引用过程中的指向精度,减少指向集合的大小,为路径选择和测试用例生成提供依据。在程序的路径选择方面,提出一种改进的数据流分析方法,通过引入变量的定义-使用函数,提高变量在分支路径中取值的精度,可以有针对性地设计测试用例,减少后期维护的难度。本文第二个方面是可信软件测试用例约简生成。主要针对大规模软件系统状态迁移数量庞大,容易导致状态空间爆炸的问题,提出一种基于谓词抽象的测试用例约简生成方法,该方法依据给定的谓词集合对软件系统的状态空间进行等价类划分,通过状态集合之间的映射得到约简的抽象状态,并以抽象状态之间的迁移关系作为测试用例约简生成的基础。仿真实验结果表明,该方法可以有效地对系统状态进行约简,并生成规模较小的测试用例集。本文第三个方面是可信软件的非功能属性分析和检验。可信软件具有非功能属性非常多,它们往往是对功能属性的一种约束,从可信软件可靠性的角度提出一种可测性和可靠性之间关系的形式化描述方法,可以帮助对非功能属性间接地进行测试。为了对非功能属性进行评估,以可靠性为研究点,提出一种可信软件模型可靠性评估方法,从较小粒度上对各个组件进行评估,进而获得整个软件系统的可靠性,同时得出可行软件的可靠性与各个组件的可靠性以及重要程度紧密相关的结论,并以实验的形式证实了该结论。