[论文解读] Secure k-Nearest Neighbor Query over Encrypted Data in Outsourced Environments
本文提出了两种针对云环境中加密数据的可信k-最近邻(k-NN)查询协议:一种基础方案(S$k$NN$_\text{b}$)和一种完全安全的协议(S$k$NN$_\text{m}$)。安全协议通过同态加密和安全多方计算保护数据机密性、查询隐私性,并隐藏访问模式,实现用户端计算量极低(6个属性时为4–17毫秒),同时支持大规模数据集上的高效并行执行。
For the past decade, query processing on relational data has been studied extensively, and many theoretical and practical solutions to query processing have been proposed under various scenarios. With the recent popularity of cloud computing, users now have the opportunity to outsource their data as well as the data management tasks to the cloud. However, due to the rise of various privacy issues, sensitive data (e.g., medical records) need to be encrypted before outsourcing to the cloud. In addition, query processing tasks should be handled by the cloud; otherwise, there would be no point to outsource the data at the first place. To process queries over encrypted data without the cloud ever decrypting the data is a very challenging task. In this paper, we focus on solving the k-nearest neighbor (kNN) query problem over encrypted database outsourced to a cloud: a user issues an encrypted query record to the cloud, and the cloud returns the k closest records to the user. We first present a basic scheme and demonstrate that such a naive solution is not secure. To provide better security, we propose a secure kNN protocol that protects the confidentiality of the data, user's input query, and data access patterns. Also, we empirically analyze the efficiency of our protocols through various experiments. These results indicate that our secure protocol is very efficient on the user end, and this lightweight scheme allows a user to use any mobile device to perform the kNN query.
研究动机与目标
- 解决外包云数据库中加密数据上k-最近邻(k-NN)查询处理缺乏安全高效方案的问题。
- 克服先前方案的安全缺陷,包括对选择/已知明文攻击的脆弱性以及结果不准确的问题。
- 确保数据和用户查询的机密性,同时隐藏数据访问模式,防止云服务提供商窥探。
- 最小化终端用户计算开销,以支持移动设备等轻量级设备。
- 通过并行化和Map-Reduce集成,提供可扩展的解决方案以应对大规模数据集。
提出的方法
- 使用属性粒度的公钥加密(如Paillier)在数据外包前对数据库记录进行加密。
- 应用同态加密在不解密的情况下计算加密查询与加密数据记录之间的平方欧几里得距离。
- 实现基于安全多方计算(MPC)的协议(S$k*NN$_\text{m}$),在不泄露访问模式的前提下比较距离并识别出k个最小值。
- 设计两阶段协议:第一阶段,用户加密查询并发送至云;第二阶段,云执行安全距离计算并返回k个最近邻结果。
- 引入安全最小值选择协议(SMIN$_n$),以隐私保护方式识别k个最小距离。
- 利用OpenMP对数据记录间的距离计算实现并行化,使6核系统上最高获得6倍加速。
实验结果
研究问题
- RQ1如何在云环境中对加密数据安全地处理k-NN查询,而不会暴露数据、查询或访问模式?
- RQ2现有S$k$NN协议在安全与效率之间的权衡如何?如何改进?
- RQ3能否设计一种安全k-NN协议,使用户端计算量最小化,以支持移动设备和资源受限设备?
- RQ4并行化与分布式计算技术在多大程度上可提升可信k-NN协议的可扩展性?
- RQ5所提出的协议与[28]、[13]和[31]等先前工作相比,在性能和安全性方面表现如何?
主要发现
- 所提出的S$k$NN$_\text{m}$协议通过保护数据机密性、查询隐私性并隐藏数据访问模式,实现了完全安全,而先前方案易受已知/选择明文攻击影响。
- S$k$NN$_\text{b}$协议的用户端计算为常数(无论k为何值均为0.73分钟),而S$k$NN$_\text{m}$的用户端开销保持较低水平(6个属性下为4–17毫秒,密钥长度512–1024位)。
- 当k=5时,S$k*NN$_\text{m}$总开销中69.7%来自SMIN$_n$协议;当k增至25时,该比例至少上升至75%。
- S$k$NN$_\text{b}$的并行化版本在6核系统上实现6倍加速,将n=10,000条记录的执行时间从串行的215.59秒降低至40秒。
- S$k$NN$_\text{m}$协议相比S$k$NN$_\text{b}$显著更昂贵,k从5增至25时执行时间由11.93分钟升至55.65分钟,但提供了更强的安全保障。
- 结果表明,所提协议在用户端高度高效,且可通过并行化实现可扩展性,适用于移动设备及大规模云环境部署。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。