首页 > 范文大全 > 正文

信息安全中的可信软件编程计算研究

开篇:润墨网以专业的文秘视角,为您筛选了一篇信息安全中的可信软件编程计算研究范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:针对IT产业迅速发展、互联网广泛应用和渗透,各种各样的威胁模式不断涌现的现状,结合传统软件质量的对比分析,提出了信息安全中的重要因素 ——可信软件编程计算。重点研究代码可信性分析、计算和度量方面,涵盖软件的复杂性、可用性和可靠性等质量特性及可信属性,对于软件质量保证和信息安全具有非常重要的现实意义和实用价值。

关键词:信息安全;可信软件;代码可信性;可靠性测试;质量分析

中图分类号:TP311 文献标识码:A DoI: 10.3969/j.issn.1003-6970.2012.04.034

【Abstract】with rapid development of It industry, wide use of internet in all walks of life, and the increasing emergence of various threat models, this paper proposes an important factor in information security— trusted Software Programming Computing after a comparison with traditional software quality analysis. Quality attributes and credibility attributes (software complexity, software availability, software reliability and so on) are studied with a focus on the analysis, calculation and measurement of code redibility. this technology expects great utility value to software quality assurance and information security.

【Key words】information security,trusted software, code credibility,reliability test,quality analysis

信息安全是指信息网络的硬件、软件及其系统中的数据受到保护,不受偶然的或者恶意的原因而遭到破坏、更改、泄露,系统连续可靠正常地运行,信息服务不中断。信息安全的实质是要保护信息系统或信息网络中的信息资源免受各种类型的威胁、干扰和破坏,即保证信息的安全性。根据国际标准化组织的定义,信息安全性的含义主要是指信息的完整性、可用性、保密性和可靠性。

信息安全具有四个侧面:设备安全、数据安全、内容安全与行为安全。[2]可信计算对应行为安全,强调系统服务及行为的综合可信。如何提供可信的信息安全服务,如何确保用户得到可预期的安全,都已成为业界关注的问题。信息安全要从源头、体系、行为抓起,争取实体安全结果的可控与可预期,而这正是可信计算的理念。在信息安全领域,可信计算研究主要着力于解决信息世界当前所面临的普遍的安全威胁和不可信危机。

可信计算技术是信息安全领域一个支撑性的安全技术。从技术角度看,可信计算定义为“系统提供可信赖的计算服务的能力,而这种可信赖性是可以验证的”。比尔·盖茨认为:“可信计算是一种可以随时获得的可靠安全的计算,并包括人类信任计算机的程度。”

目前国内外可信计算的研究主要集中在硬件层面,软件可信作为可信计算的一个分支, 还没有得到应有的重视。可信软件是指软件系统的运行行为及其结果总是符合人们的预期,在受到干扰时仍能提供持续的服务。造成软件不可信的主要原因有以下三点:

(1)软件开发的各个阶段都需要人的参与。因为人的工作和通信都不可能完美无缺,出现错误是难免的。人们在软件设

内部质量的测量和评价用于开发阶段的非执行的软件产品。外部质量的测量和评价通常在测试阶段和运行阶段使用。内部质量和外部质量可统称为系统质量。使用质量是指软件产品用于指定的使用环境和条件时,从用户角度体验到的质量,只能在真实的系统环境下获得。使用质量的属性包括软件在特定环境中能达到的有效性、生产率、安全性和满意度等指标,而非软件自身的性质。

传统的软件质量研究主要围绕其内涵“是什么”和保障手段“怎么做”两个核心问题。研究内容偏重于软件系统本身且更关注系统质量的保障,研究思路一般是按照“以系统质量为核心,兼顾使用质量”。

质量研究通常只针对具体的质量属性,较少考虑不同质量属性的综合。软件质量内涵主要研究正确性、可靠性和安全性等具体的质量属性和指标,而且这些属性的关注点各有不同。

软件可信性是软件运行时使用质量属性的综合,决定了软件在实际条件下使用时,满足明确和隐含要求的程度。它包括可信任度、可信赖性及高自信力三方面内容,包含的属性如图4所示。有些可信性属性采用了相同名字,但是其内涵和定义并不相同的。它们体现了使用者的感受,包含较多主观和个性化的因素。

软件可靠性牵涉到软件生产的全过程,最终落实到软件产品上。保证软件可靠性的关键步骤是软件测试。软件测试与软件可靠性紧密相关。软件中隐藏的故障数目,直接决定软件的可靠性。

软件可靠性测试是指为了达到或验证用户对软件的可靠性要求而对软件进行的测试,是一种有效的软件测试和软件可靠性评价技术。软件可靠性测试可以有效地发现程序中影响软件可靠性的缺陷,从而实现可靠性增长。尽管软件可靠性测试也不能保证软件中残存的错误数达到最少,但它可以保证软件的可靠性达到较高的要求。

软件可靠性测试是获取软件可靠性估算数据的重要手段,它通过发现软件系统可靠性缺陷,为软件的使用和维护提供数据,确认软件是否达到可靠性的定量要求。通常基于是类似于硬件操作剖面上的统计测试方法,即被测软件操作剖面的统计测试方法。但这种方法在操作剖面确定后如何针对由于长期使用软件性能下降,甚至完全失效这种严重影响软件可靠性的问题上有一定的不足,而解决这一问题的有效方法就是基于操作剖面的压力测试或疲劳测试方法。这种方法针对软件有别于硬件的自身特性,确定重要的压力测试点,并在这些压力测试点上分别进行相应类型的压力测试,以保证软件经过长时间运行后,性能不会下降,失效不会产生,来达到提高软件可靠性的目的。这种面点结合、互相补充的测试思想丰富了软件可靠性测试方案。