分享自:

完整性编码数据库 - 保护外包数据库的数据完整性

期刊:computers & securityDOI:10.1016/j.cose.2023.103569

1. 主要作者及研究机构

本文的主要作者包括Jyh-Haw Yeh、Md Mashrur Arifin、Ning Shen、Ujwal Karki、Yi Xie和Archana Nanjundarao。他们来自美国博伊西州立大学(Boise State University)。该研究发表于《Computers & Security》期刊,并于2023年10月31日在线发布。

2. 学术背景

随着云存储服务的普及,越来越多的企业选择将数据库外包给云服务提供商(CSP),以减轻本地数据库维护的财务负担。然而,这种外包模式也带来了数据完整性的风险,尤其是在面对恶意攻击时,数据可能被篡改、删除或伪造。现有的云数据库服务缺乏有效的数据完整性保护机制,尤其是在面对内部攻击时。因此,本文提出了一种新的数据库模型——完整性编码数据库(Integrity Coded Database, ICDB),旨在通过插入完整性代码(Integrity Codes, ICs)和虚假元组(fake tuples)来保护外包数据库的数据完整性。

3. 研究流程

3.1 研究步骤

  1. 数据库转换:将普通数据库转换为ICDB实例,插入虚假元组和完整性代码,并对数据进行加密。
  2. 查询生成:将SQL查询转换为ICDB查询,分为两种验证模式:聚合模式(Aggregate Mode, AMode)和详细模式(Detailed Mode, DMode)。
  3. 数据查询与验证:在AMode中,ICDB代理生成两个查询,分别从云数据库服务器(CDS)和ICDB云应用(ICDB-CA)获取数据和完整性代码,并进行聚合验证。在DMode中,ICDB代理生成一个查询,获取所有元组及其完整性代码,逐条验证。
  4. 完整性验证:通过重新生成完整性代码并与从云端返回的代码进行比对,验证数据的正确性、新鲜性和完整性。

3.2 研究对象与样本量

研究使用了MySQL的示例数据库“employees”,该数据库包含约400万条记录和6个表。实验中对不同IC生成算法(RSA、CMAC、HMAC)和两种验证模式(AMode、DMode)进行了基准测试。

3.3 实验方法

  • IC生成算法:使用了RSA、CMAC-AES和HMAC-SHA三种加密算法生成完整性代码。
  • 虚假元组插入:通过插入虚假元组来确保查询结果的完整性。
  • 序列号生成:为每个元组生成唯一的序列号,确保数据的新鲜性。

4. 主要结果

4.1 数据完整性保护

ICDB能够有效检测多种攻击,包括伪造攻击、替换攻击、旧数据攻击、元组插入攻击、元组删除攻击等。实验表明,ICDB能够确保数据的正确性、新鲜性和完整性。

4.2 存储与性能开销

  • 存储开销:ICDB需要额外的存储空间来存储完整性代码、序列号和虚假元组。实验表明,使用MAC算法的ICDB存储开销为原始数据库的6.32倍,而使用RSA算法的ICDB存储开销为原始数据库的11.23倍。
  • 性能开销:ICDB的查询处理时间显著增加,尤其是在DMode中,解密和完整性验证步骤耗时较多。RSA算法的性能开销最大,约为原始SQL查询的19.91倍。

5. 结论与意义

本文提出的ICDB模型为外包数据库提供了一种有效的数据完整性保护机制。通过插入完整性代码和虚假元组,ICDB能够确保数据的正确性、新鲜性和完整性。尽管ICDB在存储和性能上存在一定的开销,但其在数据安全方面的优势使其在实际应用中具有重要价值。

6. 研究亮点

  • 新颖性:ICDB模型首次将完整性代码和虚假元组结合,确保外包数据库的数据完整性。
  • 实用性:通过实验验证,ICDB能够有效检测多种攻击,具有较高的实用价值。
  • 灵活性:支持多种加密算法和验证模式,用户可以根据需求选择适合的方案。

7. 其他有价值的内容

本文还详细讨论了ICDB的通信模型、威胁模型以及与其他相关工作的对比,进一步突出了ICDB的创新性和实用性。

本文的研究为外包数据库的数据完整性保护提供了新的解决方案,具有重要的学术和应用价值。

上述解读依据用户上传的学术文献,如有不准确或可能侵权之处请联系本站站长:admin@fmread.com