Cerberus:安全高效飞地内存共享的正式验证方法
174 浏览量
更新于2024-06-17
收藏 872KB PDF 举报
"Cerberus:一种安全高效的飞地内存共享的正式方法"
本文介绍的"Cerberus"是一种创新的正式方法,旨在解决硬件安全区(也称为飞地)中的内存共享问题,同时保持安全性和高效性。硬件安全区通常依赖于非重叠内存模型,确保每个物理地址只映射到一个特定的安全区,以实现严格的内存隔离。这种隔离虽然增强了安全性,但也限制了飞地程序的性能和可编程性。
Cerberus的核心是设计了一个简单而强大的共享模型,它允许在多个安全区之间共享和不可变地使用内存,而不削弱现有的安全保证。这一方法扩展了安全区平台,引入了额外的操作,使得内存能够在保持安全性的前提下进行共享。为了减轻形式化验证的复杂性,研究团队对比了多种共享模型,并选择了最优方案。
Cerberus建立在名为可信抽象平台(Trusted Abstract Platform, TAP)的现有正式模型之上,并对其进行了增量验证。通过扩展后的TAP模型,他们能够正式验证Cerberus的设计不会破坏飞地的安全特性,即使在启用内存共享的情况下也是如此。特别是,他们证明了Cerberus满足安全远程执行(Secure Remote Execution, SRE)的属性,这是衡量安全执行的关键标准。
为了证明其可行性,Cerberus被实施在RISC-V Keystone这个现有的飞地平台上。这一实现进一步巩固了Cerberus作为安全高效的内存共享解决方案的地位。
文章的关键词包括安全性、形式化方法、编程语言、安全远程执行等,强调了在安全计算领域的重要进展。论文的贡献归功于两位主要作者,同时也遵循了知识共享署名国际4.0许可协议,允许合理使用和分享研究成果。
Cerberus为硬件安全区提供了一种新的内存共享策略,通过形式化的方法确保了安全性和效率,为未来飞地系统的设计和优化提供了重要的理论基础和技术支持。
2021-04-25 上传
2021-06-28 上传
2021-02-03 上传
2021-02-09 上传
2021-02-05 上传
2021-03-30 上传
2021-03-25 上传
cpongm
- 粉丝: 5
- 资源: 2万+
最新资源
- IEEE 14总线系统Simulink模型开发指南与案例研究
- STLinkV2.J16.S4固件更新与应用指南
- Java并发处理的实用示例分析
- Linux下简化部署与日志查看的Shell脚本工具
- Maven增量编译技术详解及应用示例
- MyEclipse 2021.5.24a最新版本发布
- Indore探索前端代码库使用指南与开发环境搭建
- 电子技术基础数字部分PPT课件第六版康华光
- MySQL 8.0.25版本可视化安装包详细介绍
- 易语言实现主流搜索引擎快速集成
- 使用asyncio-sse包装器实现服务器事件推送简易指南
- Java高级开发工程师面试要点总结
- R语言项目ClearningData-Proj1的数据处理
- VFP成本费用计算系统源码及论文全面解析
- Qt5与C++打造书籍管理系统教程
- React 应用入门:开发、测试及生产部署教程