CN110035067B - 云存储中支持高效数据去重和属性撤销的属性加密方法 - Google Patents

云存储中支持高效数据去重和属性撤销的属性加密方法 Download PDF

Info

Publication number
CN110035067B
CN110035067B CN201910189946.XA CN201910189946A CN110035067B CN 110035067 B CN110035067 B CN 110035067B CN 201910189946 A CN201910189946 A CN 201910189946A CN 110035067 B CN110035067 B CN 110035067B
Authority
CN
China
Prior art keywords
attribute
data
key
cloud
ciphertext
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
CN201910189946.XA
Other languages
English (en)
Other versions
CN110035067A (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 CN201910189946.XA priority Critical patent/CN110035067B/zh
Publication of CN110035067A publication Critical patent/CN110035067A/zh
Application granted granted Critical
Publication of CN110035067B publication Critical patent/CN110035067B/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/0478Network 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 applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
    • 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
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • 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
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • 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
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0846Network architectures or network communication protocols for network security for authentication of entities using passwords using time-dependent-passwords, e.g. periodically changing passwords
    • 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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

本发明属于云计算和信息安全技术领域,公开了一种云存储中支持高效数据去重和属性撤销的属性加密方法,该方法在云服务器与数据拥有者之间引入属性权威,属性权威通过映射找到外包数据标签对应的特定素数,云服务器只需对该素数进行简单的除法运算即可判定出云中是否已存在相应的外包数据,解决了当前去重方案中重复数据搜索效率低下的问题;该方法要求私有云根据属性权威颁发的更新密钥完成密文更新,解决了当前去重方案无法撤销非授权用户的问题;此外,该方法支持密文外包解密功能,减少了用户的计算负担。

Description

云存储中支持高效数据去重和属性撤销的属性加密方法
技术领域
本发明属于云计算和信息安全技术领域,尤其涉及一种云存储中支持高效数据去重和属性撤销的属性加密方法。
背景技术
目前,业内常用的现有技术是这样的:随着互联网的快速发展,云计算给社会各个领域带来了巨大变革。越来越多的企业或个人喜欢凭借云计算享受高质量的服务,例如数据存储,数据共享和外包计算。为了数据隐私,数据拥有者将敏感数据进行加密。然而传统的加密原语与细粒度的数据共享并不兼容。例如,数据所有者希望多个客户端访问数据,并使用接收者的公钥对数据加密然后外包给云服务器。用户接收到密文,然后使用其私钥解密从而获得数据。属性加密可以满足这一要求,它是用于一对多通信中的细粒度访问控制的加密原语之一。
在商业云计算中,海量数据给云服务器的存储容量和计算能力带来了巨大挑战。如何高效和安全地管理数据是一个有待解决的问题。去重(也称为单实例存储)已被用作最大化存储数据的方法。具体而言,去重方法可判别重复文件,无论数据上传多少次仅存储文件的单个副本。现有的大多数去重方案都是基于消息锁定加密原语设计的,其设计经验可以借鉴到基于属性加密方法中。崔等学者设计了一种有前途的支持去重的属性加密方法,在保证云中资源高效利用的同时实现数据共享。但是,在他们方案中,繁重的计算成本和重复数据的搜索延迟导致其方案去重效率低下。特别是,如果采用逐个搜索方法,重复数据搜索的时间复杂度随着云中密文的数量线性增加。这给云服务器带来了沉重的计算负担。因此,探索高效的去重方法是一个值得研究的问题。
此外,当前最先进的属性加密方法直接应用于实际应用时,还存在若干问题。对于违反规则或离开***的用户,传统的ABE方案无法阻止他们访问文件。撤销在属性加密方案中尤其是一个挑战性问题,因为单个属性由多个人共享。这意味着撤销任何属性或任何单个用户会影响拥有共同属性的其他用户。例如,在公司***中,Alice和Bob拥有共同的属性,但Bob有不规范的操作。一些相应的文件将无法被其访问。因此,如何实现用户离开***后撤销其访问权限是一个问题。
综上所述,现有技术存在的问题是:
(1)现有支持去重方法重复数据搜索效率低下,导致了较长的服务延迟。
(2)现有方法由于各自特定的构造,无法兼容数据去重和属性撤销两种功能。
解决上述技术问题的难度和意义:
1.去重高效的关键,在于云服务器根据标签如何高效地判定出云中是否有重复的数据。现有的支持去重方法通过去重决策树来提高去重效率,然而他们方法的时间复杂度为线性,这种问题都没有很好地解决。素数基本运算操作为解决这一问题提供了一种可能,但关键在于如何设计合适的交互模式,使私有云运用较少的操作即可判别出云中是否有相同的数据。如果这个问题被解决,数据外包服务过程可在保证数据隐私性的同时,降低服务延迟。
2.在商业云存储中,数据的隐私性是一个重要的问题,然而现有相关技术仅支持数据去重或属性撤销,并且在支持去重的属性加密方法中,如果有用户离开***或者密钥丢失,将会给***中数据安全带来很大的挑战。属性撤销引发了数据的更新问题,所以在支持去重的属性加密方法中实现属性撤销的关键在于合理交互、存储、更新机制,尽可能以较少的代价在属性加密方法中实现属性撤销,可以保证数据安全的同时,进一步提高资源节省率。在属性加密方法中,同时实现数据去重和属性撤销的关键,在于数据拥有者利用其访问策略对数据进行加密,相同的明文数据将产生不同的密文,所以私有云须对云中存储的密文进行重加密,使得数据拥有者制定的访问权限内的用户均可以访问密文。现有的属性撤销方法具体为属性权威生成属性公钥和版本密钥,数据拥有者利用属性对应的属性公钥加密。那么如何在新的访问策略下对云中原始密文进行重加密并且实现属性撤销是一个有待解决的问题。
发明内容
针对现有技术存在的问题,本发明提供了一种云存储中支持高效数据去重和属性撤销的属性加密方法。
本发明是这样实现的,一种云存储中支持高效数据去重和属性撤销的属性加密方法,所述云存储中支持高效数据去重和属性撤销的属性加密方法包括:
去重协议,数据拥有者上传数据前发送文件标签到属性权威,属性权威映射该文件标签为唯一的素数并且发送给私有云;私有云只须进行一个除法操作判定云中是否有相同的数据;
在重加密阶段,私有云利用密文中的陷门密钥对数据进行重加密;当有用户离开***时,属性权威更新该属性对应的属性公钥,并且给私有云分发撤销属性的更新密钥;私有云更新非撤销用户的属性代理密钥,同时更新密文。
进一步,所述云存储中支持高效数据去重和属性撤销的属性加密方法具体包括:
步骤一,属性权威输入一个安全参数λ,获得公共参数PP,主密钥MSK,并为每个属性生成版本密钥{VKx}x∈U以及属性公钥{PKx}x∈U
步骤二,属性权威输入主密钥MSK,该用户对应的属性集合A以及版本密钥{VKx}x∈A,获得私有云的属性代理密钥SK1和用户私钥SK2
步骤三,数据拥有者随机选择密钥KF∈GT,利用对称加密算法对加密数据F,利用源于数据的密钥加密KF;为了实现数据分享,数据拥有者输入公共参数PP,属性公钥{PKx}x∈U,制定相应的访问策略(M,ρ)后加密KF,同时为文件生成文件标签T;
步骤四,发送去重请求,数据拥有者发送(ID,T)给属性权威,属性权威将文件标签映射为唯一的素数pi,并将该素数发送到私有云;
步骤五,重复数据搜索,私有云收到文件标签对应的素数pi,执行除法操作pi|p即可判定云中是否有重复数据;
步骤六,文件验证,如果云中有重复数据,数据拥有者和私有云进行所有权验证;私有云给数据拥有者发送部分密文,如果数据拥有者确实拥有该数据进而可以获得该数据对应的随机密钥,生成密文;私有云根据云中存储的密文和该用户生成的新密文进行验证;
步骤七,重加密,私有云输入公共参数PP,属性公钥{PKx}x∈U,新的访问策略(M',ρ')以及云中存储的密文CT,获得新的密文CT';
步骤八,数据解密及验证,私有云利用属性权威分发的属性代理密钥对密文进行解密;然后数据用户利用属性权威分发的私钥SK2对数据进行解密获得F;最后数据拥有者利用密文中的标签对数据进行验证,如果验证通过,则接受此密文;否则,拒绝此密文;
步骤九,属性撤销,当***中有用户离开,属性权威生成更新密钥
Figure GDA0002093885690000041
分发给私有云;私有云更新非撤销用户的属性代理密钥以及密文。
进一步,所述步骤一的***初始化中,属性权威输入一个安全参数λ后执行如下操作:
(1)随机选择线性群G和GT,一个线性对e(G,G)→GT,这里的G和GT是素数阶p的循环群,g为G的一个生成元;
(2)随机产生四个抗碰撞的哈希函数:
H:{0,1}n→G,H0:M→Zp,H1:G1→Zp,H2:{0,1}*→{0,1}n
(3)随机选择α,h∈Zp,并且计算ga,e(g,g)α后获得公共参数PP和主密钥MSK如下:
PP=(p,g,h,H,H0,H1,H2,ga,e(g,g)α),MSK=α;
(4)对于每个属性x∈U,选择随机指数vx∈Zp作为版本密钥VKx,并且计算
Figure GDA0002093885690000051
作为属性公钥;
(5)公布公共参数PP和属性公钥PKx,保密主密钥MSK和版本密钥VKx
进一步,所述步骤二的密钥生成中,属性权威输入公共参数PP,主密钥MSK,属性集合A以及该属性集合对应的版本密钥{VKx}x∈A,随机选择t,z∈Zp,并且计算属性代理密钥SK1和用户私钥SK2如下:
Figure GDA0002093885690000052
进一步,所述步骤三的数据初始化过程中,数据拥有者利用对称密钥KF∈GT对数据F加密获得C0 1,并且计算K0=H(F),利用K0加密KF获得C0 2;令C=C0 1||C0 2;然后数据拥有者加密KF:Encrypt(PP,KF,(M,ρ),{PKx}x∈U)→(CT',TK);为了产生密文,数据拥有者输入公共参数PP,随机密钥KF,一个访问策略(M,ρ),以及属性公钥{PKx}x∈U后,执行如下操作:
(1)随机选择一个秘密值s∈Zp
(2)选择一个向量
Figure GDA0002093885690000053
(3)对于j=1,...,l,计算
Figure GDA0002093885690000054
并且随机选择r1,...,rl∈Zp
(4)输出密文如下:
Figure GDA0002093885690000055
D=KF·e(g,g)αs
Figure GDA0002093885690000056
TK=(ga)s
(5)计算T=H2(K0)作为文件标签;其中陷门密钥TK是在重加密阶段私有云用于重加密的密钥;最后,数据拥有者获得密文CT=(B,L,C,D,TK,{Cj,Dj}j∈[1,l])和文件标签T。
进一步,所述步骤四的发送请求过程中,数据所有者将去重请求(ID,T)发送到属性权威;然后属性权威将文件标签映射为唯一的素数,并分发该素数给私有云;
所述步骤五的重复数据搜索中,对于文件标签T相对应的素数pi,私有云执行除法操作pi|p,其中p是云中文件标签对应素数的乘积;如果不被整除,将数据拥有者视为第一个数据上传者,然后私有云计算
Figure GDA0002093885690000061
并且请求数据拥有者上传密文;否则,数据拥有者和私有云执行所有权验证。
进一步,所述步骤七的文件验证过程,如果云中数据发生重复,私有云和数据拥有者进行所有权验证:
(1)私有云给数据拥有者发送一部分密文C0 2
(2)数据拥有者利用K0=H(F)对其解密,从而获得随机密钥KF
(3)计算C0 1'=Enc(F,KF)以及φ(C0 1');
(4)私有云比对φ(C0 1')是否与φ(C0 1)相等;如果相等,则所有权验证成功,私有云向数据拥有者请求访问策略;否则验证失败;
所述步骤七的重加密中,当所有权验证成功后,私有云输入公共参数PP,属性公钥{PKx}x∈U,原始的密文CT以及一个新的访问策略(M',ρ'),M'是l'×n'的矩阵,并且随机选择
Figure GDA0002093885690000062
表示
Figure GDA0002093885690000063
Figure GDA0002093885690000064
输出新的密文:
Figure GDA0002093885690000065
Figure GDA0002093885690000066
私有云即使不知道s,计算Cj′′如下:
Figure GDA0002093885690000067
所述步骤八的数据下载分为由私有云执行的预解密阶段和用户执行的解密阶段:
(1)Pre.Decrypt(CT,SK1)→CT”私有云输入密文CT,属性代理密钥SK1;属性集合满足访问策略,使得常数wj∈Zp可被计算并且满足∑j∈IwjAj=(1,0,...,0),这里的I={j:ρ(j)∈A};计算过程如下:
Figure GDA0002093885690000071
(2)C.Decrypt(CT”,SK2)→F用户输入部分解密的密文CT”以及私钥SK2,并且计算
Figure GDA0002093885690000072
最后利用对称解密算法恢复出数据F;
(3)用户验证下载数据的完整性。如果
Figure GDA0002093885690000073
则用户接受密文,否则拒绝密文;
所述步骤八的属性撤销中,当用户的属性被撤销,属性权威生成更新密钥。私有云为非撤销用户生成新的属性代理密钥以及新的密文;
更新密钥的生成
Figure GDA0002093885690000074
属性权威输入撤销属性对应的版本密钥VKj,随机选择新的版本密钥
Figure GDA0002093885690000075
并且计算
Figure GDA0002093885690000076
属性权威分发
Figure GDA0002093885690000077
给私有云;属性权威更新撤销属性的属性公钥为
Figure GDA0002093885690000078
更新非撤销用户的属性代理密钥
Figure GDA0002093885690000079
当私有云收到属性权威分发的非撤销用户的更新密钥,更新非撤销用户的属性代理密钥SK1,生成新的属性代理密钥
Figure GDA00020938856900000710
如下:
Figure GDA00020938856900000711
密文更新
Figure GDA00020938856900000712
当私有云收到属性权威分发的更新密钥
Figure GDA00020938856900000713
计算更新密文如下:
Figure GDA00020938856900000714
本发明的另一目的在于提供一种实现所述云存储中支持高效数据去重和属性撤销的属性加密方法的云存储中支持高效数据去重和属性撤销的属性加密***,所述云存储中支持高效数据去重和属性撤销的属性加密***包括:属性权威模块,云服务器模块,数据拥有者模块,用户模块。
本发明的另一目的在于提供一种应用所述云存储中支持高效数据去重和属性撤销的属性加密方法的云存储信息处理***。
本发明的另一目的在于提供一种应用所述云存储中支持高效数据去重和属性撤销的属性加密方法的信息安全处理***。
综上所述,本发明的优点及积极效果为:本发明提出云存储中支持高效数据去重和属性撤销的属性加密方法中云服务器能够高效地搜索重复数据,同时,该发明能够同时支持数据去重和属性撤销,不但可以缓解云服务器工作压力,提高***安全性,还可以降低服务成本和文件访问延迟,提高用户服务体验。
本发明基于去重方案中,无法高效搜索重复数据的特点,本发明提出新颖的去重协议。无论文件为初始上传还是后续上传,数据拥有者须和属性权威进行交互,发送文件标签以及身份,属性权威将文件标签映射为相应的素数并且发送给私有云。如此,执行一个除法操作即可高效地判定云中是否有相同的数据,从而降低了服务延迟。
本发明支持多功能的属性加密:提出改进的属性加密方案,使得同时支持数据去重和属性撤销。在达到高效云储存资源利用率的同时,对于离开***的用户,可以实现其访问权限的撤销,保证了数据的安全。
附图说明
图1是本发明实施例提供的云存储中支持高效数据去重和属性撤销的属性加密方法流程图。
图2是本发明实施例提供的云存储中支持高效数据去重和属性撤销的属性加密方法的模型示意图。
图3是本发明实施例提供的云存储中支持高效数据去重和属性撤销的属性加密方法的实现流程图。
图4是本发明实施例提供的Jiang等人和我们的方法关于重复数据搜索时间的比较图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有支持去重方案中重复数据搜索效率低下的问题,提出的方案中包含高效的去重协议。数据拥有者上传数据前发送文件标签到属性权威,属性权威映射该文件标签为唯一的素数并且发送给私有云。私有云只须进行一个除法操作即可判定云中是否有相同的数据。
针对现有支持去重方案不能实现属性撤销的问题,提出了一种属性加密方案的变体,使得其同时支持数据去重和属性撤销。在重加密阶段,私有云利用密文中的陷门密钥对数据进行重加密。当有用户离开***时,属性权威更新该属性对应的属性公钥,并且给私有云分发撤销属性的更新密钥。私有云更新非撤销用户的属性代理密钥,同时更新密文。
下面结合附图对本发明的应用原理作详细的描述。
如图1所示,本发明实施例提供的云存储中支持高效数据去重和属性撤销的属性加密方法包括以下步骤:
S101:***初始化,属性权威生成***的公共参数,主密钥,属性公钥以及版本密钥;
S102:属性权威计算***中属性代理密钥和用户私钥;
S103:数据拥有者生成文件密文,随机密钥的密文,以及文件标签;
S104:发送去重请求给属性权威;
S105:私有云判定云中是否有重复数据;
S106:文件验证;
S107:私有云对云中存储的密文重加密;
S108:数据解密及验证;
S109:属性撤销。
下面结合附图对本发明的应用原理作进一步的描述。
本发明实施例提供的云存储支持高效数据去重和属性撤销的属性加密方法的***模型如图2所示,包含三类实体:1、云服务模块(Cloud);2、属性权威模块(AttirbuteAuthority);3、数据拥有者模块(Data Owner);4、用户模块(Client)。其中,云服务器拥有足够的存储空间和计算能力。包括公有云(Public cloud)和私有云(Privatecloud),Public cloud是不可信的,会和用户合谋,主要负责存储数据;Private cloud是半可信的,不会和用户合谋,执行重复数据的搜索,标签的维护以及数据的重加密。AttributeAuthority是完全可信的一方,主要负责用户密钥的生成,除此之外,将文件标签映射为唯一的素数。Data owner拥有大量的外包数据并且可制定相应的访问策略。Client包括多个普通用户,是使用数据外包/检索服务的实体。
为了减少存储和带宽浪费,数据所有者不应该上传超过一个相同内容的加密数据,并且应该从本地存储中删除数据。
如图3所示,本发明实施例提供的云存储中支持高效数据去重和属性撤销的属性加密方法包括以下步骤:
步骤一,***初始化:
(1.1)属性权威输入一个安全参数λ;
(1.2)随机选择线性群G和GT,一个线性对e(G,G)→GT,这里的G和GT是素数阶p的循环群,g是G的一个生成元;
(1.3)随机产生四个抗碰撞的哈希函数H:{0,1}n→G,H0:M→Zp,H1:G1→Zp,H2:{0,1}*→{0,1}n
(1.4)随机选择α,h∈Zp,并且计算ga,e(g,g)α后获得公共参数PP和主密钥MSK如下:
PP=(p,g,h,H,H0,H1,H2,ga,e(g,g)α),MSK=α.
(1.5)对于每个属性x∈U,属性权威选择随机指数vx∈Zp作为版本密钥VKx,并且计算
Figure GDA0002093885690000111
作为属性公钥;
(1.6)公布公共参数和属性公钥,保密主密钥和版本密钥。
步骤二,密钥生成:
(2.1)属性权威输入公共参数PP,主密钥MSK,属性集合A以及该属性集合对应的版本密钥VKx
(2.2)随机选择t,z∈Zp
(2.3)计算用户私钥如下:
Figure GDA0002093885690000112
步骤三,数据初始化:
(3.1)数据拥有者用对称密钥KF∈GT对数据F加密获得C0 1
(3.2)计算K0=H(F);
(3.3)利用K0加密随机密钥KF获得C0 2,令C=C0 1||C0 2
(3.4)数据拥有者加密KF。Encrypt(PP,KF,(M,ρ),{PKx}x∈U)→(CT',TK)为了产生密文,数据拥有者执行如下操作;
(3.4.1)输入一个访问策略(M,ρ),公共参数PP,属性公钥{PKx}x∈U以及随机密钥KF
(3.4.2)随机选择一个秘密值s∈Zp
(3.4.3)选择一个向量
Figure GDA0002093885690000113
(3.4.4)对于j=1,...,l,计算
Figure GDA0002093885690000114
并且随机选择r1,...,rl∈Zp
(3.4.5)输出密文如下:
Figure GDA0002093885690000115
Figure GDA0002093885690000116
(3.4.6)计算T=H2(K0)作为文件标签;
其中陷门密钥TK是重加密密钥;最后,数据拥有者获得密文CT=(B,L,C,D,TK,{Cj,Dj}j∈[1,l])和文件标签T。
步骤四,发送去重请求:
(4.1)数据所有者发送去重请求(ID,T)到属性权威;
(4.2)属性权威映射文件标签映射为唯一的素数,并发送该素数到私有云。
步骤五,重复数据搜索:
(5.1)对于文件标签对应的素数,私有云进行除法操作pi|p,其中p是文件标签对应素数的乘积;
(5.2)如果不被整除,将该数据拥有者视为第一个数据上传者,然后私有云计算
Figure GDA0002093885690000121
并且请求数据拥有者上传密文;否则,数据拥有者和私有云进行所有权验证。
步骤六,文件验证:
如果云中数据发生重复,私有云和数据拥有者进行所有权验证:
(6.1)私有云给数据拥有者发送一部分密文C0 2
(6.2)数据拥有者利用K0=H(F)对其解密获得随机密钥KF
(6.3)计算C0 1'=Enc(F,KF),并且计算φ(C0 1');
(6.4)私有云比对φ(C0 1')=φ(C0 1)是否成立;如果成立,所有权验证成功,请求数据拥有者访问策略;否则验证失败。
步骤七,重加密:
当所有权验证成功后,私有云执行如下操作:
(7.1)私有云输入原始的密文CT,一个公共参数PP,属性公钥{PKx}x∈U,以及新的访问策略(M',ρ'),这里的M'是l'×n'的矩阵;
(7.2)随机选择
Figure GDA0002093885690000122
表示
Figure GDA0002093885690000123
这里的
Figure GDA0002093885690000124
(7.3)输出新的密文:
Figure GDA0002093885690000125
Figure GDA0002093885690000131
步骤八,数据下载:
为了减少资源有限用户的计算负担,分为由私有云执行的预解密阶段和用户执行的解密阶段。
(8.1)Pre.Decrypt(CT,SK1)→CT”私有云输入密文CT,属性代理密钥SK1。假设属性集合满足访问策略,使得常数wj∈Zp可被计算并且满足∑j∈IwjAj=(1,0,...,0),这里的I={j:ρ(j)∈A}。计算过程如下:
Figure GDA0002093885690000132
(8.2)C.Decrypt(CT”,SK2)→F用户输入部分解密的密文CT”以及用户私钥SK2,并且计算
Figure GDA0002093885690000133
最后,利用对称解密算法恢复数据F。
(8.3)用户可以验证下载数据的完整性。如果
Figure GDA0002093885690000134
则用户接受此密文,否则拒绝此密文。
步骤九,属性撤销:
(9.1)更新密钥的生成
Figure GDA0002093885690000135
属性权威输入撤销属性对应的版本密钥VKj
(9.1.1)随机选择新的版本密钥
Figure GDA0002093885690000136
(9.1.2)计算
Figure GDA0002093885690000137
分发
Figure GDA0002093885690000138
给私有云;
(9.1.3)属性权威更新撤销属性的属性公钥
Figure GDA0002093885690000139
(9.2)更新非撤销用户的属性代理密钥
Figure GDA00020938856900001310
当私有云收到属性权威分发的更新密钥,更新非撤销用户的属性代理密钥SK1,计算更新密钥
Figure GDA00020938856900001311
如下:
Figure GDA0002093885690000141
(9.3)密文更新
Figure GDA0002093885690000142
当私有云收到属性权威分发的更新密钥
Figure GDA0002093885690000143
计算更新密文如下:
Figure GDA0002093885690000144
下面仿真实验对本发明的应用效果做详细的描述。
本发明对重复数据搜索的时间消耗进行了仿真实验,并且与Jiang等人的方案进行了比较。假设云中有1000份文件,我们随机产生1000个素数,利用C#语言模拟实验。在图4中,横坐标表示云中文件的个数,纵坐标表示搜索重复数据所需的时间消耗。显然,不管云中是否有相同的数据,我们的方案仅需要极少的时间,甚至达到千分毫秒,因此本发明实施例是非常高效的,极大提高了去重的效率,较少了服务延迟。
对于属性加密方法的各个算法,本发明进行了仿真实验,实验结果如表1所示。在密钥生成阶段,当属性个数为10时,属性权威需消耗87.9749ms,属性个数为40消耗288.272ms;在数据加密阶段,当属性个数为10时,数据拥有者需消耗236.8555ms,属性个数为40消耗838ms;在重加密阶段,当属性个数为10,私有云需消耗216.5536ms,属性个数为40消耗817.888ms;在解密阶段,数据用户的解密消耗时间和访问策略内的复杂度并没有关系,仅需1个指数操作的消耗时间;在密钥更新和密文更新阶段,均需要m个指数操作,例如当属性个数为10时,属性权威在密钥更新和密文更新阶段需要消耗的时间分别为69.69ms和65.56ms。并且各个阶段的时间消耗和属性个数是线性相关的,由此看出本发明实施例保证了功能的多样性和效率的高效性。、
表1是本发明实施例提供的仿真实验结果示意表。
Figure GDA0002093885690000151
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (5)

1.一种云存储中支持高效数据去重和属性撤销的属性加密方法,其特征在于,所述云存储中支持高效数据去重和属性撤销的属性加密方法包括:
去重协议,数据拥有者上传数据前发送文件标签到属性权威,属性权威映射该文件标签为唯一的素数并且发送给私有云;私有云只须执行一个除法操作即可判定云中是否有相同的数据;
在重加密阶段,私有云利用密文中的陷门密钥对数据进行重加密;当有用户离开***时,属性权威更新该属性对应的属性公钥,并且给私有云分发撤销属性的更新密钥;私有云更新非撤销用户的属性代理密钥,同时更新密文;
所述云存储中支持高效数据去重和属性撤销的属性加密方法具体包括:
步骤一,***初始化,属性权威输入一个安全参数λ,获得公共参数PP,主密钥MSK,并为每个属性生成版本密钥{VKx}x∈U以及属性公钥{PKx}x∈U
步骤二,密钥生成,属性权威输入主密钥MSK,该用户对应的属性集合A以及属性对应的版本密钥{VKx}x∈A,获得私有云的属性代理密钥SK1和用户私钥SK2
步骤三,数据初始化,数据拥有者随机选择密钥KF∈GT,GT是素数阶p的循环群,利用对称加密算法加密数据F以及源于数据的密钥加密KF;然后数据拥有者输入公共参数PP,属性公钥{PKx}x∈U,制定相应的访问策略(M,ρ)后加密KF,同时为文件生成文件标签T;
步骤四,发送去重请求,数据拥有者发送(ID,T)给属性权威,属性权威将文件标签映射为唯一的素数pi,并将该素数发送到私有云;
步骤五,重复数据搜索,私有云收到文件标签对应的素数pi,执行除法操作pi|p后判定云中是否有重复数据;p是文件标签对应素数的乘积;
步骤六,文件验证,如果云中有相同数据,数据拥有者和私有云进行所有权验证;私有云给数据拥有者发送部分密文,如果数据拥有者确实拥有该数据进而可以获得该数据对应的随机密钥,生成密文;私有云根据云中密文和该用户生成的新密文进行验证;
步骤七,重加密,私有云输入公共参数PP,属性公钥{PKx}x∈U,新的访问策略(M',ρ'),M'是l'×n'的矩阵,以及云中存储的密文CT,获得新的密文CT';
步骤八,数据解密及验证,私有云利用属性权威分发的属性代理密钥对密文进行解密;然后数据用户利用属性权威分发的私钥SK2对数据进行解密获得F;最后数据拥有者利用密文中的标签对数据进行验证,如果验证通过,则接受此密文;否则,拒绝此密文;
步骤九,属性撤销,当***中有用户离开,属性权威生成更新密钥
Figure FDA0003509355260000021
分发给私有云;私有云更新非撤销用户的属性代理密钥以及密文。
2.如权利要求1所述的云存储中支持高效数据去重和属性撤销的属性加密方法,其特征在于,所述步骤一的***初始化中,属性权威输入一个安全参数λ后执行如下操作:
(1)随机选择线性群G和GT,一个线性对e(G,G)→GT,这里的G和GT是素数阶p的循环群,g是G的一个生成元;
(2)随机产生四个抗碰撞的哈希函数:
H:{0,1}n→G,H0:M→Zp,H1:G1→Zp,H2:{0,1}*→{0,1}n
(3)随机选择α,h∈Zp,并且计算ga,e(g,g)α后获得公共参数PP和主密钥MSK如下:
PP=(p,g,h,H,H0,H1,H2,ga,e(g,g)α),MSK=α;
(4)对于每个属性,选择随机指数vx∈Zp作为版本密钥VKx,并且计算
Figure FDA0003509355260000022
作为属性公钥;
(5)公布公共参数PP和属性公钥PKx,保密主密钥MSK和版本密钥VKx
所述步骤二的密钥生成中,属性权威输入公共参数PP,主密钥MSK,属性集合A以及该属性集合对应的版本密钥{VKx}x∈A,随机选择t,z∈Zp,并且计算属性代理密钥SK1和用户私钥SK2如下:
Figure FDA0003509355260000031
所述步骤三的数据初始化过程中,数据拥有者利用对称密钥KF∈GT对数据F加密获得C0 1,并且计算K0=H(F),利用K0加密KF获得C0 2;令C=C0 1||C0 2;然后数据拥有者加密KF:Encrypt(PP,KF,(M,ρ),{PKx}x∈U)→(CT',TK);为了产生密文,数据拥有者输入一个访问策略(M,ρ),公共参数PP,公共属性密钥{PKx}x∈U,以及随机密钥KF后,执行如下操作:
(1)随机选择一个秘密值s∈Zp
(2)选择一个向量
Figure FDA0003509355260000032
(3)对于j=1,...,l,计算
Figure FDA0003509355260000033
并且随机选择r1,...,rl∈Zp
(4)输出密文如下:
Figure FDA0003509355260000034
D=KF·e(g,g)αs
Figure FDA0003509355260000035
TK=(ga)s
(5)计算T=H2(K0)作为文件标签;其中陷门密钥TK是在重加密阶段私有云用于重加密的密钥;最后,数据拥有者获得密文CT=(B,L,C,D,TK,{Cj,Dj}j∈[1,l])和文件标签T。
3.如权利要求1所述的云存储中支持高效数据去重和属性撤销的属性加密方法,其特征在于,所述步骤四的发送请求过程中,数据所有者将去重请求(ID,T)发送到属性权威;属性权威映射文件标签为唯一的素数,并将该素数发送到私有云;
所述步骤五的重复数据搜索中,对于文件标签T相对应的素数pi,私有云进行除法操作pi|p,其中p是云中存储文件标签对应素数的乘积;如果不被整除,将数据拥有者视为第一个数据上传者,然后私有云计算
Figure FDA0003509355260000036
并且请求数据拥有者上传密文;否则,数据拥有者和私有云执行所有权验证。
4.如权利要求2所述的云存储中支持高效数据去重和属性撤销的属性加密方法,其特征在于,所述步骤六的文件验证过程,如果云中数据发生重复,私有云和数据拥有者进行所有权验证:
(1)私有云给数据拥有者发送一部分密文C0 2
(2)数据拥有者利用K0=H(F)对其解密获得随机密钥KF
(3)计算C0 1'=Enc(F,KF)以及φ(C0 1');
(4)私有云比对φ(C0 1')是否与φ(C0 1)相等;如果相等,则所有权验证成功,私有云请求数据拥有者的访问策略;否则验证失败;
所述步骤七的重加密中,当所有权验证成功后,私有云输入原始的密文CT,公共参数PP,属性公钥{PKx}x∈U,以及新的访问策略(M',ρ'),M'是l'×n'的矩阵,并且随机选择
Figure FDA0003509355260000041
表示
Figure FDA0003509355260000042
其中
Figure FDA0003509355260000043
输出新的密文:
Figure FDA0003509355260000044
Figure FDA0003509355260000045
私有云即使不知道s,计算Cj’’如下:
Figure FDA0003509355260000046
所述步骤八的数据下载分为由私有云执行的预解密阶段和用户执行的解密阶段:
(1)Pre.Decrypt(CT,SK1)→CT”私有云输入密文CT,属性代理密钥SK1;属性集合满足访问策略,使得常数wj∈Zp可以被计算并且满足∑j∈IwjAj=(1,0,...,0),这里的I={j:ρ(j)∈A};计算过程如下:
Figure FDA0003509355260000047
(2)C.Decrypt(CT”,SK2)→F用户输入部分解密的密文CT”以及私钥SK2,并且计算
Figure FDA0003509355260000048
利用对称解密算法恢复数据F;
(3)用户验证下载数据的完整性;如果
Figure FDA0003509355260000051
则用户接受此数据F,否则拒绝此数据;
所述步骤八的属性撤销中,当用户的属性被撤销,属性权威生成更新密钥;私有云为非撤销用户生成新的属性代理密钥以及新的密文;
更新密钥的生成
Figure FDA0003509355260000052
属性权威输入撤销属性对应的版本密钥VKj,随机选择新的版本密钥
Figure FDA0003509355260000053
并且计算
Figure FDA0003509355260000054
属性权威分发
Figure FDA0003509355260000055
给私有云;属性权威更新撤销属性的属性公钥为
Figure FDA0003509355260000056
更新非撤销用户的属性代理密钥
Figure FDA0003509355260000057
当私有云收到属性权威分发的非撤销用户的更新密钥,更新非撤销用户的属性代理密钥SK1,生成新的属性代理密钥
Figure FDA0003509355260000058
如下:
Figure FDA0003509355260000059
密文更新
Figure FDA00035093552600000510
当私有云收到属性权威分发的更新密钥
Figure FDA00035093552600000511
计算更新密文如下:
Figure FDA00035093552600000512
5.一种实现权利要求1所述云存储中支持高效数据去重和属性撤销的属性加密方法的云存储中支持高效数据去重和属性撤销的属性加密***,其特征在于,所述云存储中支持高效数据去重和属性撤销的属性加密***包括:属性权威模块,云服务器模块,数据拥有者模块,用户模块。
CN201910189946.XA 2019-03-13 2019-03-13 云存储中支持高效数据去重和属性撤销的属性加密方法 Active CN110035067B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910189946.XA CN110035067B (zh) 2019-03-13 2019-03-13 云存储中支持高效数据去重和属性撤销的属性加密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910189946.XA CN110035067B (zh) 2019-03-13 2019-03-13 云存储中支持高效数据去重和属性撤销的属性加密方法

Publications (2)

Publication Number Publication Date
CN110035067A CN110035067A (zh) 2019-07-19
CN110035067B true CN110035067B (zh) 2022-03-25

Family

ID=67235981

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910189946.XA Active CN110035067B (zh) 2019-03-13 2019-03-13 云存储中支持高效数据去重和属性撤销的属性加密方法

Country Status (1)

Country Link
CN (1) CN110035067B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111901320B (zh) * 2020-07-16 2021-05-11 西南交通大学 基于属性撤销cp-abe的抗密钥伪造攻击加密方法及其***
CN112383391B (zh) * 2020-11-12 2024-03-19 北京安御道合科技有限公司 基于数据属性授权的数据安全保护方法、存储介质及终端
CN112822009B (zh) * 2021-01-26 2022-07-22 西安邮电大学 一种支持密文去重的属性密文高效共享***
CN113177053A (zh) * 2021-05-21 2021-07-27 滨州职业学院 一种计算机数据更新方法及相关装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102546161A (zh) * 2010-12-08 2012-07-04 索尼公司 可撤销的基于密文政策的属性基密码方法、设备和***
CN102938767A (zh) * 2012-11-13 2013-02-20 西安电子科技大学 基于云数据外包***的高效可验证的模糊关键词搜索方法
CN104113408A (zh) * 2014-07-11 2014-10-22 西安电子科技大学 一种实现及时用户属性撤销的基于密文策略属性加密方法
CN105049430A (zh) * 2015-06-30 2015-11-11 河海大学 一种具有高效用户撤销的密文策略属性基加密方法
CN106330865A (zh) * 2016-08-12 2017-01-11 安徽大学 云环境下支持高效撤销的属性基关键字搜索方法
CN108200172A (zh) * 2018-01-03 2018-06-22 西安电子科技大学 一种支持安全数据去重与删除的云存储***及方法
CN109379182A (zh) * 2018-09-04 2019-02-22 西安电子科技大学 支持数据去重的高效数据重加密方法及***、云存储***

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9021269B2 (en) * 2012-07-18 2015-04-28 TapLink, Inc. Blind hashing
US10509733B2 (en) * 2017-03-24 2019-12-17 Red Hat, Inc. Kernel same-page merging for encrypted memory

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102546161A (zh) * 2010-12-08 2012-07-04 索尼公司 可撤销的基于密文政策的属性基密码方法、设备和***
CN102938767A (zh) * 2012-11-13 2013-02-20 西安电子科技大学 基于云数据外包***的高效可验证的模糊关键词搜索方法
CN104113408A (zh) * 2014-07-11 2014-10-22 西安电子科技大学 一种实现及时用户属性撤销的基于密文策略属性加密方法
CN105049430A (zh) * 2015-06-30 2015-11-11 河海大学 一种具有高效用户撤销的密文策略属性基加密方法
CN106330865A (zh) * 2016-08-12 2017-01-11 安徽大学 云环境下支持高效撤销的属性基关键字搜索方法
CN108200172A (zh) * 2018-01-03 2018-06-22 西安电子科技大学 一种支持安全数据去重与删除的云存储***及方法
CN109379182A (zh) * 2018-09-04 2019-02-22 西安电子科技大学 支持数据去重的高效数据重加密方法及***、云存储***

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Scalable and reliable key management for secure deduplication in cloud storage;Kwon, H.;《2017 IEEE 10th international conference on cloud computing (CLOUD)》;20170630;第391-398页 *
云环境下外包数据的高效检索及安全审计技术研究;王剑锋;《中国博士学位论文全文数据库信息科技辑(月刊 )》;20170215;第I138-20页 *
基于属性加密的高效密文去重和审计方案;马华 等;《电子与信息学报》;20190228;第355-361页 *

Also Published As

Publication number Publication date
CN110035067A (zh) 2019-07-19

Similar Documents

Publication Publication Date Title
CN112019591B (zh) 一种基于区块链的云数据共享方法
CN110035067B (zh) 云存储中支持高效数据去重和属性撤销的属性加密方法
Xu et al. Secure fine-grained access control and data sharing for dynamic groups in the cloud
CN108833393B (zh) 一种基于雾计算的可撤销数据共享方法
CN114065265B (zh) 基于区块链技术的细粒度云存储访问控制方法、***及设备
CN111130757A (zh) 一种基于区块链的多云cp-abe访问控制方法
CN106487506B (zh) 一种支持预加密和外包解密的多机构kp-abe方法
US20060050870A1 (en) Information-centric security
CN109361644B (zh) 一种支持快速搜索和解密的模糊属性基加密方法
Xu et al. Fine-grained and heterogeneous proxy re-encryption for secure cloud storage
CN110933033A (zh) 智慧城市环境下多物联网域的跨域访问控制方法
Fan et al. Privacy protection based access control scheme in cloud-based services
Ming et al. Efficient revocable multi-authority attribute-based encryption for cloud storage
Sumathi et al. A group-key-based sensitive attribute protection in cloud storage using modified random Fibonacci cryptography
CN111556048B (zh) 一种支持密文模式匹配的属性基安全通信方法及***
WO2022025822A1 (en) Cloud data sharing systems and methods for sharing data using the systems
CN109783456B (zh) 去重结构搭建方法、去重方法、文件取回方法、去重***
CN114640458A (zh) 云边协同环境下细粒度的多用户安全可搜索加密方法
Sandhia et al. Secure sharing of data in cloud using MA-CPABE with elliptic curve cryptography
CN113078992B (zh) 一种基于完全同态加密的高性能数据多级加解密方法和***
Park et al. PKIS: practical keyword index search on cloud datacenter
Salman et al. A homomorphic cloud framework for big data analytics based on elliptic curve cryptography
CN116318784B (zh) 身份认证方法、装置、计算机设备和存储介质
Yan et al. Secure and efficient big data deduplication in fog computing
CN109359475B (zh) 一种支持多值属性的密文策略属性基加密方法

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