本文主要是介绍Toward Highly Secure Yet Efficient kNN Classification Scheme on Outsourced Cloud Data读书笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
《Toward Highly Secure Yet Efficient kNN Classification Scheme on Outsourced Cloud Data》
Lin Liu, Jinshu Su, Ximeng Liu, Rongmao Chen, Kai Huang, Robert H Deng, Xiaofeng Wang Toward Highly Secure Yet Efficient KNN Classification Scheme on Outsourced Cloud Data[C]. the internet of things, 2019, 6(6): 9841-9852.
以下内容为自己看论文时的笔记,如有不足之处还往大家多多指正。
摘要
目前,将数据和机器学习任务,如k近邻分类(KNN)外包给云计算,已成为大规模数据存储、管理和处理的一种可扩展且经济有效的方法。然而,在将数据外包给云计算时,数据安全和隐私问题一直是一个严重的问题。本文提出了一种基于加同态密码体制和秘密共享的双云模型下的云数据保密KNN分类方案。与已有的工作相比,我们重新设计了一组轻量级的构造块,如安全平方欧几里德距离、安全比较、安全排序、安全最小和最大数查找、安全频率计算等,达到了相同的安全级别,但效率更高。在我们的方案中,数据所有者保持离线,这与基于安全多方计算的解决方案不同,后者要求数据所有者在计算期间保持在线。此外,查询用户除了发送查询数据和接收查询结果外,不会与云交互。我们的安全分析表明,该方案保护了外包数据的安全性和查询隐私,并隐藏了访问模式。在真实数据集上的实验表明,我们的方案比现有的方案具有更高的效率。
实现了语义安全、查询隐私、
保护了数据访问模式、支持离线、
计算开销为o(nk),通信开销o(nk||N)
kNN应用
k近邻(k- neest -neighbor, KNN)分类作为最基本的机器学习操作之一,被广泛应用于医学信息学[4]、入侵检测[5]、异常网络流量识别等诸多领域[6]。
适用的场景以及需要满足的隐私要求
本文的灵感来自以下场景。假设有一个云从数据所有者那里收集了大量敏感数据。有了这些数据,云就有能力提供KNN分类服务。该方案中还有一些查询用户,即KNN分类服务用户。在这种情况下,应满足以下三个隐私要求。
1) 外包数据安全:由于即将外包的数据是敏感的,因此不应向对手披露。
2) 查询隐私:查询数据和查询结果都对除查询用户以外的所有其他方敏感,应受到保护。
3) 隐藏数据访问模式:数据访问模式,例如查询数据的k个最近邻居的序列,也应该受到云和查询用户的保护。
本文的贡献
在本文中,提出了一个在双云模型中保护隐私的外包数据KNN分类方案。本文的主要贡献概括如下
1) 本文设计了一组基于秘密共享和Paillier密码体制的block。利用这些构造块,两个云可以安全地计算平方欧氏距离,比较和排序两个整数,找到一个整数序列的最小或最大值,并计算某些值的频率。与现有的构造块[10]、[13]相比,我们新设计的构造块可以达到相同的安全级别,但计算和通信成本较低。这些构造块是设计我们的隐私保护KNN分类方案的基石。
2)本文的隐私保护KNN分类方案不仅实现了数据安全和查询隐私,而且隐藏了访问模式。此外,所有中间信息都是安全的。在该方案中,数据所有者不参与计算并保持离线状态,查询用户只需将其查询发送到云并等待查询结果。在这个过程中,查询用户和云之间不需要交互。因此,该方案大大减少了数据所有者和查询用户的计算和通信负担,这是资源受限的物联网设备的一个重要要求。
3) 我们在一个广泛使用的真实数据集上测试了该方案的性能,并将其与最相关的工作进行了比较。实验结果表明,我们的方案是非常有效的,即比以前的工作快20倍以上[10]。据我们所知,本文是第一篇实现了[10]中描述的所有属性但效率更高的文章。
备注:(1)其实计算和通信的成本都比18年kNN高
(2)注意与18年的kNN进行对比,在18年的KNN中云将一些计算量小的分给用户去做
(3)需要弄清楚采用的是什么数据集?
Car Evaluation dataset from UCI KDD archive,参考链接https://blog.csdn.net/merry163/article/details/12970707
(4)Bharath [10]等人2015年开发了第一个基于加密数据的kNN安全分类器。但是由于用到了Paillier HE以及SMC造成效率不高。特别是用户必须对数据记录进行属性加密,降低了效率。例如,对于有m个属性的记录,用户必须执行m个加密并输出m个密文。同时,考虑到function f(x)的私密性要求,此协议没有实现在外包环境中非常重要的function f(x)私密性。
预备知识
在这一部分中,我们介绍了一些基本的初步概念,如Paillier密码系统和安全多方计算(SMC),它们是我们方案的基础。
A 安全多方计算
SMC最初是由Yao[14]提出的,它可以使多方协作评估某些功能,而不必向对方透露它们的敏感输入。在我们的方案中,我们主要使用了一种基于Shamir[15]和Beaver[16]引入的秘密共享技术的SMC技术
B Paillier Cryptosystem
Paillier密码系统[12]是最著名的加性同态非对称加密算法之一。
关于paillier部分我的以往博客中也有一些相关知识,欢迎大家去看看https://mp.csdn.net/console/editor/html/103160273
系统模型
我们的隐私保护KNN分类系统涉及两个非共谋云、多个数据所有者和多个查询用户。
1) 两个云:我们的系统中有两个非共谋云,分别表示为云A和云B。它们都维护数据所有者外包的数据集。他们执行一系列安全协议,以保护隐私的方式回答来自多个查询用户的查询。注意,云B还生成了Paillier密码系统的私钥,然后将公钥发送给云A。
2) 数据所有者:所有数据都是由数据所有者生成的。在将这些数据上传到云端之前,他们将这些数据分成两个加法共享。
3) 多个查询用户:查询用户将其查询拆分为两个加法共享,然后将其上载到两个云。在执行之后,他们可以通过运行Rec即重构来恢复查询结果。
注意,数据所有者和查询用户的计算能力和存储空间都有限。因此,在我们的方案中,这两种方法都应该具有较小的计算和通信负担。此外,我们还强调,在商业环境中,这两个非共谋的双云是现实存在的,因为它们都重视自己的声誉。这两个云属于不同的公司,例如,云A可能属于亚马逊,云B可能是微软的Azure。一旦相互勾结,被其他人抓住,客户可能会失去对其中任何一个的信任,这肯定会使他们失去巨大的市场份额。需要注意的是,在许多隐私保护的机器学习方案中都采用了这样一个非协作的双云模型,因为它可以将用户的计算和通信成本降到最低[19]–[24]。
威胁模型
在本文中,我们假设所有相关方都是半诚实(也称为诚实但好奇)的,他们正确地遵循协议规范,但在执行过程中试图学习额外的知识。此外,我们假设这两个云不能相互勾结。在该威胁模型中,我们还考虑了一个主动敌手A,其目标是获取外包数据、查询数据和查询结果的明文。A具有以下功能。
1) A可以窃听所有的通信以获取发送的数据。
2) A可以包括云中的一个。注意,也可以包含具有私钥的云,即云B。然而,对手A被限制在不损害两个云的情况下。我们注意到这种限制在密码协议中使用的、敌手模型中是典型的[19]、[21]、[24]。
设计目标
本文提出的保密KNN分类方案实现了以下设计目标。
1)数据安全和隐私:外包的数据、查询数据、查询结果不能被敌手A或者是两个云服务器知道。在我们的方案中,我们还保护了在分类执行过程中计算的所有中间值。具体来说,访问模式也受到保护。
2)效率:我们的方案对于数据所有者和查询用户来说应该是高效的。另外,考虑到在线服务的实时性和终端的多样性,需要尽量减少两个云之间的计算和通信成本。
3)离线用户:由于数据所有者和查询用户都是资源受限的用户,他们参与查询过程越少越好。此外,支持离线用户对于系统的可伸缩性至关重要。
4)正确性:我们的主要目标是找到查询的分类标签。与不保护隐私的KNN分类方案相比,这两个云应该能够返回相同的结果。
模块的构造
A 安全的欧氏距离计算
这里是密文上的欧式距离,需要考虑加密后数据的无序性,本文采用的是pailliar同态加密,可以在密文数据上做计算,但是由于是palliar同态,计算效率低下,是否可以构造一个保序的加密然后来计算欧氏距离?18年kNN论文将palliar同态改为VHE同态加密,
总结比较
据我们所知,Samanthula等人[10]、[13]首先提出了一种隐私保护的KNN分类方案,实现了外包数据、离线数据所有者和查询结果安全的语义安全。此外,该方案还保护了访问模式。然而,计算和通信成本都相当大。
Rong等人[30]、[31]提出了两种基于Elamal的隐私保护KNN分类方案。其中[30]不能够保护访问模式,另一个[31]则会通信花费很高,因为它在多个云环境中工作。
Cheng等人[7]在双云模型中设计了一个SKC方案,但是他们的方案不能保护访问模式。
Yang[32]等人提出了一种基于向量同态加密(VHE)的安全KNN分类方案。这个方案是很有效的,但是最近的[37]被证明是不安全的。
Wu等人[34]提出了一种隐私保护的KNN分类。该方案效率高,但不能实现语义安全。
最近,Wu等人还提出了一种基于Elamal的语义安全混合加密云数据库KNN分类方法。该方案几乎达到了Samanthula等人工作[10]的所有性能,并且具有更高的效率。然而,我们发现该方案不能保护所有的中间信息。
内部积的分布(用于描述两个向量之间的距离,如欧几里得距离)泄露给了其中一个云服务器。同样的问题也存在于[34]中。
[34]中的数据满足卡方分布
总结:
在本文中,我们提出了一种面向外包云数据的隐私保护KNN查询方案。该方案实现了数据的安全性和查询的私密性,并隐藏了访问模式。此外,在我们的方案中,数据所有者可以在查询过程中保持离线状态。实验结果表明,与具有相同隐私属性的[10]方案相比,该方案具有更高的效率。未来,我们计划扩展本文以支持k-d树数据结构,如Kim等人的工作[48]。
主要参考文献:
[7] K. Cheng et al., “Secure k-NN query on encrypted cloud data with multiple keys,” IEEE Trans. Big Data, to be published.
[10] B. K. Samanthula, Y. Elmehdwi, and W. Jiang, “K-nearest neighbor classification over semantically secure encrypted relational data,” IEEE Trans. Knowl. Data Eng., vol. 27, no. 5, pp. 1261–1273, May 2015.
[13] Y. Elmehdwi, B. K. Samanthula, and W. Jiang, “Secure k-nearest neighbor query over encrypted data in outsourced environments,” in Proc. IEEE 30th Int. Conf. Data Eng. (ICDE), Chicago, IL, USA, 2014, pp. 664–675.
[32] H. Yang,W. He, J. Li, and H. Li, “Efficient and secure kNN classification over encrypted data using vector homomorphic encryption,” in Proc. IEEE Int. Conf. Commun. (ICC), 2018, pp. 1–7.
[33] W. Wu, J. Liu, H. Rong, H. Wang, and M. Xian, “Efficient k-nearest neighbor classification over semantically secure hybrid encrypted cloud database,” IEEE Access, vol. 6, pp. 41771–41784, 2018.
[34] W.Wu, U. Parampalli, J. Liu, and M. Xian, “Privacy preserving k-nearest neighbor classification over encrypted database in outsourced cloud environments,” World Wide Web, vol. 22, no. 1, pp. 101–123, 2019.
[37]S. Bogos, J. Gaspoz, and S. Vaudenay, “Cryptanalysis of a homomorphic encryption scheme,” Cryptography Commun., vol. 10, no. 1, pp. 27–39, 2018.
[48]H.-I. Kim, H.-J. Kim, and J.-W. Chang, “A secure kNN query processing algorithm using homomorphic encryption on outsourced database,” Data Knowl. Eng., 2017. [Online]. Available:http://www.sciencedirect.com/science/article/pii/S0169023X17303476.doi: 10.1016/j.datak.2017.07.005.
这篇关于Toward Highly Secure Yet Efficient kNN Classification Scheme on Outsourced Cloud Data读书笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!