首页> 外文OA文献 >Formal Verification of a Component Platform
【2h】

Formal Verification of a Component Platform

机译:组件平台的形式验证

摘要

The function of software used to be calculation; mechanising what was previously done by hand. Now it runs our communication networks, mass transportation and medical support. Yet we still build large software systems as if they were small, easily comprehensible tools.The right to manage our safety and security should not be handed over lightly. When a program has the ability to compromise our security or injure us, we should demand evidence of its correctness. Formal software verification has demonstrated how to reliably and repeatedly build safe and secure high-assurance systems, to a standard not achievable using other techniques. Yet it remains underused due to perceptions that it is expensive and time intensive to apply.In this thesis we demonstrate how to scale formal software verification beyond its current limits using component-based software engineering. By leveraging the strong isolation boundaries made possible by the CAmkES component platform operating on the seL4 microkernel, we decompose system verification along lines that correspond to the system architecture. The parallels between proof obligations and system architecture aid the designer’s intuition and allow easing verification challenges through architectural refactoring.To uphold the engineering abstraction that a component platform provides, we demonstrate a fully automated process for verifying functional correctness of platform-generated code and the correct initialisation of a CAmkES system. The system designer no longer needs to trust that the platform’s mechanisms do what they claim, as is the case with other existing component platforms. We also fully automate the production of an access control policy for a component-based system, allowing the designer to move seamlessly from architecture layout to security analysis, with knowledge that our verification guarantees a faithful translation.The techniques in this thesis represent novel contributions to the fields of component-based software and formal verification. To our knowledge, they provide the most trustworthy development environment for high-assurance, componentised software systems in existence today. By extending the power and scope of formal verification, we lower the cost of its application and enable the development of safer and more secure software.
机译:用于计算的软件功能;机械化以前手动完成的操作。现在,它运行着我们的通讯网络,大众运输和医疗支持。但是我们仍然在构建大型软件系统,就像它们是小型的,易于理解的工具一样。管理我们的安全和保障的权利不应轻易移交。当程序有能力损害我们的安全或伤害我们时,我们应该要求其正确性的证据。正式的软件验证已演示了如何可靠和重复地构建安全可靠的高保证系统,达到使用其他技术无法实现的标准。然而,由于人们认为应用程序昂贵且费时,因此仍然没有得到充分利用。在本文中,我们演示了如何使用基于组件的软件工程将形式化软件验证扩展到当前的范围之外。通过利用在seL4微内核上运行的CAmkES组件平台可能实现的强大隔离边界,我们沿着与系统体系结构相对应的路线分解了系统验证。证明义务与系统体系结构之间的相似之处有助于设计人员的直觉,并通过体系结构重构来缓解验证挑战。为了支持组件平台提供的工程抽象,我们演示了一种用于验证平台生成代码的功能正确性和正确性的全自动过程CAmkES系统的初始化。系统设计人员不再需要像其他现有组件平台那样相信该平台的机制能够实现其宣称的功能。我们还完全自动化了针对基于组件的系统的访问控制策略的生成,使设计人员能够在确保验证可靠的前提下,从架构布局无缝过渡到安全性分析。基于组件的软件和形式验证的领域。据我们所知,它们为当今存在的高安全性,组件化软件系统提供了最值得信赖的开发环境。通过扩展形式验证的功能和范围,我们降低了其应用成本,并能够开发更安全,更安全的软件。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号