CN108400970B - 云环境中相似数据消息锁定加密去重方法、云存储*** - Google Patents

云环境中相似数据消息锁定加密去重方法、云存储*** Download PDF

Info

Publication number
CN108400970B
CN108400970B CN201810055819.6A CN201810055819A CN108400970B CN 108400970 B CN108400970 B CN 108400970B CN 201810055819 A CN201810055819 A CN 201810055819A CN 108400970 B CN108400970 B CN 108400970B
Authority
CN
China
Prior art keywords
data
similar
key
user
algorithm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810055819.6A
Other languages
English (en)
Other versions
CN108400970A (zh
Inventor
姜涛
袁浩然
陈晓峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Original Assignee
Xidian University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN201810055819.6A priority Critical patent/CN108400970B/zh
Publication of CN108400970A publication Critical patent/CN108400970A/zh
Application granted granted Critical
Publication of CN108400970B publication Critical patent/CN108400970B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24554Unary operations; Data partitioning operations
    • G06F16/24556Aggregation; Duplicate elimination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

本发明属于云存储技术领域,公开了一种云环境中相似数据消息锁定加密去重方法,采用相似性保留哈希函数,基于纠错码的密钥提取方法和基于伪随机生成器的安全对称加密算法构成本发明的技术路线。与现有的数据去重方法相比,该方案的实现可以进一步提高现有的方案去重的效率,可以进一步提升云服务器存储空间的利用率,并可以进一步的降低用户与云服务器的计算开销和存储开销。本发明能够实现相似密文数据安全和高效的去重;本还发明采用汉明距离缩减和标签切割最优化方法,通过汉明距离缩减和标签切割最优化的方法,可以提高云服务器进行标签查询的效率,实验结果表明本发明在存储和通信花销方面是高效的。

Description

云环境中相似数据消息锁定加密去重方法、云存储***
技术领域
本发明属于云存储技术领域,尤其涉及一种云环境中相似数据消息锁定加密去重方法、云存储***。
背景技术
现如今,每天都有大量的数据被产生和处理。国际数据公司关于数字领域的研究指出到2020年互联网中的数据将达到40000EB,并且数据将持续以每两年翻倍的速度增长。云计算给数据存储方案的范式带来了转变。通过提供可靠的、可扩展的、按需的云存储服务并收取相对低廉的价格,对个人和企业数据管理带来了极大的便利性。思科全球云指数指出所有数据中心流量的83%来自于云,到2019年,数据中心工作量的80%将在云上被处理。根据现在的研究表明,主存储器中的20%到30%数据是冗余的。具体来说,通过在备份存储中实现全部文件的重复数据删除技术,将节约超过50%的标准文件***的存储空间,超过72%的备份文件***的存储空间。因此,数据去重技术可以有效的减轻数据存储的压力,通过删除冗余数据减少网络通信量,从而提高***服务质量。一系列的在线/离线存储***已经提供了数据去重功能,如IBM公司的InfoSphere QualityStage服务和FirstLogic公司的SAP Data Services等商业数据集成工具支持的重复数据检测。有许多基于聚类的技术,分类技术,链接分析技术或统计技术用于检测重复记录。还有很多软件旨在检测和消除相同或类似的重复数据,如Duplicate Cleaner,VisiPics和DupeGuru。然而,由于在云存储***中用户将失去其数据的物理控制权,这使得用户数据的安全成为最大的诉求。因此,为了保护云用户敏感数据的安全性,用户将数据外包前通常会对数据进行加密。然而,加密技术的目标是提供明文数据的语义安全性,使得密文数据与随机数据不可区分。因此,在多用户云存储***中,如何在保护数据安全性的前提下实现数据去重成为了关键且极具挑战的问题。为了解决这个问题,收敛加密方案被提出。在收敛加密中,通过使用文件的哈希值作为收敛密钥,相同的数据总能得到相同的密钥,通过使用收敛密钥加密解密数据,这使得密文去重得以实现。这种加密方案被形式化定义为消息锁定加密,通过从相同的数据得到相同的密钥进行数据加密的方法,使得云服务器可以判断两个密文数据是否是由相同的明文得到的。之后,一系列新的消息锁定加密方案力图提高方案的安全性或者提供其他新的特性。然而那些方案均只考虑了相同数据的去重并不能应用于实现相似数据的去重。许多实际的***需要在数据检测,数据清理和数据聚合等情况下进行重复数据去重或搜索相似的数据项,如差错,拼写错误和内容不一致。一些相似数据检索方案和去重***已经被提出,还有很多方案和软件被用来删除内容相似的网页、文本文档、音乐、图片、视频或者是本地磁盘的二进制数据。然而,那些方案和软件主要解决明文数据的去重而不是密文数据。进一步的,他们的方案适用于个人使用而不适用于云环境下的多用户场景。因此,现有的方案很难直接应用于云环境下安全的相似数据去重。尽管现在有方案可以支持隐私保护的云环境中的相似图像去重,但是他们假设存在一个用户群组并且加密密钥在群组中被分享。然而云环境中用户很难知道拥有同样数据的其他用户。一般来说,云环境下相似数据去重的挑战是云用户很难与其他用户沟通协商一个共同的加密密钥,而且云服务器也很难判断两个密文是否是由相似的数据加密得来的。
综上所述,现有技术存在的问题是
(1)现有的消息锁定加密方案的密钥是通过计算其明文的哈希值得到的,而哈希函数的特性是即使明文有1比特不相同,得到的哈希值也截然不同。因此,使用传统消息锁定加密方案加密得到的密文不再具有相似性,云服务器无法判断两个密文数据的明文是否是相似的,所以现有的消息锁定加密方案很难直接应用于云环境下安全的相似数据去重。
(2)另一方面,尽管有一些方案可以实现群组用户协商密钥并在群组内共享,然而云环境下用户可以随时随地上传数据,云服务器无法在用户上传数据之前知道所有的数据拥有者,因此群组用户共同协商密钥的方案也无法用于实现相似数据去重。
解决上述技术问题的难度和意义
(1)如何突破现有消息锁定加密方案的限制,使得相似的数据在加密之后依然是相似的,是相似数据消息锁定加密去重方法需要解决的问题。
(2)通过实现相似数据消息锁定加密方案的构造,可以用于实现相似数据加密去重***,进而使云服务器可以实现相似数据的密文去重,这将进一步提高密文去重的效率,节省云服务器大量的存储资源与管理资源。
发明内容
针对现有技术存在的问题,本发明提供了一种云环境中相似数据消息锁定加密去重方法、云存储***。
本发明是这样实现的,一种云环境中相似数据消息锁定加密去重方法,所述云环境中相似数据消息锁定加密去重方法使用相似性保留哈希函数(如SimHash或PHash)使得相似的数据可以获得相似的标签,基于纠错码的密钥提取方法使得具有相似的明文数据总能得到相同加密密钥,基于伪随机生成器的安全对称加密算法对相似数据消息锁定加密去重;用户如果希望上传数据,首先使用相似度保留哈希算法来生成明文的去重标签并发送给云服务器,云服务器判断是否有相似的数据已经存储在云服务器上,若云服务器不拥有相似的数据,则需要用户生成相似数据密钥和用于相似密钥恢复的辅助信息,并将加密后的密文数据和辅助信息发送给云服务器;若云服务器拥有相似的数据,则返回用于恢复相似密钥的辅助信息给用户,用户通过恢复出来的相似密钥对数据进行加密,并用得到的密文与服务器进行相似数据拥有验证,若通过验证,则云服务器允许用户访问数据。此外,本发明还通过汉明距离缩减和标签切割最优化的方法提高标签查询效率。
进一步,所述云环境中相似数据消息锁定加密去重方法包括以下步骤:
客户端首先使用相似度保留哈希算法来生成明文的去重标签并发送给云服务器,云服务器判断是否有相似的数据已经存储在云服务器上;
若云服务器不拥有相似的数据,则需要用户生成相似数据密钥和用于相似密钥恢复的辅助信息,并将加密后的密文数据和辅助信息发送给云服务器;
若云服务器拥有相似的数据,则返回用于恢复相似密钥的辅助信息给用户,用户通过恢复出来的相似密钥对数据进行加密,并用得到的密文与服务器进行相似数据拥有验证,若通过验证,则云服务器允许用户访问数据。
进一步,所述云环境中相似数据消息锁定加密去重方法使用[n,k,2t+1]F的纠错码C,基于汉明距离的安全略图的思想是使用纠错码C对数据w进行纠错;输入w,均匀随机选择码字c∈C,令s=SS(w)=w-c是c到w所需的变换;计算Rec(w',s),通过公式c'=w'-s然后解码c'得到c;通过w=c+s得到w。
进一步,所述云环境中相似数据消息锁定加密去重方法客户端应用相似度保留哈希算法来生成明文的去重标签和相似数据密钥;使用相似性保留哈希,相似的明文数据将映射到具有特定长度的相似标签和相似数据密钥;在特定的汉明距离内的相似数据总能得到相同的随机加密密钥,第一个用户选择一些辅助参数并计算明文w'的随机密钥;辅助参数将存储在云服务器上;当随后的用户拥有相似明文数据w(w≈w')的标签tw并且想要执行相似数据去重操作,云服务器将发送辅助参数给之后的用户,之后的用户通过运行密钥重生成算法生成密钥kw;如果文件w和文件w'的汉明距离小于特定的值,(fw,fw')<t,则密钥重生成算法将输出相同的随机密钥kw'=kw
进一步,所述云环境中相似数据消息锁定加密去重方法的相似消息锁定加密方案由六个多项式时间算法构成(FKG,KG,REP,ENC,DEC,TAG):
FKG(1λ,r2,w)→fkw:是一个基于相似保留哈希函数的相似密钥生成算法,用于让用户计算数据的摘要信息;以安全参数λ、随机数r2∈{0,1}λ和文件w作为输入,输出一个文件的相似摘要fkw
RKG(1λ,r3,fkw)→{kw,Pw}:是一个密钥生成算法,用于让用户计算数据的加密密钥和辅助参数;x是一个公开参数,RKG算法使用安全略图的略图算法SS{r3,w}→Pw和模糊提取器中的提取算法Ext(w,x)→{Kw}生成辅助参数P={x,s}和一个随机加密密钥Kw,其中r3是一个随机参数用于生成一个随机的编码C(r3)→c算法C(·)是一个编码生成算法,编码c用于安全略图中的SS算法;
REP(fkw',Pw)→kw:是一个密钥再生算法,由用户运行,通过将辅助参数Pw和文件的模糊摘要fkw'作为输入,当且仅当fkw'与fkw相似的时候输出私钥kw;否则输出一个随机值;
ENC(kw,w)→cw:是一个加密算法,由用户运行用来计算加密数据并得到相应的密文,以文件w和一个私钥kw作为输入,返回密文
Figure BDA0001553757070000051
其中G(kw)→{0,1}|w|是伪随机生成器,以kw作为输入并输出长度为|w|的伪随机加密密钥G(kw);
DEC(kw,cw)→w:是一个解密算法,由用户运行用来计算输入数据的明文;它以密文cw和一个私钥kw作为输入,返回明文
Figure BDA0001553757070000052
TAG(1λ,r1,w)→tw:是一个标签生成算法,通过使用相似保留哈希函数实现,由用户运行用来计算输入数据的摘要。它以安全参数λ,随机数r1和数据w为输入,返回数据标签tw
本发明的另一目的在于提供一种应用所述云环境中相似数据消息锁定加密去重方法的云存储***。
综上所述,本发明的优点及积极效果为:能够实现安全和高效的相似数据去重的方案,叫做模糊的消息锁定加密方案(FuzzyMLE);采用相似性保留哈希函数,基于纠错码的密钥提出方法和基于伪随机生成器的安全对称加密算法构成本发明的技术路线。另外,通过汉明距离缩减和标签切割最优化的方法提高标签查询效率。最后,分析了本发明的效率,并且通过建立一个实际的***在公开的数据库上评估了本发明的开销。实验结果表明本发明在存储和通信开销方面是高效的。
本发明针对相似数据安全、高效的跨用户的数据去重。如果云服务器已经存储了用户A的数据,用户B的数据与用户A的数据相似,可以使云服务器在不需要与用户A通信的情况下实现密文去重。形式化定义了相似消息锁定加密方案并且构建了相似消息锁定加密***。通过将多种技术进行改进和组合,克服了云存储***中安全高效的相似重复数据去重的挑战。首先,相对于传统消息锁定加密方案中使用的传统密码Hash标签,采用相似保持Hash函数来处理相似数据,并为每个数据生成一个相似标签。其次,代替相同标签查询,Hamming标签查询得到了改进,并被用来提供高效的相似的数据查询功能。同时,采用基于纠错码的相似加密密钥生成方法,根据用户数据在数据相似的条件下生成相似数据加密密钥。而且,采用基于伪随机生成器的安全异或加密方案来替代常规的对称加密算法(例如AES)来实现加密操作。此外,本发明还通过引入汉明距离缩减和标签切割最优化方法,进一步提高了标签查询效率。
云存储***由一个远程云存储服务器(S)和一组客户端(Cs)组成,他们希望在S上存储敏感数据。为了保护数据的安全,Cs想要在上传数据之前加密其敏感的数据。为了减少S和Cs之间的存储开销和不必要的通信开销,S和Cs要实现对上传密文的安全重复数据去重。与现有的只能对相同数据进行安全重复数据去重的安全重复数据去重方法不同,本发明考虑更具挑战性的情况:相似数据的安全重复数据去重。为了提高通信效率,如果Cs已经在S的数据库中存储了一些相似的数据,则只有第一个用户需要将数据的密文上传到S上。实际上,类似于大多数现有的精确安全的重复数据去重方法,用户不需要在***中直接相互通信。他们分别与S进行通信,S在需要时处理消息或转发消息。
附图说明
图1是本发明实施例提供的云环境中相似数据消息锁定加密去重方法流程图。
图2是本发明实施例提供的安全略图的示意图。
图3是本发明实施例提供的模糊提取器的示意图。
图4是本发明实施例提供的相似数据锁定加密示意图。
图5是本发明实施例提供的SimHash计算时间示意图。
图6是本发明实施例提供的PHash计算时间示意图。
图7是本发明实施例提供的文本数据去重花费时间示意图
图8是本发明实施例提供的图像数据去重花费时间示意图。
图9是本发明实施例提供的测试硬件环境示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
随着数据的***式增长,数据存储的高效性成为云存储***需要实现的最重要的目标。大多数的云存储提供商使用数据去重以减轻数据的存储和管理花销。最近几年,为了进一步保护用户数据的隐私性,许多安全的去重方法已经被提出。同时,许多实际应用指出消除相似的(或者错误的)数据能够进一步减少云存储提供商的存储开销,并且能够提高数据存储质量。然而,云存储环境中仍然缺少安全和高效的相似数据去重方法。
如图1所示,本发明实施例提供的云环境中相似数据消息锁定加密去重方法包括以下步骤:
S101:客户端首先使用相似度保留哈希算法来生成明文的去重标签并发送给云服务器,云服务器判断是否有相似的数据已经存储在云服务器上。
S102:若云服务器不拥有相似的数据,则需要用户生成相似数据密钥和用于相似密钥恢复的辅助信息,并将加密后的密文数据和辅助信息发送给云服务器。
S103:若云服务器拥有相似的数据,则返回用于恢复相似密钥的辅助信息给用户,用户通过恢复出来的相似密钥对数据进行加密,并用得到的密文与服务器进行相似数据拥有验证,若通过验证,则云服务器允许用户访问数据。
下面结合附图对本发明的应用原理作进一步的描述。
1、安全略图
安全略图可以重构相似的数据并通过辅助信息并且精确地得到相同的数据。使M作为距离函数dis的度量空间,图2描述了安全略图的示意图。它的定义如下:
一个参数为(M,m,m',t,)的安全略图由两个高效的随机略图算法和恢复算法组成(SS,Rec)。
略图算法SS:以元素w∈M作为输入,并输出一个串s∈{0,1}*
恢复算法Rec:以元素w'∈M和串s∈{0,1}*最为输入。当dis(w,w')≤t时,则Rec(w',SS(w))=w,而且当dis(w,w')≥t时,则不保证Rec的输出。
基于汉明距离的安全略图算法:为了从Fn汉明距离纠错码获得一个安全略图,本发明使用[n,k,2t+1]F的纠错码C。基于汉明距离的安全略图的思想是使用纠错码C对数据w进行纠错。举例来说,输入w,均匀随机选择码字c∈C,令s=SS(w)=w-c是c到w所需的变换。计算Rec(w',s),通过公式c'=w'-s然后解码c'得到c。因为dis(w,w')≤t,因此dis(c,c')≤t。最终通过w=c+s得到w。
2、模糊提取器
模糊提取器可以使两个相似的数据获得同样的字符串K。一个参数为(M,m,l,t,ε)的模糊提取器由一对有效的生成算法和再生成算法组成(KG,REP)。
生成算法KG(w)→{K,P}:以w∈M作为输入,输出一个提取串K∈{0,1}l和一个公开的辅助串P∈{0,1}*
再生成算法REP(w',P)→{K}:以w'∈M和串P∈{0,1}*作为输入,如果dis(w,w')≤t而且KG(w)→{K,P},则REP(w',P)=K。如果M的最小熵
Figure BDA0001553757070000081
那么(R,P,E)≈ε(U,P,E),则模糊提取器是安全的。
由于传统的哈希函数算法(如SHA-1或SHA-256)和对称加密算法(如AES-128或AES-256)不能直接应用于实现相似数据的安全重复数据去重。本发明整合了相似性保留哈希算法(SimHash和PHash),基于纠错码的模糊密钥提取算法,基于一次性填充的异或加密方案等新技术,实现了本发明***中安全高效的相似数据去重。相似数据去重方法可以实现客户数据的加密/解密,允许云服务器对用户的密文数据进行安全的相似数据去重。
相似数据去重方法是设计用来让客户端对数据进行加密,云服务器对密文进行相似重复数据检测。在本发明中,客户端首先应用相似度保留哈希算法来生成明文的去重标签和相似数据密钥。使用相似性保留哈希,相似的明文数据将映射到具有特定长度的相似标签和相似数据密钥(例如64位)。这些固定长度的标签还可以显著降低存储开销。本发明设计了一种基于模糊提取器的随机密钥生成算法,在特定的汉明距离内的相似数据总能得到相同的随机加密密钥。在这个阶段,第一个用户选择一些辅助参数并计算明文w'的随机密钥(例如kw')。然后辅助参数将存储在云服务器上。当随后的用户拥有相似明文数据w(w≈w')的标签tw并且想要执行相似数据去重操作,云服务器将发送辅助参数给之后的用户,之后的用户通过运行密钥重生成算法生成密钥kw。如果文件w和文件w'的汉明距离小于特定的值,比如(fw,fw')<t,则密钥重生成算法将输出相同的随机密钥kw'=kw
由于云服务器需要对用户敏感数据执行相似性检测,因此相似的数据必须加密成 相似的密文。这将违背消息锁定加密采用的传统的加密方法。为了解决这一问题,本发明使 用了简单的基于一次性填充生成器的异或加密算法。类似于流密码,一个伪随机生成器G (·)通过使用相似密钥生成足够的比特长度的加密密钥。如果有两个明文w和w'是相似的, 则它们各自的相似密钥是kw和kw'且kw'=kw;否则,kw'≠kw。本发明可以直观的得到
Figure BDA0001553757070000101
相似消息锁定加密方案由六个多项式时间算法构成(FKG,KG,REP,ENC,DEC,TAG):
FKG(1λ,r2,w)→fkw:这是一个基于相似保留哈希函数的相似密钥生成算法,用于让用户计算数据的摘要信息。它以安全参数λ、随机数r2∈{0,1}λ和文件w作为输入,输出一个文件的相似摘要fkw。在实际使用中使用SimHash或PHash来实现。
RKG(1λ,r3,fkw)→{kw,Pw}:这是一个密钥生成算法,用于让用户计算数据的加密密钥和辅助参数。x是一个公开参数,RKG算法使用安全略图的略图算法SS{r3,w}→Pw和模糊提取器中的提取算法Ext(w,x)→{Kw}生成辅助参数P={x,s}和一个随机加密密钥Kw。其中r3是一个随机参数用于生成一个随机的编码C(r3)→c(算法C(·)是一个编码生成算法)。编码c用于安全略图中的SS算法。
REP(fkw',Pw)→kw:这是一个密钥再生算法,由用户运行。类似于模糊提取器中的再生算法,通过将辅助参数Pw和文件的模糊摘要fkw'作为输入,当且仅当fkw'与fkw相似的时候输出私钥kw;否则输出一个随机值。
ENC(kw,w)→cw:这是一个加密算法,由用户运行用来计算加密数据并得到相应的密文。它以文件w和一个私钥kw作为输入,返回密文
Figure BDA0001553757070000102
其中G(kw)→{0,1}|w|是伪随机生成器,以kw作为输入并输出长度为|w|的伪随机加密密钥G(kw)。
DEC(kw,cw)→w:这是一个解密算法,由用户运行用来计算输入数据的明文。它以密文cw和一个私钥kw作为输入,返回明文
Figure BDA0001553757070000103
TAG(1λ,r1,w)→tw:这是一个标签生成算法,通过使用相似保留哈希函数实现,可以对相似的数据生成相同的摘要。该算法由用户运行用来计算输入数据的摘要。它以安全参数λ,随机数r1和数据w为输入,返回数据标签tw
基于相似数据消息锁定加密方案的定义,本发明在图4给出了方案示意图。类似于消息锁定加密,所有的算法可能依赖于公开参数Pw,它对所有的参与方甚至敌手而言都是公开的。
下面结合具体实施例对本发明的应用原理作进一步的描述。
在本发明的***中,本发明假设用户Cs是数据的拥有者而且他们希望将其数据外包存储在云服务器上并进行相似去重存储。在用户上传数据之后,用户仅需保留每个数据条目(比如数据w)的身份链接(比如IDw)和加密密钥(比如kw)。通过从云服务器下载密文cw从而解密得到明文数据w。云服务器S存储一个从用户得到的所有数据信息,并维持一个数据集DB={Tag,ID,Cipher}。在本发明的***中,数据集DB提供三个必须的文件,也就是标签文件,身份链接文件和密文文件。
相似数据锁定加密方案由三个阶段组成,也就是***建立阶段,上传阶段和下载阶段。由于上传阶段和下载阶段是两方交互式协议,本发明形式化定义交互式协议如下:Π:[P1:in1;P2:in2]→[P1:out1;P2:out2]。协议Π表示一个交互式协议被两个参与方P1和P2运行,ini和outi表示参与方Pi的输入和输出。相似数据锁定加密***三个阶段的细节构造如下所示:
***建立阶段由用户C运行,其中r1和r2是两个公开参数,r3是随机选择的参数,用于作为[n,k,2t+1]F纠错码的输入。不失一般性,本发明假设用户A是数据w'的第一个数据拥有者并且他希望将数据上传到云存储服务器S上。用户A首先运行标签生成算法TAG(1λ,r1,w')→tw'和相似密钥生成算法FKG(1λ,r2,w')→fkw'生成数据w'的标签tw'和相似数据摘要fkw'。(实际上,标签生成算法TAG和相似密钥生成算法FKG都是用SimHash或PHash实现的,因此用户将
Figure BDA0001553757070000111
Figure BDA0001553757070000112
分别作为算法TAG和算法FKG的输入。)在此之后,用户A运行密钥生成算法RKG(1λ,r3,fkw')→{kw',Pw'}得到相似加密密钥kw'和辅助参数Pw'
上传阶段是一个交互式的协议,运行在用户C和云服务器S之间。用户C首先发送标签tw'给云服务器S,标签用于服务器S在它存储的数据库进行相似重复检测。在这个阶段中,有两个不同的情况发生在云服务器上:
不存在重复数据,如果云服务器S现有的数据中不存在标签tw与标签tw'类似,则用户需要上传数据。上传阶段运行如下操作:Upload:[C:tw',w',r3;s:DedupTb]→[C:kw',cw',Pw',Linkw';S:tw',Rw',cw',Linkw']。
用户首先运行随机密钥生成算法RKG(1λ,r3,fkw)→{kw,Pw}生成随机的加密密钥和辅助参数。然后加密得到密文ENC(kw,w')→cw'并发送{tw',Pw',cw'}给云服务器S。S存储{tw',Pw',cw'}并返回链接Linkw'给用户C用于下载密文cw'
已存在重复数据,如果云服务器已经存储了数据w且数据w的标签tw与标签tw'类似,则上传阶段运行如下操作:Upload:[C:tw',w';s:DedupTb,Pw']→[C:kw,cw',Linkw;S:Linkw]。根据标签tw',云服务器S返回辅助信息Pw={xw,sw}给用户C。当用户接收到Pw={xw,sw}后,他首先运行密钥再生成算法REP(fkw',Pw)→kw。然后用户加密得到数据w的密文ENC(kw,w')→cw'。之后云服务器S和用户C执行相似数据拥有证明协议,相似数据拥有证明协议可以有效的验证用户的密文数据cw'是否与服务器上存储的数据cw相似。如果用户通过验证,则云服务器返回用户连接Linkw可以下载存储在云服务器S上的密文数据cw,由于已经有相似数据存储在云服务器上,因此用户也不需要再次上传数据cw'
下载阶段是一个交互式的协议将由用户C发起用来获得服务器S上的外包数据。协议如下Download:[C:Linkw,kw;s:DedupTb,cw]→[C:w;s:⊥];直观的,如果用户C想要从服务器S上下载w的密文,用户首先发送数据身份链接Linkw给服务器,服务器查询数据库DB寻找身份链接是Linkw的密文Cw。然后服务器将密文Cw发送给用户C。在收到密文Cw之后,用户C运行解密算法DEC(kw,cw)→w得到明文w。在这个过程中,用户首先运行伪随机生成算法得到解密秘钥G(kw)并且计算明文
Figure BDA0001553757070000121
为了能进一步提高服务器在接收到标签tw'之后找到相似的标签tw的速度,并返回辅助信息Pw={xw,sw}给用户C,我们还设计了汉明距离缩减和标签切割最优化的方法提高标签查询效率。汉明距离缩减的思想如下:由于云服务器存储了大量的数据并拥有大量的标签,如果通过遍历所有的标签从而找到与标签tw'相似的标签tw,这样将带来巨大的计算开销。因此,我们设计了1bits(x)函数,1bits(x)函数用来统计数据x中1bit的个数。如果设置相似数据的阀值为t,则两个数据x和数据y相似必须满足-t≤1bits(x)-1bits(y)≤t。我们对存储在云服务器中的标签均计算其1bits(x)函数的值并降序排列。在服务器查找与标签tw'相似的标签tw时只在满足-t≤1bits(tw')-1bits(tw)≤t的标签里面进行查找。在找到满足-t≤1bits(tw')-1bits(tw)≤t的标签之后我们使用标签切割最优化进一步提高判定两个数据汉明距离的效率。其原理是首先将数据划分成同样大小的分块,从前往后计算每个分块的汉明距离,如果计算到某个块时的汉明距离已经大于t,则说明这两个数据一定不相似。因此,我们不再需要计算具体的两个数据的汉明距离,而是计算到某块时两个数据汉明距离已经超过t,则不需要继续计算并可判定两个数据并不相似。实际中,对于两个长度为n的数据x和数据y,我们分别将数据x和数据y分割为(x1,x2,...,xr)和(y1,y2,...,yr)。前面r-(nmodr)个串的长度为
Figure BDA0001553757070000131
后面nmodr个串的长度为
Figure BDA0001553757070000132
我们首先计算第1块的汉明距离disHam(x1,y1)开始,一直计算到第r块的汉明距离disHam(xr,yr),若在计算到第i块时有disHam(x1,y1)+...+disHam(xi,yi)>t。则说明两个数据不相似,服务器将不再继续计算之后块的汉明距离。
为了进一步提高我们方案的安全性,我们还设计了基于辅助服务器的相似数据消息锁定加密去重方案和基于相似标签的相似数据锁定加密去重方案。基于辅助服务器的相似数据消息锁定加密去重方案通过结合基于RSA的盲签名方案抵抗离线蛮力攻击。假设我们***的服务器使用的是RSA密钥生成算法,以参数e为输入,输出N和d使得
Figure BDA0001553757070000133
N是两个大素数的乘积。((N,e),(N,d))是输出的私钥公钥对。每一个合法的用户首先在密钥服务器进行注册,输入密钥服务器的公钥和明文数据w,选择一个随机数r并通过FKG(r2,w)算法计算fkw,然后通过算法RKG(r3,fkw)计算得到kw和Pw。最后用户计算x←H(kw·re)并将x发送给密钥服务器。密钥服务器在收到x之后计算y←xd modN并将y返回给用户。用户接收到y之后计算z←y·r-1并验证是否zemodN=H(kw)。如果相等则返回z,如果不相等则返回⊥。z用于通过使用伪随机生成算法计算明文w私有的加密密钥和相似数据验证标签tw=h(G(z))。在基于辅助服务器的相似数据消息锁定加密去重方案中,密钥服务器不能获得加密密钥的任何信息。在基于相似标签的相似数据锁定加密去重方案中,每一个数据(比如数据w)的询问标签是通过TAG(1λ,)→tw得到的。更准确的来说,
Figure BDA0001553757070000141
其中g是双线性群的生成元,h是抗碰撞哈希函数,r是随机数。假设用户C拥有数据w'。用户C首先计算fk'←FKG(r2,w')然后运行密钥再生成算法计算
Figure BDA0001553757070000142
最后对于每一个记录用户验证云服务器S是否存在
Figure BDA0001553757070000143
和标签
Figure BDA0001553757070000144
详细来说,服务器S验证
Figure BDA0001553757070000145
是否相等。在发现相应的标签之后,用户C与服务器进行数据拥有证明协议。
下面结合实验对本发明的应用效果作详细的描述。
本发明的***在MySQL数据库***上使用3000行C++代码实现。本发明利用免费的GMP库来实现SimHash算法。密码哈希算法和异或加密算法(SHA-256和异或加密算法)由OpenSSL库来实现。本发明在运行Linux 14.04的两台计算机上分别运行客户端和服务器应用程序,使用的计算机硬件配置为:1.70GHz Intel i5-3317U CPU,4GB内存。为了在局域网上进行实验,本发明实现了客户端与服务器之间的通信,并将这两台机器放在同一个区域。服务器和客户端之间的有线连接的通信带宽设置为10Mbps。为了测量本发明的***在真实数据集上的性能,本发明使用了亚马逊电影评论文本数据集,包含7911684个文本文件,每个文本文件的长度约为1-15KB,图像数据超过1400万张图像。
Figure BDA0001553757070000151
表1不同算法的计算时间
对相似数据锁定加密***的测试结果如表1所示。具体情况如下:FKG是相似哈希函数,本发明在本文中采用了64位的SimHash和64位的PHash进行实现(SimHash只能用于处理文本文件,PHash可以适用于文本和图像文件)。给定固定长度的文本数据(1KB),SimHash和PHash的平均计算时间分别为1386us和5312us。给定一个图像JPEG数据(10KB),PHash的平均计算时间为6439us。RKG算法在64和256位长度下计算分别需要261us和885us。REP算法在64和256位长度下分别需124us和368us。采用异或运算对ENC和DEC中的数据进行加密和解密,对1KB比特串执行ENC和DEC操作需要耗时338us。类似于FKG,TAG的实现也通过使用相似哈希函数实现的(即本发明的方案中使用的64位SimHash算法)。另外,本发明观察到FKG、ENC、DEC和TAG的计算时间与输入的大小有关,本发明在图5和图6分别给出模拟结果。随着输入数据量的大小的增加,它们的计算时间是线性增加的。
最后,本发明用文本数据和图像数据来测试本发明的相似数据去重***。如图7所示,实验运行在100,000个记录的文本数据库上,每个记录具有256位标记。如图8所示,实验运行在1000个记录的图像数据库上,每个记录具有64位标记。在这两个测试中,明文客户端将与服务器进行交互,验证数据库中是否存在相似的密文。如果服务器数据库中没有重复的类似数据,则客户端将上传其密文。否则,服务器将与用户进行相似数据去重,并将相似数据的链接发送给用户。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (3)

1.一种云环境中相似数据消息锁定加密去重方法,其特征在于,所述云环境中相似数据消息锁定加密去重方法采用相似性保留哈希函数,基于纠错码的密钥提取方法和基于伪随机生成器的安全对称加密算法实现对相似数据的去重;通过汉明距离缩减和标签切割最优化的方法提高标签查询效率;
所述云环境中相似数据消息锁定加密去重方法的客户端应用相似度保留哈希算法来生成明文的去重标签和相似数据密钥;使用相似性保留哈希,相似的明文数据将映射到具有特定长度的相似标签和相似数据密钥;在特定的汉明距离内的相似数据总能得到相同的随机加密密钥,第一个用户选择一些辅助参数并计算明文w'的随机密钥;辅助参数将存储在云服务器上;当随后的用户拥有相似明文数据w(w≈w')的标签tw并且想要执行相似数据去重操作时,云服务器将发送辅助参数给后来上传的用户,后来上传的用户通过运行密钥重生成算法生成密钥kw;如果文件w和文件w'的汉明距离小于特定的值,若(fw,fw')<t,则密钥重生成算法将输出相同的随机密钥kw'=kw
所述云环境中相似数据消息锁定加密去重方法的相似消息锁定加密方案由六个多项式时间算法构成(FKG,KG,REP,ENC,DEC,TAG):
FKG(1λ,r2,w)→fkw:是一个基于相似保留哈希函数的相似密钥生成算法,用于让用户计算数据的摘要信息;以安全参数λ、随机数r2∈{0,1}λ和文件w作为输入,输出一个文件的相似摘要fkw
RKG(1λ,r3,fkw)→{kw,Pw}:是一个密钥生成算法,用于让用户计算数据的加密密钥和辅助参数;x是一个公开参数,RKG算法使用安全略图的略图算法SS{r3,w}→Pw和模糊提取器中的提取算法Ext(w,x)→{Kw}生成辅助参数P={x,s}和一个随机加密密钥Kw,其中r3是一个随机参数用于生成一个随机的编码C(r3)→c算法C(·)是一个编码生成算法,编码c用于安全略图中的SS算法;
REP(fkw',Pw)→kw:是一个密钥再生算法,由用户运行,通过将辅助参数Pw和文件的模糊摘要fkw'作为输入,当且仅当fkw'与fkw相似的时候输出私钥kw;否则输出一个随机值;
ENC(kw,w)→cw:是一个加密算法,由用户运行用来计算加密数据并得到相应的密文,以文件w和一个私钥kw作为输入,返回密文
Figure FDA0002640830650000021
其中G(kw)→{0,1}|w|是伪随机生成器,以kw作为输入并输出长度为|w|的伪随机加密密钥G(kw);
DEC(kw,cw)→w:是一个解密算法,由用户运行用来计算输入数据的明文;它以密文cw和一个私钥kw作为输入,返回明文
Figure FDA0002640830650000022
TAG(1λ,r1,w)→tw:是一个标签生成算法,通过使用相似保留哈希函数实现,由用户运行用来计算输入数据的摘要;以安全参数λ,随机数r1和数据w为输入,返回数据标签tw
2.如权利要求1所述的云环境中相似数据消息锁定加密去重方法,其特征在于,所述云环境中相似数据消息锁定加密去重方法包括以下步骤:
客户端首先使用相似度保留哈希算法来生成明文的去重标签并发送给云服务器,云服务器判断是否有相似的数据已经存储在云服务器上;
若云服务器不拥有相似的数据,则需要用户生成相似数据密钥和用于相似密钥恢复的辅助信息,并将加密后的密文数据和辅助信息发送给云服务器;
若云服务器拥有相似的数据,则返回用于恢复相似密钥的辅助信息给用户,用户通过恢复出来的相似密钥对数据进行加密,并用得到的密文与服务器进行相似数据拥有验证,若通过验证,则云服务器允许用户访问数据。
3.如权利要求1所述的云环境中相似数据消息锁定加密去重方法,其特征在于,所述云环境中相似数据消息锁定加密去重方法使用[n,k,2t+1]F的纠错码C,基于汉明距离的安全略图的思想是使用纠错码C对数据w进行纠错;输入w,均匀随机选择码字c∈C,令s=SS(w)=w-c是c到w所需的变换;计算Rec(w',s),通过公式c'=w'-s然后解码c'得到c;通过w=c+s得到w。
CN201810055819.6A 2018-01-20 2018-01-20 云环境中相似数据消息锁定加密去重方法、云存储*** Active CN108400970B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810055819.6A CN108400970B (zh) 2018-01-20 2018-01-20 云环境中相似数据消息锁定加密去重方法、云存储***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810055819.6A CN108400970B (zh) 2018-01-20 2018-01-20 云环境中相似数据消息锁定加密去重方法、云存储***

Publications (2)

Publication Number Publication Date
CN108400970A CN108400970A (zh) 2018-08-14
CN108400970B true CN108400970B (zh) 2020-10-02

Family

ID=63094066

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810055819.6A Active CN108400970B (zh) 2018-01-20 2018-01-20 云环境中相似数据消息锁定加密去重方法、云存储***

Country Status (1)

Country Link
CN (1) CN108400970B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109379182B (zh) * 2018-09-04 2021-06-01 西安电子科技大学 支持数据去重的高效数据重加密方法及***、云存储***
CN109933618B (zh) * 2019-03-08 2023-05-12 西安电子科技大学 一种新型的加密数据挖掘***
CN110086789B (zh) * 2019-04-17 2021-07-13 腾讯科技(深圳)有限公司 一种数据传输的方法、装置、设备和介质
CN111211903B (zh) * 2019-12-02 2021-06-11 中国矿业大学 基于雾计算和保护隐私的移动群体感知数据报告去重方法
CN111050133B (zh) * 2019-12-23 2020-10-23 广州公评科技有限公司 一种基于区块链技术的视频数据处理***
CN113468553B (zh) * 2021-06-02 2022-07-19 湖北工业大学 一种面向工业大数据的隐私保护分析***及方法
CN113569223B (zh) * 2021-06-30 2024-02-09 珠海晶通科技有限公司 一种离线设备的安全认证方法
CN113792315B (zh) * 2021-09-17 2023-04-25 长春理工大学 一种支持块级加密去重的云数据访问控制方法及控制***

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101976321A (zh) * 2010-09-21 2011-02-16 北京工业大学 基于人脸特征密钥生成的加密方法
CN104216925A (zh) * 2013-06-05 2014-12-17 中国科学院声学研究所 一种视频内容去重的处理方法
CN104917609A (zh) * 2015-05-19 2015-09-16 华中科技大学 一种基于用户感知的高效安全数据去重方法及***
CN105939191A (zh) * 2016-07-08 2016-09-14 南京理工大学 一种云存储中密文数据的客户端安全去重方法
CN106100832A (zh) * 2016-06-12 2016-11-09 广东工业大学 一种云存储数据去重中基于收敛加密的密钥管理方法
CN106708951A (zh) * 2016-11-25 2017-05-24 西安电子科技大学 支持所有权认证的客户端图像模糊去重方法
CN107483585A (zh) * 2017-08-18 2017-12-15 西安电子科技大学 云环境中支持安全去重的高效数据完整性审计***及方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140149320A1 (en) * 2012-11-29 2014-05-29 International Business Machines Corporation Consistent price optimization in transportation networks
CN104346753A (zh) * 2013-08-07 2015-02-11 鸿富锦精密工业(深圳)有限公司 裁切最优化处理***及方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101976321A (zh) * 2010-09-21 2011-02-16 北京工业大学 基于人脸特征密钥生成的加密方法
CN104216925A (zh) * 2013-06-05 2014-12-17 中国科学院声学研究所 一种视频内容去重的处理方法
CN104917609A (zh) * 2015-05-19 2015-09-16 华中科技大学 一种基于用户感知的高效安全数据去重方法及***
CN106100832A (zh) * 2016-06-12 2016-11-09 广东工业大学 一种云存储数据去重中基于收敛加密的密钥管理方法
CN105939191A (zh) * 2016-07-08 2016-09-14 南京理工大学 一种云存储中密文数据的客户端安全去重方法
CN106708951A (zh) * 2016-11-25 2017-05-24 西安电子科技大学 支持所有权认证的客户端图像模糊去重方法
CN107483585A (zh) * 2017-08-18 2017-12-15 西安电子科技大学 云环境中支持安全去重的高效数据完整性审计***及方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
一种基于重复数据删除技术的云中云存储***;毛波;《计算机研究与发展》;20160729;1-10 *
一种安全的云存储数据确定性删除方法;肜丽;《信阳师范学院学报(自然科学版)》;20140809;1-4 *

Also Published As

Publication number Publication date
CN108400970A (zh) 2018-08-14

Similar Documents

Publication Publication Date Title
CN108400970B (zh) 云环境中相似数据消息锁定加密去重方法、云存储***
JP6180177B2 (ja) プライバシーを保護することができる暗号化データの問い合わせ方法及びシステム
US10374807B2 (en) Storing and retrieving ciphertext in data storage
CN112800445B (zh) 一种用于密文数据的前后向安全和可验证的布尔查询方法
Akhila et al. A study on deduplication techniques over encrypted data
CN113037753B (zh) 一种基于区块链的具有隐私保护性的加密数据共享方法
CN112685753B (zh) 一种用于加密数据存储的方法及设备
Wen et al. BDO-SD: An efficient scheme for big data outsourcing with secure deduplication
Almrezeq ‏ An Enhanced Approach to Improve the Security and Performance for Deduplication
CN114528331A (zh) 基于区块链的数据查询方法及装置、介质、设备
Jeyaselvi et al. Cyber security-based multikey management system in cloud environment
Guo et al. Two-party interactive secure deduplication with efficient data ownership management in cloud storage
Abo-Alian et al. Auditing-as-a-service for cloud storage
CN113259317A (zh) 一种基于身份代理重加密的云存储数据去重方法
Kumar et al. A study on data de-duplication schemes in cloud storage
Yan et al. Secure and efficient big data deduplication in fog computing
CN108494552B (zh) 支持高效收敛密钥管理的云存储数据去重方法
Sepehri et al. Efficient implementation of a proxy-based protocol for data sharing on the cloud
Yoosuf et al. FogDedupe: A Fog‐Centric Deduplication Approach Using Multi‐Key Homomorphic Encryption Technique
Tian et al. Pts-dep: A high-performance two-party secure deduplication for cloud storage
Ali et al. Distributed File Sharing and Retrieval Model for Cloud Virtual Environment
Ruan et al. A Delegated Offline Private Set Intersection Protocol for Cloud Computing Environments
Patil et al. A survey on: secure data deduplication on hybrid cloud storage architecture
Supriya et al. STUDY ON DATA DEDUPLICATION IN CLOUD COMPUTING.
Islam et al. Blending convergent encryption and access control scheme for achieving a secure and storage efficient cloud

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant