1、SaaS应用中数据完整性保护关键问题的研究指导教师:李庆忠 报 告 人:李 琳2010-10-25报告提纲n研究背景n研究现状n研究内容n研究思路n研究进度研究背景nSaaS模式lSaaS提供商为企业搭建信息化所需要的所有网络基础设施及软件、硬件运作平台,并负责所有前期的实施、后期的维护等一系列服务,企业无需购买、构建、维护基础设施和应用软件,即可通过互联网使用信息系统。l对于许多中小型企业来说,SaaS模式是采用先进技术的最好途径。在这种模式下,只需要支出一定的租赁服务费用,通过互联网便可享受到相应的硬件、软件和维护服务,享有软件使用权和不断升级,是网络应用最具效益的营运模式。lSaaS模式
2、的兴起与普及为软件产业的发展带来了新的契机,但也数据安全带来了新的挑战,尤其是数据存储完整性方面。SaaS中数据存储完整性nSaaS中服务、数据库都部署在租户非可控的环境中,不可信服务提供商有可能破坏租户数据完整性l数据删除u恶意DBA为了减少维护费用,丢弃租户长期不用的数据l数据篡改uDBA恶意隐瞒租户数据丢失事件,伪造租户数据nSaaS模式必须具有租户数据的完整性的保障机制系统模型SaaS数据完整性l特点l租户端没有数据,也没有应用逻辑,租户操作都在平台上进行l要求l租户使用数据时,能够判断数据完整性l可信第三方进行完整性验证,租户数据更新时,验证信息要在可信第三方同步更新l可信第三方要为
3、多个租户提供完整性验证工作,验证效率高,验证信息维护简便报告提纲n研究背景n研究现状n研究内容n研究思路n研究进度多租户数据库n德国慕尼黑工业大学(Technische Universitt Mnchen ,TUM)的Stefan Aulbachl2007年对实现多租户数据库的三种方式进行了比较1。l2008年SIGMOD2008上分析了实现多租户共享数据库的几种模式映射方式,并提出了块折叠的方法2。l2009年SIGMOD2009上给出了不同多租户数据库设计方法的实验分析,指出目前还没有合适的SaaS多租户数据库设计方法,并提出了理想SaaS数据库设计的一些建议3。nSalesforce公司
4、l在SIGMOD2009中介绍了其F的元数据驱动的多租户共享数据架构4。n参考文献l1 Dean Jacobs, Stefan Aulbach: Ruminations on Multi-Tenant Databases. BTW 2007:514-521l2 Stefan Aulbach, Torsten Grust, Dean Jacobs, Alfons Kemper, Jan Rittinger: Multi-tenant databases for software as a service: schema-mapping techniques. SIGMOD 2008:1195-1
5、206l3 Stefan Aulbach, Dean Jacobs, Alfons Kemper, Michael Seibold: A comparison of flexible schemas for software as a service. SIGMOD 2009:881-888l4 Craig D. Weissman, Steve Bobrowski: The design of the multitenant internet application development platform. SIGMOD 2009:889-896数据篡改nRSA实验室、EMC公司l2007年
6、,A. Juels等提出可回收性证据1 ,将称为岗哨(sentinels)的特殊块随机插入数据文件F中以实现检查目的。客户端发出的查询的种类数目是之前约定好的,而且事先计算好的岗哨(sentinels)的引入阻碍了动态数据更新的实现。另外,不支持公共可验证性。 n美国约翰霍普金斯大学l2007年,Giuseppe Ateniese等利用基于RSA的同态标签审计外包数据,提供公共可验证性(public verifiability) ,没有考虑dynamic data operations2。n伊利诺理工大学、伍斯特理工学院 l2009年,C.Wang、Wenjing Lou等在分布式场景下考虑动
7、态数据存储,提出的挑战-响应协议不仅可以确认数据正确性而且可以定位可能的错误,但仅仅考虑了对动态数据操作的部分支持,并且定位粒度较大3。l2009年,Qian Wang、Wenjing Lou等同时考虑了public verifiability和dynamic data operations4,但是研究主要面向文件系统管理。n中国人民大学l5针对外包数据库数据完整性,在密文数据分组索引的基础上,利用无碰撞增量式哈希,提出一种建立在密文数据上的适用于动态数据库的完整性验证方法。n参考文献l1 A. Juels, B. S. Kaliski, Jr. PORs: proofs of retriev
8、ability for large files. In Proc. Of CCS07, New York, NY, USA: ACM,2007,pp.584-597l2 Giuseppe Ateniese, Randal C. Burns, Reza Curtmola, Joseph Herring, Lea Kissner, Zachary N. J. Peterson, Dawn Xiaodong Song: Provable data possession at untrusted stores. ACM Conference on Computer and Communications
9、 Security 2007:598-609 l3 C. Wang, Q. Wang, K. Ren, W. Lou. Ensuring Data Storage in cloud computing. In Proc. Of IWQoS09, Charleston, South Carolina, USA, 2009l4 Qian Wang, Cong Wang, Jin Li, Kui Ren, Wenjing Lou: Enabling Public Verifiability and Data Dynamics for Storage Security in Cloud Computi
10、ng. ESORICS 2009:355-370l5 杨平平, 杜小勇, 王洁萍.DAS 模式下基于密文分组索引的完整性验证. 计算机科学与探索.2010.04(05),426-436.数据删除n针对查询结果的完整性,中国人大对外包数据库展开了一定的研究,1中利用保存一定信息的方法,在一定概率上保证查询结果的完整性,2则除了正确性和完备性外,添加了时效性验证,确保得到的数据是最新的。3 针对恶意删除行为, 一种基于生成检测查询的数据有效性验证方法,但是该方法有一定的失败率。n4采用基于Merkle hash tree的方法来鉴定查询结果的完全性。但是由于这种方案也是利用了根Merkle has
11、h 树的节点签名,所以也存在前一个方案中相似的不足之处。而且,这种方案执行一些类型的查询操作时,在客户端的网络和CPU开销都很高。在一些极端情况下,甚至和在客户端本地进行查询处理的开销一样高。nPang et. al.5采取对 任一条记录采用聚集签名的方法,即通过与该条记录相邻的两条记录的信息来对该条记录进行签名。但是,只能处理连接(join)操作中的主键/外键连接,因为只有这种连接操作产生的数据纪录是连续的。n参考文献l1 Min Xie, Haixun Wang, Jian Yin, Xiaofeng Meng: Integrity Auditing of Outsourced Data.
12、 VLDB 2007:782-793l2 Min Xie, Haixun Wang, Jian Yin, Xiaofeng Meng: Providing freshness guarantees for outsourced databases. EDBT 2008: 323-332l3 闫巧芝 王洁萍 杜小勇. DAS下一种基于生成检测查询的数据有效性验证方法. 第二十六届中国数据库学术会议, 2009,软件学报, 增刊l4 Feifei Li, Marios Hadjieleftheriou, George Kollios, Leonid Reyzin: Dynamic authenti
13、cated index structures for outsourced databases. SIGMODl5 HweeHwa Pang, Arpit Jain, Krithi Ramamritham, Kian-Lee Tan: Verifying Completeness of Relational Query Results in Data Publishing. SIGMOD 2005:407-4182006:121-132报告提纲n研究背景n研究现状n研究内容n研究思路n研究进度研究内容1.基于可信第三方的SaaS数据存储完整性保护架构l第三方验证信息同步更新l第三方维护开销优化
14、2.针对数据篡改的完整性保护l防止恶意DBA直接删除租户数据3.针对数据删除的完整性保护l防止恶意DBA伪造篡改租户已有数据4.数据恢复l数据完整性遭到破坏时的数据定位和恢复5.基于SaaS存储完整性保护架构的数据完整性保护原型报告提纲n研究背景n研究现状n研究内容n研究思路n研究进度元数据驱动的多租户数据存储架构1. 基于可信第三方的SaaS数据存储完整性保护架构3.周期性完整性检验2.数据更新写回时将更新校验信息发送给可信第三方1.使用数据时,判断数据完整性2. 针对数据篡改的完整性保护l基于数据分块构造验证树,该验证树支持数据增量更新u根据元数据描述,对租户定义的每个数据分块,利用增量式
15、哈希方法生成该分组上的完整性验证信息,建立验证树 3.针对数据删除的完整性保护l基于租户存储模式,建立数据分块的完整性校验链l基于元数据的共享存储中,对数据分块签名时,将相邻数据分块信息同时进行签名,构建数据分块签名链l第三方周期验证租户数据是否被删除4.数据恢复1.定位,在数据分块验证基础上,进行定位a)针对单属性数据,建立副本b)根据冗余副本,可以计算出两个值X和Y,并且X和Y具有函数映射关系Y=F(X);c)如果数据遭到篡改, Y=F(X)不成立2.恢复l确定完整性破坏数据后,根据SaaS数据存储备份进行数据恢复工作5.SaaS数据完整性保护原型n基于以上关键问题的研究和解决,构建面向SaaS应用的数据完整性保护原型系统报告提纲n研究背景n研究现状n研究内容n研究思路n研究进度研究进度研究进度及具体时间安排起讫日期主要研究内容预期结果2009年9月-2010年12月论文阅读及选题完成开题报告2011年1月-2011年4月针对数据篡改的完整性保护发表相关论文2011年5月-2011年8月针对数据删除的完整性保护发表相关论文2011年9月-2011年12月 细粒度定位发表相关论文 2012年1月-2012年2月 系统原型设计 完成系统原型 2012年2月-2012年3月 撰写博士论文提交博士论文恳请各位老师多提宝贵意见