安全软件体系结构的形式化方法研究

被引量 : 10次 | 上传用户:lovegyyf
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
基于组件的软件体系结构是软件工程研究领域中的一个新的而且重要的课题。基于组件及其装配连接设计出的体系结构可以提供更丰富的设计信息,它除了可以描述设计模块之间的交互作用关系之外,还可以描述设计模块之间的约束关系、利用某些预先定义好的计算模型分析每个计算模块应具有的特性,并进一步分析体系结构的整体特性。软件体系结构反映了在一定构形下软件系统所要得到的重要性质(如安全性),它为软件设计和构造提供早期决策。近年来许多基于软件体系结构描述语言和体系结构风格的支持工具和属性模型纷纷涌现。为一个复杂系统提供形式化的体系结构描述,为所有参与系统设计、实现、维护的人员提供精确的系统结构描述文本,能在系统结构层经济省时地提供分析系统性质的可能性,进行早期错误检查。软件安全性研究同样是目前比较热和新的研究领域,研究在软件体系结构中对安全性这种非功能属性如何给予描述、分析并验证是一项十分有意义的工作。软件的安全性是软件产品的质量属性之一,软件安全性保证是指在安全临界系统(safety critical system)的软件开发生命周期中进行的一系列质量保证活动,目的在于消除隐患。对于软件体系结构的安全属性,我们可以在形式化描述的基础上给出精确的形式化证明或给出其反例。软件体系结构的形式化模型有基于操作的模型、基于进程代数的模型、基于逻辑的模型、基于网络的模型。逻辑推理的方法有其自身的不足,模型检测的方法遇到的最大问题是状态空间的爆炸。目前的软件工具大多仅限于原型系统,有其应用的局限性。从数据结构和行为两方面来刻画软件体系结构模型的本质,这种方法更全面,用进程的行为来证明安全性更合理。目前软件体系结构在学术界的理论研究尤其是形式化方面的工作还相对缺乏,将安全性和软件体系结构结合起来的工作更稀少。在一个形式化的框架内对软件体系结构的安全性进行描述、分析和验证可以保证和维持基于构件的一类软件体系结构开发的一致性和完整性。因此使用形式化方法研究安全组件以及其交互形成的软件体系结构的安全特性具有重要意义和实用价值。针对软件体系结构的安全性问题,本文对描述模型和分析验证的方法进行了系统的研究和探讨,发展和完善了基于组件的软件体系结构模型性质的有关理论和方法,并将其应用到实际问题中。文中首先分析和总结、比较了现有的安全软件体系结构的形式化研究方法和技术,然后给出了安全软件体系结构的形式化框架。并在此过程中逐步明确:使用基于组件的软件体系结构来构造软件系统,需要建立软件体系结构模型,其本质是利用形式化方法建立形式化模型来描述和验证复杂系统,形式化方法严格的数学基础使得系统具有较高的可信度和正确性,需要用它来详细分析组件的行为、研究其同步和通信的关系。系统描述基于组件的软件体系结构模型和组件的构成语法和结构、操作、行为语义。其次,本文针对如何在安全软件体系结构中建立行为模型和静态结构模型、功能模型、过程模型的方法展开讨论。详细介绍如何使用状态转换系统描述安全软件体系结构的行为模型,包括建模方法的符号表达、建模步骤等。定义了稳定状态、稳定的状态转换、转换可达、直至形成系统的行为树,并建立系统的Kripke结构;通过证明状态转换系统的谓词转换器上不动点的存在来实现体系结构模型的安全性。由于进程代数的描述语言具有描述组件并发行为的能力,加上其严格的代数性质和强大的可借鉴的标准等价技术工具,文中重点使用它来进行基于组件的软件体系结构的安全性研究。使用进程代数的语言描述结构和过程模型(包括语法和操作语义),并在此模型基础上给出安全软件体系结构的描述规约,规约有文本表示和图形表示两种形式。进程代数语言描述的软件体系结构模型依靠构件类型、体系结构类型和构件实例的限制语义定义得到对静态操作符引起的交互行为语义;作为补充,主要从语法的角度建立静态结构模型来定义软件体系结构,它借鉴几种类型的文法对构件、连接方式、配置方式进行规则制定、形成软件体系结构的构成语法;功能模型是操作逻辑及其与其他形式化方法的结合,它使用时序逻辑描述系统安全性;为了更有说服力,文中还对常用的体系结构描述语言UML和Wright(另一种基于进程代数的语言)的系统软件体系结构建模能力进行分析,并将它们和其他基于进程代数的体系结构描述语言进行比较,并认为UML擅长于描述体系结构的静态结构如对组件、连接件的描述、对动作特定顺序的描述,不同视图可以从不同层次对体系结构进行描述,还能够通过版型(stereotype)的扩展机制实现进程代数语言描述的体系结构的静态建模,但是其描述动态结构能力差,最终不适合用它全面构造软件体系结构模型。本文中间部分重点介绍如何使用基于进程代数的软件体系结构描述语言和其标准观察等价技术对体系结构进行相容性检查和互操作性检查,并且通过扩展体系结构描述语言将体系结构的相容性和互操作性检查扩展到不同风格的体系结构上。它们的正确性评估分别基于一个压缩代理系统和一个导航控制系统。该方法有行为和代数的本质,其中一个体系结构的描述仅仅由有固定行为的组件和连接件的类型以及拓扑结构的约束组成。这为组合、分层、图形化的体系结构描述语言(为了基于组件的软件系统族的规约和分析所开发的)提供了一个统一的框架,它可以保证在一个与一个给定的安全的组件交互的软件组件集合之内保持安全性,并扩展这两种检查到整个体系结构中。该方法建立了软件体系结构模型并通过相容性和互操作性检查保证了模型的安全性,其中所有检查都依赖于弱互模拟等价的性质,由于效率与/或诊断相关的原因,它比直接证明软件组件集合更方便,这一点已经得到证实。作为对基于进程代数的描述语言的补充,本文还针对简单的两组件安全通信的情况引入基于组件的软件体系结构的另一种安全模型。该模型以信任逻辑为基础进行安全性分析,给出安全构件的正常交互协议(包括协议的描述、分析、验证),以及当非法入侵构件存在时构件异常交互的协议,以组件通过连接件进行安全信息交流的情况为例建立软件体系结构的安全模型,并且验证了在该安全协议基础上建立的安全软件体系结构模型中,每一次模型实现都可以得到良好的安全性保证。本文应用部分是按照在安全控制计算机系统的实例上层次式地建立系统软件体系结构的安全模型的过程逐步展开的。模型分为整个系统的软件体系结构模型、安全控制操作系统的模型、基于安全软件模型的访问控制部分软件体系结构的模型共三层。基于给定的安全标准,分析访问控制的安全模型包括自主访问控制、强制访问控制、基于角色的访问控制和信息流等安全模型。对这些基本模型的数学性质的详细研究为新的安全模型的建立提供了坚实基础。安全操作系统软件体系结构模型的建立是分几步走的:首先建立访问控制系统的体系结构缩减流图,详细分析原模型的局限性后通过举例说明来明确模型安全改造的方向;然后进行原体系结构模型的相容性检查,发现危险状态后分析引发危险的交互,反复重定义安全组件(判定组件和实施组件)的行为,指出引发危险的原因实际上是不合理的组件划分和细分后可能出现的违反组件互操作性的交互所造成的;最后详细论述经过改造后得到的新模型的安全性。安全操作系统的实现以原Linux操作系统为基础,其强制访问控制机制和信息完整性保护、增加安全标签的保护等方法都属于操作系统功能增强改进的方法,该方法在整个安全操作系统上的实现依赖于安全调用基于增强模型的访问控制机制。增强后的安全操作系统的全局体系结构图说明系统完全符合Flask结构。此外还以登录过程为例详细描述安全系统策略和技术的有效实现。本文的最后介绍该安全方法的应用和外延。将安全软件体系结构模型和方法和软件复用技术相结合,具体有组件的安全复用技术和软件体系结构的安全复用技术,并给出安全复用方法的定义和描述以及方法的具体实施;在文中还对安全方法的应用进行扩充,将之应用于安全组件的互操作性、交互隐私性、原子性等安全相关的非功能属性的分析。文末对论文的主要贡献进行了总结并提出了未来将开展的研究。
其他文献
温胆汤首见于《备急千金要方·胆腑》篇,用“治大病后,虚烦不得眠”。笔者以温胆汤为主治疗各种心脏疾病,如冠心病、心律失常、慢性心功能不全、高血压病、心肌病以及心
计算机技术的进步和城市化进程的加快推动了城市排水系统理论和计算方法的飞速发展,运用地理信息系统技术和水力水文学模型来辅助城市排水管网的规划、设计和改造正日益成为一
80年代末,全球国外直接投资额累计已达到15000亿美元。进入90年代后,国际间直接投资规模更加扩大,并呈现高速增长的趋势。中国自改革开放以来,国外投资源源不断进入国内。外
漠斑牙鲆(Paralichthys lethostigma)原产于美国,具有生长快、品质优、适应性广、抗逆能力强等特点,在国际市场上倍受消费者的青睐,具有极高的市场价值和推广价值,该品种的引
随着纺织行业发展的逐步推进,全自动电脑横机的研究与应用成为新的热点,横机伺服驱动系统作为横机工作的主要执行机构,对提高横机工作效率有着至关重要的作用。本文设计的基
据美国医学学会报道,我国成人糖尿病患者数估计超一亿,已成为糖尿病的人口大国,可能已经达到“警戒级别”。成人糖尿病患病率近年来上升至11.6%,其中男性糖尿病患病率为12.1%
蛋白类复合膜以其营养丰富和隔油阻气等良好性能,成为研究制备可食膜的首选材料。酪蛋白中含有人体必需的氨基酸,是一种全价蛋白质,酪蛋白肽键的空间结构主要以卷曲形式存在,
随着人类对能源的需求日益增加,化石能源的储量正日趋枯竭。能源需求、环境保护和社会发展的巨大压力使大力开发太阳能资源变得尤为重要。与传统的高压远距离输电系统相比,利
根据王琦教授的中医体质分型理论,将人的体质分为9种体质类型。调查发现86例少弱精症患者体质类型分布有差异。其中湿热质比例最高,占24.42%;其次是阴虚质和/兼湿热质,占15.1
在高等数学中,我们经常会遇到多元函数的最大值、最小值问题,多元函数的最值问题与多元函数的极大值、极小值有密切联系。本文主要研究多元函数极值的几种求法及其应用。