最新论文笔记(+9):Achieving Secure Search over Encrypted Data for e-Commerce A Blockchain Approach/ToIT2020

Achieving Secure Search over Encrypted Data for e-Commerce: A Blockchain Approach (电子商务加密数据的安全搜索:区块链方法)

在本篇论文中,作者提出了电子商务环境下基于联盟链的加密数据分布式安全搜索方案(CBDSS)。通过集成区块链和可搜索加密模型,可以有效地保护敏感数据。联盟链可以保证只有授权的节点才能加入系统。为了实现搜索任务节点的公平分配,提出了一种支持策略,即设置两个代理角色,根据每个节点的负载能力将搜索任务与虚拟资源进行分配和匹配。

主要贡献:

  • 1)提出了基于加密数据的分布式安全搜索方案,将区块链、KNN可搜索加密算法结合,实现密文形式数据的安全采集、安全存储和安全检索
  • 2)利用联盟链的特点设计系统结构,并对参与系统的各个实体进行认证。采用POA(Proof-of-authority)共识来提高区块链的效率。
  • 3)设计了一种背书策略,实现对等节点间负载的均匀分布,从而完成搜索任务。在任务端和资源端设置Agent节点,动态调整整个搜索过程。

一、写作背景

论文名称 作者 / 单位 来源 年份 简要内容
Achieving Secure Search over Encrypted Data for e-Commerce: A Blockchain Approach ZHITAO GUANet.al (North China Electric Power University) ACM Transactions on Internet Technology (IOIT) 2020 提出了一种在电子商务环境下基于联盟链的加密数据分布式安全搜索方案。

从本文可知,电子商务的交易中需要大规模的数据处理,包括从各种移动终端或企业采集数据、在服务器或云上存储数据等。且都依赖于可信任的第三方,在数据处理的各个阶段都面临安全威胁,在数据采集过程中,也不能保证数据的可靠性和真实性,在数据存储过程中,集中式服务器容易遭受攻击。

二、 相关工作

可搜索加密(Searchable Encryption,SE)可以解决以上问题。自Wong et.al提出了一种安全的K-nearest neighbor(KNN)算法的可搜索加密方案,该方案的密钥 { S , M 1 , M 2 } \{S,M_1,M_2\} { S,M1,M2}是加密时生成的,其中S是一个拆分指标,可以将明文向量分成两个随机向量, M 1 , M 2 M_1, M_2 M1,M2分别对拆向量进行加密。通过以来一直在不断改进,该方法不仅可以进行密文搜索,还可以进行多语言搜索、多关键词排序搜索等。然而,基于云服务器的搜索仍然无法解决任何集中式系统所面临的单点故障等威胁。

Wai Kit Wong, David W. Cheung, Ben Kao, and Nikos Mamoulis. 2009. Secure kNN computation on encrypted databases. In International Conference on Management of Data (2009) . 139–152.

因此,有些人提出将区块链与可搜索加密相结合,以克服集中式系统的缺点。Jiang et.al 提出的可搜索区块链通过布隆过滤器实现加密数据的多关键字搜索,降低执行智能合约的计算成本。

S. Jiang, J. Cao, J. A. McCann, Y. Yang, Y. Liu, X. Wang, and Y. Deng. 2019. Privacy-preserving and efficient multi- keyword search over encrypted data on blockchain. In 2019 IEEE International Conference on Blockchain (Blockchain) . 405–410.

Tahir et.al 提出的框架是基于Hyperledger Fabric结构的区块链,可以在加密数据中搜索关键字时利用概率陷门实现隐私保护。但是,需要解决区块链系统的低效率,例如共识进程引起的运行时开销。在搜索过程中,多个节点一起执行搜索任务时,分布不均匀会影响搜索效率。

Shahzaib Tahir and Muttukrishnan Rajarajan. 2018. Privacy-preserving searchable encryption framework for per- missioned blockchain networks. In IEEE Green Computing and Communications (2018) . 1628–1633.

在云计算场景下,Cao等人提出了一种具有严格隐私要求的多关键字搜索方案。针对不同威胁模型的需求,提出了两种基于坐标匹配相似度度量的MRSE方案,以较低的代价实现了严格的隐私保护。

Ning Cao, Cong Wang, Ming Li, Kui Ren, and Wenjing Lou. 2014. Privacy-preserving multi-keyword ranked search over encrypted cloud data. IEEE Transactions on Parallel and Distributed Systems 25, 1 (2014), 222–233.

为了处理大量的数据,Top-K排序算法被提出并得到了广泛的应用。只返回前k个最相关的结果,大大减少了网络流量和系统负担。大多数搜索模型采用了Top-k算法

扫描二维码关注公众号,回复: 14268739 查看本文章

为了提供较强的隐私保护,Cai et.al 提出了一种采用可搜索对称加密(SSE)的加密分散存储架构,该架构支持可信的私有关键字搜索。针对服务过程中的恶意行为,集成了增量散列功能,实现了安全的数据添加和关键字搜索协议。

Chengjun Cai, Xingliang Yuan, and Cong Wang. 2017. Towards trustworthy and private keyword search in encrypted decentralized storage. In International Conference on Communications (2017) . 1–7.

此外,为了防止恶意服务器认证,Hu et.al设计了一个去中心化的隐私保护搜索方案,利用以太坊中的智能合约引入公平,设计出一种新的智能合约,使每个参与者都能得到平等对待,诚实方的利益也能得到更好的保护。

Shengshan Hu, Chengjun Cai, Qian Wang, Cong Wang, Xiangyang Luo, and Kui Ren. 2018. Searching an encrypted cloud meets blockchain: A decentralized, reliable and fair realization. In International Conference on Computer Com- munications (2018) . 792–800.

还有一个基于区块链的关键词搜索系统叫做Searchain,它实现了带授权的无关关键字搜索(OKS),支持在分散存储中对授权关键字进行验证。还有一些研究者使用区块链来保证方案在上传和搜索过程中的安全性。

Peng Jiang, Fuchun Guo, Kaitai Liang, Jianchang Lai, and Qiaoyan Wen. 2017. Searchain: Blockchain-based private keyword search in decentralized storage. Future Generation Computer Systems (2017), 1.

另外,Niu et.al 利益有权限的区块链和云存储服务器解决了区块链上有限存储空间下的半诚实搜索问题。

Shufen Niu, Lixia Chen, Jinfeng Wang, and Fei Yu. 2020. Electronic health record sharing scheme with searchable attribute-based encryption on blockchain. IEEE Access 8 (2020), 7195–7204.

Chen et.al 定义了一种基于区块链的可搜索的前向和后向隐私公钥加密(BSPEFB),以确保搜索结果的准确性和实现隐私安全。

B. Chen, L. Wu, H. Wang, L. Zhou, and D. He. 2019. A blockchain-based searchable public-key encryption with forward and backward privacy for cloud-assisted vehicular social networks. IEEE Transactions on Vehicular Technology (2019), 1–1.

Yang et.al 提出了一种基于区块链的公平支付系统(BMFP)多关键字排名搜索,该搜索可以返回相关度最高的加密文件,实现多关键字排名搜索结果的公开验证。

Yang Yang, Hongrui Lin, Ximeng Liu, Wenzhong Guo, Xianghan Zheng, and Zhiquan Liu. 2019. Blockchain-based verifiable multi-keyword ranked search on encrypted cloud with fair payment. IEEE Access 7 (2019), 140818–140832.

三、主要内容

3.1 系统模型

基于联盟链Hyperledger Fabric设计了系统结构,主要包括四个实体:

  • 1)认证中心(Authentication Center, AC):负责对联盟链中的各个实体进行认证,AC主要用于公钥和私钥的分发,以及数据加密和身份验证的证书分发。
  • 2)数据采集节点(Data collection node):它是电商平台中的数据源,如智能设备、企业数据库等,需要对其进行身份认证。
  • 3)对等节点(Peer node):负责验证数据的来源,并为每个经过验证的记录生成安全索引。它们将所有广播到区块链上的其他节点。我们从对等节点中预先选择一些权威节点,这些节点将验证打包的区块并将交易写入链中,从而节省了协商时间。
  • 4)数据请求者(Data requester):根据关键字发起Top-K排序搜索算法,获取相关记录。

在这里插入图片描述

3.2 设计目标:

  • 1)数据安全:是系统的主要目标,包括数据源认证、保密性和完整性。在本系统中,AC确保加入系统的新参与者在执行任务操作之前都经过验证。通过加密、哈希算法、数字签名等方法实现数据的保密性和完整性。
  • 2)隐私保护:存储在链上的数据通过加密在一定程度上满足了隐私保护的要求。此外,数据请求者不希望其他人知道他们的搜索关键字,因此必要实现搜索关键字和搜索令牌之间的不可链接性。
  • 3)搜索效率:为了提高区块链效率,引入联盟链和POA共识机制,牺牲了部分去中心化来提高系统效率。在搜索过程中,可以利用区块链的分布式存储特性来提高搜索效率。

3.3CBDSS算法方案

算法定义:

  • 1) C n o d e S e t u p ( P K C I D i , S K C I D i , C e r t C I D i ) CnodeSetup(PK_{CID_i},SK_{CID_i},Cert_{CID_i}) CnodeSetup(PKCIDi,SKCIDi,CertCIDi):数据采集节点的公钥、私钥和证书的设置算法。
  • 2) P n o d e S e t u p ( P K P I D i , S K P I D i , C e r t P I D i , S K = { S , M 1 , M 2 } ) PnodeSetup(PK_{PID_i},SK_{PID_i},Cert_{PID_i},SK=\{S,M_1,M_2\}) PnodeSetup(PKPIDi,SKPIDi,CertPIDi,SK={ S,M1,M2}):对等节点的设置算法,除了密钥和证书之外,AC还为peer node生成对称密钥。
  • 3) G e n I n d e x ( D i c , r e c o r d i , j , S K ) → I i , j = { V i , j ′ M 1 T , V i , j ′ ′ M 2 T } GenIndex(Dic,record_{i,j},SK) \to I_{i,j}=\{V^{'}_{i,j}M^T_1,V^{''}_{i,j}M^T_2\} GenIndex(Dic,recordi,j,SK)Ii,j={ Vi,jM1T,Vi,jM2T}:索引生成算法是由对等节点运行,使用关键词字典 D i c Dic Dic,密钥 S K SK SK r e c o r d i , j record_{i,j} recordi,j作为输入,该索引生成算法输出安全索引 I i , j I_{i,j} Ii,j
  • 4) G e n T o k e n ( D i c , r ′ , E , S K ) → S T = { Q ′ M 1 − 1 , Q ′ ′ M 2 − 1 } GenToken(Dic,r^{'},\mathcal{E},SK) \to ST=\{Q^{'}M^{-1}_1,Q^{''}M^{-1}_2\} GenToken(Dic,r,E,SK)ST={ QM11,QM21}:搜索token生成算法是由数据请求者运行。使用关键字字典 D i c Dic Dic、密钥 S K SK SK和两个随机数 E \mathcal{E} E r ′ r^{'} r作为输入,搜索token生成算法输出搜索token S T ST ST
  • 5) S e a r c h ( Q r a n g e , S T , K ) → r t o p k Search(Q_{range},ST,K) \to r _ {topk} Search(Qrange,ST,K)rtopk:搜索生成算法由调用智能合约的对等节点运行。以搜索范围 Q r a n g e Q_{range} Qrange、密钥 S K SK SK和返回结果 k k k作为输入,搜索生成算法输出Top-k的结果 r t o p k r_{topk} rtopk

CBDSS结构:
在这里插入图片描述

  • 1)系统初始化:数据采集节点从AC获得公私钥和证书 { P K C I D i , S K C I D i , C e r t C I D i } \{PK_{CID_i},SK_{CID_i},Cert_{CID_i}\} { PKCIDi,SKCIDi,CertCIDi},对等节点也从AC哪里获得 { P K P I D i , S K P I D i , C e r t P I D i } \{PK_{PID_i},SK_{PID_i},Cert_{PID_i}\} { PKPIDi,SKPIDi,CertPIDi}。对等节点获得对称密钥 S K = { S , M 1 , M 2 } SK=\{S,M_1,M_2\} SK={ S,M1,M2}用来生成安全索引。
  • 2)安全索引生成:数据采集节点发送数据给对等节点,并上传证书和数字签名和每个记录的hash值。对等节点验证签名的真实性,并通过哈希值验证数据的完整性后,将数据以本地记录的形式进行存储。
  • 3)索引上传和存储:在此期间收集的所有记录的安全索引生成后,每个对等节点会对生成的索引进行签名,附加时间戳和自己的证书,然后将数据 D a t a i = { I i ∣ ∣ a d d r e s s ∣ ∣ d a t a h a s h ∣ ∣ C e r t P I D i ∣ ∣ s i g ∣ ∣ t i m e s t a m p } Data_i=\{I_i||address||data_{hash}||Cert_{PID_i}||sig||timestamp\} Datai={ IiaddressdatahashCertPIDisigtimestamp}广播给其他对等节点在联盟链中。
  • 4)搜索token生成和发布:在搜索请求数据接收之前,数据请求者需要身份验证。数据请求者发送一个签名给AC,如果验证通过,它将接收对称密钥。
  • 5)交易重构和背书策略生成
  • 6)智能合约搜索平台:在簇中的节点由智能合约完成搜索任务。

四、总结

本人感觉这篇论文并没有像摘要里所说的效果,例如集成联盟链和KNN搜索加密算法,都没有在文中体现,还有所说采用POA(Proof-of-authority)共识来提高区块链的效率,全文没有看到解释,只是在分析部分提到用了POA。另外,还有一些文中的解析与标题也不匹配,许多单词或符号标错(例如文中的4.2.2、4.2.3)。全文读下来除了在RELATED WORK部分有所收获外,其他工作对我个人收获不大。

(仅个人读书笔记,不喜勿喷!)

猜你喜欢

转载自blog.csdn.net/A33280000f/article/details/118215176
今日推荐