Secure Query Processing with Data Interoperability in a Cloud Database Environment (SIGMOD 2014)

云计算技术的发展,使得云端部署数据库服务(DBaaS,Database asa Service)成为可能。亚马逊和微软已经发布了各自的商业云数据库RDS[1]和SQL Azure[2]。在DBaaS支持下,数据拥有者(DO,Data Owner)可以把自己的数据上传到机器性能较高并且提供高级数据库软件的服务提供商(SP,ServiceProvider),享受SP的存储、计算和管理服务。这其实是一种服务外包(outsource)的思想。服务外包有很多好处,比较突出的优点是计算资源充足、可扩展性好,能够应对企业中突发性的负载需求。另外,服务外包是多租户的模式,在应对突发性负载方面,比起用户自行搭建大规模云平台,在某种程度上更能节省成本。

但是,现有的对于DBaaS的研究工作主要集中在实时迁移[3,4]、负载增强[5,6]、资源管理[7]和虚拟化[8]等方面,对于DBaaS的数据安全和隐私保护的研究工作仍然相对较少(一些新技术最初很少会把数据安全和隐私问题放在第一位),并且主要是通过以下三种手段(这里我们假设DO端是可靠的,SP端是不可靠,随时会窃取你的数据):

第一种:数据在DO端加密后传输到SP端,SP端只是提供基于加密数据的存储和管理服务(备份和恢复),不提供计算服务,数据计算时要将加密数据搬运(ship back)到DO端解密后再行计算,极大了浪费了SP端的计算资源。例子,oracledatabase 11g 的透明数据加密(TDE)。(备注:SP端之所以不能提供计算服务,是因为这一阶段技术上还没法使得数据在加密状态下计算与非加密状态下的计算等价,数据计算必须在解密状态下进行,而在SP端解密会泄露这些机密数据,故要ship back到DO端解密计算)。

第二种:为了尽可能地利用SP端的计算资源, 完全同态加密(FHE,Fully Homomorphic Encryption)[9]这种加密模式被提出来,FHE支持数据在密文状态下进行任意形式(整数、实数加减乘除比较,字符串比较。。。等等,特别多不一一列举)的计算,这种计算的结果解密后能够等价于明文下计算的结果。但是FHE过于理想化,具有很强的理论意义,在实际生产环境下,计算开销太大[10],不work。

第三种:研究人员发现实际情况下,没有必要支持任意形式的加密计算,只需要支持一部分就可以了,于是乎就提出来了部分同态加密(PHE,Partially HomomorphicEncryption)[11-14]这种加密模式。例如,OPES是一个针对密文排序计算的解决方案[11];RSA只是一个针对密文乘法计算的加密解决方案[12];Paillier的加密系统是针对加法的加密解决方案[13];PEKS是针对字符串关键词查找的加密解决方案[14]。PHE的解决方案的缺陷就是他只针对某种特定的计算,而复杂的计算常常涉及到这些特定计算的组合,PHE方案在复杂计算场景下不具备互操作性。(互操作性是指,一种计算的输出可以作为另一种计算的输入,这里不同计算采用不同的加密模式,不具备互操作性)

为了摆脱FHE和PHE的限制,本文采用了安全多方计算(SMC,SecureMultiparty Computation,姚期智院士的早年之作)的秘钥共享思想[15],即将数据的明文分解成多个share,每个share分发给一个party,当然了每个party拿到share之后是不能恢复出完整的数据的,但是可以对这部分share进行计算,最终将多个party计算的结果通过一个函数汇总处理得到最终结果。本文根据这种思想,将敏感数据分成两个部分,一部分是column key,用来加密和解密,由数据拥有者(DO)持有;另一部分是加密的数据,由服务提供商(SP)持有。秘钥共享是在数据库列级进行的,每列共享一个column key,另外,每行随机生成一个row-id,每个元素通过column key和row-id被加密。(这里涉及加密协议,不详述)

本文为数据库设计特殊的安全算子,支持SP端数据在加密状态下计算。主要特点是采用了统一的加密模式,算子之间具有互操作性。另外,本文根据实际情况,即DO端大部分数据是非敏感的不需要加密的数据,设计实现的算子可以应对敏感数据和非敏感数据混合场景下的计算。

本文缺陷(局限性): 1)数据加密是通过模运算进行的,安全算子的实现只是针对整型integer实现的,字符串类型和实数类型需要做一些转换,可能会影响精度;2)有些数学计算可能不能直接支持,需要一些其他手段。比如开平方的计算,计算出来可能是小数,这种只支持整型的加密协议搞不定实数计算。可能解决方案:一是把所有整数的开平方预先计算出来存起来,计算时去关联结果,二是查询重写的方法;三是实在不行搬运到DO端计算。论文还提到把非整型计算作为未来的研究工作,估计他也不搞了。

原文:Secure Query Processing with DataInteroperability in a Cloud Database Environment (SIGMOD 2014)

[1] http://aws.amazon.com/rds/

[2] https://sql.azure.com/

[3] S. Das, S. Nishimura, and D. Agrawal et al.Albatross: Lightweight elasticity in shared storage databases for the cloudusing live data migration. PVLDB, 2011.

[4] A. J. Elmore, S. Das, D. Agrawal, and A. ElAbbadi. Zephyr: live migration in shared nothing databases for elastic cloudplatforms. In SIGMOD, 2011.

[5] C. Curino et al. Workload-aware databasemonitoring and consolidation. In SIGMOD, 2011.

[6] P. Wong, Z. He, and E. Lo. Parallel analytics as aservice. In SIGMOD, 2013.

[7] S. Das, V. Narasayya, and F. Li et al. CPU sharingtechniques for performance isolation in multi-tenant relationaldatabase-as-a-service. PVLDB, 2014.

[8] A. Soror et al. Automatic virtual machine congurationfor database workloads. In SIGMOD, 2008.

[9] C. Gentry. Fully homomorphic encryption usingideal lattices. In STOC, 2009.

[10] C. Gentry et al. Fully homomorphic encryptionwith polylog overhead. In EUROCRYPT, 2012.

[11] R. Agrawal and J. Kiernan et al. Order-preservingencryption for numeric data. In SIGMOD, 2004.

[12] R. L. Rivest et al.and A. Shamir and L. M.Adleman. A method for obtaining digital signatures and public-keycryptosystems. CACM, 1978.

[13] P. Paillier. Public-key cryptosystems based on compositedegree residuosity classes. In EUROCRYPT, 1999.

[14] D. Boneh et al. Public key encryption withkeyword search. In EUROCRYPT, 2004.

[15] A. C. Yao. Protocolsfor secure computations (extended abstract). In FOCS, 1982.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

网络空间发展与战略研究中心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值