题目: How to Build a Trusted Database System on Untrusted Storage
作者: Umesh Maheshwari, Radek Vingralek, William Shapiro
单位: STAR Lab, InterTrust Technologies Corporation, Santa Clara
出版: OSDI 2000
介绍:
- 应用程序需要在存储设备上维护敏感状态,但是这些设备未必可信。
- 本文提出TDB(可信数据库)在不可信存储设备上维护一小块可信区域。该区域经过加密和验证,保证不可信程序不能在不被发现的情况下修改存储。
- 该数据库使用底层实现,同时保护数据和元数据。初步实验说明TDB在性能上胜过了当时常见的嵌入式数据库。加密和哈希引入的开销在6%左右。
可信处理环境:
将CPU和内存视为可信,外存储不可信。可以等价于现有SGX-CPU和SGX-EPC内存储。
未来工作:
- 将目标定位为不可信服务器;
- 实现可信换页:现有设计将整个运行时保护在CPU和内存中,但换页机制可能将部分状态泄露到不可信存储中,可以使用page fault handler实现加密换页;
- Steal buffer management:当前修改后的对象直到transaction commits才从缓存写出,在大数据处理下性能表现不好。
- Logical logging:逻辑化日志可以减少需要加密、哈希的数据容量,需要修改chunk store的实现。
体会:
- 本文的威胁模型和SGX一样,即如何在不可信系统上保证可信数据库的secrecy和tamper detection。