CN113194089B - 一种支持属性撤销的密文策略基于属性加密方法 - Google Patents

一种支持属性撤销的密文策略基于属性加密方法 Download PDF

Info

Publication number
CN113194089B
CN113194089B CN202110467954.3A CN202110467954A CN113194089B CN 113194089 B CN113194089 B CN 113194089B CN 202110467954 A CN202110467954 A CN 202110467954A CN 113194089 B CN113194089 B CN 113194089B
Authority
CN
China
Prior art keywords
attribute
ciphertext
key
user
time sequence
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
CN202110467954.3A
Other languages
English (en)
Other versions
CN113194089A (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.)
Sichuan Normal University
Original Assignee
Sichuan Normal 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 Sichuan Normal University filed Critical Sichuan Normal University
Priority to CN202110467954.3A priority Critical patent/CN113194089B/zh
Publication of CN113194089A publication Critical patent/CN113194089A/zh
Application granted granted Critical
Publication of CN113194089B publication Critical patent/CN113194089B/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • 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
    • 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
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • H04L9/0836Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • H04L9/3073Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

本发明公开了一种支持属性撤销的密文策略基于属性加密方法,涉及加密技术领域,其技术方案要点是:授权机构对输入的安全参数和属性空间描述处理后,输出公钥和主密钥;对输入的公钥、主密钥、属性标识、用户标识、二叉树、属性集、撤销列表和版本信息处理后,输出用户私钥;对输入的公钥、明文和访问策略进行属性加密、时序加密处理后,输出密文;对输入的公钥、用户私钥、密文和版本信息解密处理后,输出明文;对输入的版本信息、用户标识和属性标识撤销处理后,输出撤销列表。本方案实现了细粒度的访问控制和密文前向、后向保密,即只有正确的时间版本下的正确用户所拥有的正确属性才可完成相应秘密数解密,保证了加密方案的安全性。

Description

一种支持属性撤销的密文策略基于属性加密方法
技术领域
本发明涉及加密技术领域,更具体地说,它涉及一种支持属性撤销的密文策略基于属性加密方法。
背景技术
无限的云存储服务为数据所有者和企业提供了存储大量数据的能力,为了保护数据机密性的同时执行基于属性的访问控制,基于属性的加密(ABE)被提出,该机制允许使用访问策略以及私钥和密文之间的归属属性对加密数据进行访问控制。
目前,针对密文共享和信息发布,已讨论出了ABE的两种变体,密文策略基于属性加密(KP-ABE),将访问策略与秘密密钥关联,而一组属性与通过密钥加密的数据关联;密文策略基于属性加密(CP-ABE),每个加密的数据项都分配有特定的访问策略,而用于数据解密的用户秘密密钥则分配有一组属性。CP-ABE提供了一种可扩展的加密数据方式,以便加密器定义解密器解密密文所需的属性集。因此,允许每个用户根据安全策略解密不同的数据,这有效的消除了依赖存储服务器来防止未经授权的数据访问的需求,使数据所有者可以选择属性上的访问结构,并通过使用相应的公共属性进行加密来对要在访问结构下外包的数据进行加密。
然而实际应用中,系统具有变化性,具有撤销机制的CP-ABE被提出用以实现访问策略更新,但现有的此类方案普遍存在撤销粒度粗、安全性不够和密钥更新效率低等问题。因此,亟需一种安全有效的支持属性撤销的密文策略基于属性加密方法解决上述问题。
发明内容
为解决现有技术中的不足,本发明的目的是提供一种支持属性撤销的密文策略基于属性加密方法。
本发明的上述技术目的是通过以下技术方案得以实现的:一种支持属性撤销的密文策略基于属性加密方法,包括以下步骤:
授权机构通过初始化函数对输入的安全参数和属性空间描述处理后,输出公钥和主密钥;以及,通过用户密钥生成函数对输入的公钥、主密钥、属性标识、用户标识、二叉树、属性集、撤销列表和版本信息处理后,输出由属性密钥和时序密钥组成的用户私钥;
数据所有者通过加密函数对输入的公钥、明文和访问策略进行属性加密、时序加密处理后,输出密文;
云服务提供商响应数据所有者的存储请求后对密文进行存储,以及响应数据使用者的下载请求后将密文传输至数据使用者;
数据使用者通过解密函数对输入的公钥、用户私钥、密文和版本信息解密处理后,输出明文;
授权机构通过撤销函数对输入的版本信息、用户标识和属性标识撤销处理后,输出撤销列表。
进一步的,所述公钥和主密钥的生成过程具体为:
将安全参数λ和属性空间描述U输入初始化函数;
选择生成元为g阶、素数为p的双线性群G0,定义双线性映射:e:G0×G0→GT和哈希函数H:{0,1}*→G0,随机选择α,β∈Zp,输出系统公钥和被授权机构秘密保存的系统主密钥。
进一步的,所述加密函数包括属性加密算法和时序加密算法;
数据所有者通过定义访问树结构并运行属性加密算法完成明文的属性密文加密工作;
根据属性标识和版本信息运行时序加密算法完成时序密文加密工作。
进一步的,所述属性密文生成的具体过程为:
以公钥PK、明文m和访问树结构T作为输入,随机选择s∈Zp *,从访问树结构根节点R开始,自顶向下开始分发s,分发方法为:为访问树结构T中每个节点x定义多项式qx,其中多项式的阶dx=kx-1,kx表示门限值;令qR(0)=s,随机选择dR个点完整定义qR;对于除根节点以外的其余节点x,令qx(0)=qparent(x)(index(x)),并随机选择dx个点完整定义qx
令Y为访问树结构T的叶子节点集合,
Figure BDA0003044835760000021
计算
Figure BDA0003044835760000022
得到属性密文;
所述时序密文生成的具体过程为:
以公钥PK、属性标识attrID和版本信息t作为输入,随机选择kattrID,t∈Zp *,s′∈Zp *区别于属性加密的秘密值s,对秘密数kattrID,t进行保护,得到时序密文;
利用秘密数kattrID,t对所述属性密文中Cy子项进行指数运算,生成最终密文CTm
进一步的,所述用户密钥生成函数包括属性密钥生成算法和时序密钥生成算法,时序密钥生成算法包括属性路径密钥生成算法和属性覆盖密钥生成算法;
属性密钥生成算法:以公钥PK、主密钥MSK和用户属性集合S作为属性密钥生成算法的输入,随机选择r∈Zp,计算
Figure BDA0003044835760000023
为用户属性集合S中的每个属性x随机选择rx∈Zp,计算属性子项
Figure BDA0003044835760000024
得到用户的属性密钥SKuserID,S
属性路径密钥生成算法:根据MT二叉树定义,PATH(ui)表示用户ui对应的叶子节点到根节点的节点集合,对于任何的x∈PATH(ui),若未定义ax1和ax2,则随机选择
Figure BDA0003044835760000025
并存储于节点x中作为密钥子项的多项式指数的系数,利用属性标识attrID和用户标识userID生成多项式指数,再随机选择
Figure BDA0003044835760000031
计算:
Figure BDA0003044835760000032
Figure BDA0003044835760000033
Figure BDA0003044835760000034
得到用户路径覆盖集密钥APKuserID,attrID
属性覆盖密钥生成算法:根据MT二叉树定义,KUNodes(Gi)表示属性组Gi对应的最小覆盖集,根据撤销列表RL的变化实时更新,查询撤销列表RL中和属性标识为attrID相关的用户撤销信息,重新生成属性组Gi的最小覆盖集;定义CSattrID,t表示KUNodes(Gi)的节点集合,针对每个节点x,若未定义ax1和ax2,则随机选择
Figure BDA0003044835760000035
并存储于节点x中作为密钥子项的多项式指数的系数,利用版本信息t生成多项式指数,再随机选择
Figure BDA0003044835760000036
计算:
Figure BDA0003044835760000037
Figure BDA0003044835760000038
得到最小覆盖集密钥ACKattrID,t
根据用户路径覆盖集密钥APKuserID,attrID和最小覆盖集密钥ACKattrID,t计算用户路径节点集和最小覆盖节点集的交点,得到时序密钥SKuserID,t,并结合属性密钥SKuserID,S得到最终的用户密钥SKuserID
进一步的,所述解密函数包括属性解密算法和时序解密算法;
通过时序解密算法调用时序密钥对时序密文解密计算密文的秘密数,通过指数计算还原属性密文子项内容;
通过属性解密算法调取属性密钥对属性密文解密计算,得到解密后的明文。
进一步的,所述时序密文的解密过程具体为:
验证时序密钥和时序密文的版本信息t的一致性,若不一致,则向授权机构申请与时序密文版本匹配的用户时序密钥,否则将解密失败;
根据属性标识attrID在时序密文中查询相应的密文CTattrID,t,并利用时序密钥进行解密。
进一步的,所述属性密文的解密过程具体为:
对于任意y∈YT,,运行时序解密算法求解得到秘密数kattr(y),t,通过指数计算还原属性密文子项内容;
以属性密文CTm,T以及与用户属性集合S相关联的密钥SKuserID,S和节点y作为递归函数的输入,输出GT上的一个群元素或⊥;
将节点y与用户属性集合S对比分析后,依据对比分析结果进行属性密文解密。
进一步的,所述撤销函数包括密钥更新函数和密文更新函数,撤销过程具体为:
当在时间t*撤销用户标识userID*的属性标识attrID*时,撤销列表RL添加三元组(userID*,attrID*,t*);
当t*时刻撤销列表更新时,授权机构运行用户密钥生成函数中的时序密钥生成函数更新此时撤销的所有属性对应的用户时序密钥;同时撤销与三元组(userID*,attrID*,t*)中属性标识attrID*相关的密文,授权机构选择新的秘密数s*∈Zp *、s′*∈Zp *
Figure BDA0003044835760000042
Figure BDA0003044835760000041
根据getID(x)≠attrID*的匹配情况,分别更新所对应的属性密文和时序密文。
进一步的,所述授权机构对所有生成的用户时序密钥按照时间顺序进行保存:
当离线用户转为在线时,则对用户分发最新的时序密钥;
当用户解密时序密文时,若时序密钥与时序密文版本信息不匹配,则对用户分发所申请的版本信息对应的时序密钥。
与现有技术相比,本发明具有以下有益效果:
1、本发明采用双重加密机制实现细粒度的访问控制和密文前向、后向保密。将用户密钥生成阶段划分为属性密钥和时序密钥两部分,分别对应解密属性密文和时序密文,其中时序密文解密是属性密文解密的前提,即时序密文的作用在于维护属性密文子项的秘密性。此外,时序部分利用多项式插值定理实现属性标识、用户标识与版本信息的结合。
2、本发明将密钥生成算法与二叉树数据结构相结合,提出一种高效灵活的密钥构造方法。撤销过程中,密钥更新阶段只需计算时序密钥部分,且由于二叉树结构的密钥分发机制,可缓解可伸缩性问题。
3、本发明在撤销阶段,可实现属性级别的用户访问控制;在密钥更新阶段,只需要完成时序密钥部分的计算;用户在线时可获取最新版本的密钥,且多版本密钥由授权中心保存避免用户大量的存储开销;在解密阶段,用户可申请与时序密文版本匹配的时序密钥,同时利用双重加密机制实现安全性;另外,用户只需保存属性密钥及相关标识,变化较大的时序密钥由授权机构实时生成并保存,在解密阶段推送给用户,避免了用户端过载。
附图说明
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。在附图中:
图1是本发明实施例中的流程图;
图2是本发明实施例中加密与解密过程的运算流程示意图;
图3是本发明实施例中MT二叉树的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
实施例:一种支持属性撤销的密文策略基于属性加密方法,如图1与图2所示,包括以下步骤:
S1:授权机构通过初始化函数对输入的安全参数和属性空间描述处理后,输出公钥和主密钥;以及,通过用户密钥生成函数对输入的公钥、主密钥、属性标识、用户标识、二叉树、属性集、撤销列表和版本信息处理后,输出由属性密钥和时序密钥组成的用户私钥;
S2:数据所有者通过加密函数对输入的公钥、明文和访问策略进行属性加密、时序加密处理后,输出密文;
S3:云服务提供商响应数据所有者的存储请求后对密文进行存储,以及响应数据使用者的下载请求后将密文传输至数据使用者;
S4:数据使用者通过解密函数对输入的公钥、用户私钥、密文和版本信息解密处理后,输出明文;
S5:授权机构通过撤销函数对输入的版本信息、用户标识和属性标识撤销处理后,输出撤销列表。
在步骤S1中,公钥和主密钥的生成过程具体为:将安全参数λ和属性空间描述U输入初始化函数;选择生成元为g阶、素数为p的双线性群G0,定义双线性映射:e:G0×G0→GT和哈希函数H:{0,1}*→G0,随机选择α,β∈Zp,输出系统公钥和被授权机构秘密保存的系统主密钥。其中,系统公钥为:PK={G0,e,g,H,h=gβ,f=g1/β,e(g,g)α};系统主密钥为:MSK={gα,β}。
双线性映射为:e:G0×G0→GT,其中G0为生成元为g的素数阶p的双线性群。对于任何i∈Zp,Zp为有限域,区间从0到p-1,集合S={S1,S2,...,Sm∈Zp},拉格朗日系数定义为:
Figure BDA0003044835760000051
哈希函数H:{0,1}*→G0
上述双线性映射e:G0×G1=GT称为非对称双线性映射,若G0=G1,即映射为e:G0×G0=GT,称为对称双线性映射。
在步骤S2中,加密函数包括属性加密算法和时序加密算法;数据所有者通过定义访问树结构并运行属性加密算法完成明文的属性密文加密工作;根据属性标识和版本信息运行时序加密算法完成时序密文加密工作。在线用户可获取最新版本信息,而离线用户则获取本地保存版本信息。
S201,属性密文生成的具体过程为:
数据所有者完成属性密文生成过程,属性加密算法以公钥PK、明文m和访问树结构T作为输入,随机选择s∈Zp *,从访问树结构根节点R开始,自顶向下开始分发s,分发方法为:为访问树结构T中每个节点x定义多项式qx,其中多项式的阶dx=kx-1,kx表示门限值;令qR(0)=s,随机选择dR个点完整定义qR;对于除根节点以外的其余节点x,令qx(0)=qparent(x)(index(x)),并随机选择dx个点完整定义qx
令Y为访问树结构T的叶子节点集合,
Figure BDA0003044835760000061
计算
Figure BDA0003044835760000062
得到属性密文,属性密文为:
Figure BDA0003044835760000063
S202,时序密文生成的具体过程为:
数据所有者完成时序密文生成过程,时序加密算法以公钥PK、属性标识attrID和版本信息t作为输入,随机选择kattrID,t∈Zp *,s′∈Zp *区别于属性加密的秘密值s,对秘密数kattrID,t进行保护,得到时序密文;时序密文如下:
Figure BDA0003044835760000064
利用秘密数kattrID,t对所述属性密文中Cy子项进行指数运算,生成最终密文CTm,最终密文CTm如下:
Figure BDA0003044835760000065
在步骤S1中,所述用户密钥生成函数包括属性密钥生成算法和时序密钥生成算法,时序密钥生成算法包括属性路径密钥生成算法和属性覆盖密钥生成算法。
属性密钥生成算法:以公钥PK、主密钥MSK和用户属性集合S作为属性密钥生成算法的输入,随机选择r∈Zp,计算
Figure BDA0003044835760000066
为用户属性集合S中的每个属性x随机选择rx∈Zp,计算属性子项
Figure BDA0003044835760000067
得到用户的属性密钥SKuserID,S;用户属性密钥为:
Figure BDA0003044835760000068
属性路径密钥生成算法:根据MT二叉树定义,PATH(ui)表示用户ui对应的叶子节点到根节点的节点集合,对于任何的x∈PATH(ui),若未定义ax1和ax2,则随机选择
Figure BDA0003044835760000069
并存储于节点x中作为密钥子项的多项式指数的系数,利用属性标识attrID和用户标识userID生成多项式指数,再随机选择
Figure BDA0003044835760000071
计算:
Figure BDA0003044835760000072
Figure BDA0003044835760000073
Figure BDA0003044835760000074
得到用户路径覆盖集密钥APKuserID,attrID;用户路径覆盖集密钥为:
Figure BDA0003044835760000075
属性覆盖密钥生成算法:根据MT二叉树定义,KUNodes(Gi)表示属性组Gi对应的最小覆盖集,根据撤销列表RL的变化实时更新,查询撤销列表RL中和属性标识为attrID相关的用户撤销信息,重新生成属性组Gi的最小覆盖集。
如图2所示,例如,设属性组G1表示具有属性Attr1的用户集合为{u1,u2,u3,u4,u7,u8},此时KUNodes(G1)表示属性Attr1的最小覆盖集为{v2,v7},即图中红色节点。用户u3对应MT二叉树的叶子节点v10,PATH(u3)表示用户u3的路径集为{v1,v2,v5,v10},即图中蓝色节点。注意节点v2为公共节点,用紫色表示。如MT二叉树示意图所示。当发生属性撤销时,例如用户u1已撤销Attr1属性时,此时属性组G1更新为{u2,u3,u4,u7,u8},KUNodes(G1)则更新为{v9,v5,v7},注意PATH(u3)仍保持不变,可得到公共节点v5。用户撤销等价于撤销该用户的所有属性,即重复属性撤销操作。此时所有包含被撤销用户的属性组的最小覆盖集都会更新。
定义CSattrID,t表示KUNodes(Gi)的节点集合,针对每个节点x,若未定义ax1和ax2,则随机选择
Figure BDA0003044835760000076
并存储于节点x中作为密钥子项的多项式指数的系数,利用版本信息t生成多项式指数,再随机选择
Figure BDA0003044835760000077
计算:
Figure BDA0003044835760000078
Figure BDA0003044835760000079
得到最小覆盖集密钥ACKattrID,t。最小覆盖集密钥如下:
CSattrID,t=KUNodes(Gi);
Figure BDA00030448357600000710
根据用户路径覆盖集密钥APKuserID,attrID和最小覆盖集密钥ACKattrID,t计算用户路径节点集和最小覆盖节点集的交点,即设PATHuserID,attrID∩CSattrID,t={x}。针对交点定义AGKuserID,attrID,t如下:
AGKuserID,attrID,t=(Dx,attrID,Dx,userID,Dx,t,dx1,attrID,dx2,attrID,dx,t);
得到时序密钥SKuserID,t后结合属性密钥SKuserID,S得到最终的用户密钥SKuserID。最终用户密钥SKuserID为:
Figure BDA0003044835760000081
在步骤S4中,解密函数包括属性解密算法和时序解密算法;通过时序解密算法调用时序密钥对时序密文解密计算密文的秘密数,通过指数计算还原属性密文子项内容;通过属性解密算法调取属性密钥对属性密文解密计算,得到解密后的明文。
S401,时序密文的解密过程具体为:验证时序密钥和时序密文的版本信息t的一致性,若不一致,则向授权机构申请与时序密文版本相匹配的用户时序密钥,否则将解密失败;根据属性标识attrID在时序密文中查询相应的密文CTattrID,t,并利用时序密钥进行解密,解密过程如下:
Figure BDA0003044835760000082
S402,属性密文的解密过程具体为:
对于任意y∈YT,,运行时序解密算法求解得到秘密数kattr(y),t,通过指数计算还原属性密文子项内容;对属性子项进行指数计算如下:
Figure BDA0003044835760000083
定义递归函数DecryptNode(CTm,T,SKuserID,S,y),函数以属性密文CTm,T以及与用户属性集合S相关联的密钥SKuserID,S和节点y作为递归函数的输入,输出GT上的一个群元素或⊥。
具体解密过程如下。
(1)如果y是叶子节点,当x∈S时:
Figure BDA0003044835760000084
Figure BDA0003044835760000091
Figure BDA0003044835760000092
则定义DecryptNode(CTm,T,SKuserID,S,y)=⊥。
(2)如果y是非叶子节点:对于y的所有孩子节点z,都调用函数DecryptNode(CTm,T,SKuserID,S,z),并将其输出记为Fz。令Sy为任意ky大小的孩子节点z的集合,且Fz≠⊥。如果当节点不满足访问结构导致这种集合不存在,则函数返回⊥。
否则,计算(其中Sy′={index(z):z∈Sy},i=index(z))
Figure BDA0003044835760000093
在利用上述算法进行递归拉格朗日插值的同时,保存所有中间节点的Fy值。满足访问策略时:
Figure BDA0003044835760000094
最终解密过程为:
Figure BDA0003044835760000095
在步骤S5中,撤销函数包括密钥更新函数和密文更新函数,撤销过程具体过程如下。
S501,当在时间t*撤销用户标识userID*的属性标识attrID*时,撤销列表RL添加三元组(userID*,attrID*,t*);当t*时刻撤销列表更新时,授权机构运行用户密钥生成函数中的时序密钥生成函数更新此时撤销的所有属性对应的用户时序密钥,由于时序密钥采用二叉树数据结构生成,其具有灵活性和高效性,本发明在密钥更新阶段具有一定优势。
S502,同时撤销与三元组(userID*,attrID*,t*)中属性标识attrID*相关的密文,授权机构选择新的秘密数s*∈Zp *、s′*∈Zp *
Figure BDA0003044835760000097
Figure BDA0003044835760000096
当getID(x)≠attrID*时,更新所对应的属性密文和时序密文,更新结果为:
Figure BDA0003044835760000101
Figure BDA0003044835760000102
当getID(x)=attrID*时,属性密文更新如上,时序密文更新为:
Figure BDA0003044835760000103
此时时序密文中所包含的版本信息都应更新为t*。对属性密文中Cy子项进行指数运算,生成最终密文CTm *
授权机构对所有生成的用户时序密钥按照时间顺序进行保存:当离线用户转为在线时,则对用户分发最新的时序密钥;当用户解密时序密文时,若时序密钥与时序密文版本信息不匹配,则对用户分发所申请的版本信息对应的时序密钥。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种支持属性撤销的密文策略基于属性加密方法,其特征是,包括以下步骤:
授权机构通过初始化函数对输入的安全参数和属性空间描述处理后,输出公钥和主密钥;以及,通过用户密钥生成函数对输入的公钥、主密钥、属性标识、用户标识、二叉树、属性集、撤销列表和版本信息处理后,输出由属性密钥和时序密钥组成的用户私钥;
数据所有者通过加密函数对输入的公钥、明文和访问策略进行属性加密、时序加密处理后,输出密文;
云服务提供商响应数据所有者的存储请求后对密文进行存储,以及响应数据使用者的下载请求后将密文传输至数据使用者;
数据使用者通过解密函数对输入的公钥、用户私钥、密文和版本信息解密处理后,输出明文;
授权机构通过撤销函数对输入的版本信息、用户标识和属性标识撤销处理后,输出撤销列表;
所述用户密钥生成函数包括属性密钥生成算法和时序密钥生成算法,时序密钥生成算法包括属性路径密钥生成算法和属性覆盖密钥生成算法;
属性密钥生成算法:以公钥PK、主密钥MSK和用户属性集合S作为属性密钥生成算法的输入,随机选择r∈Zp,计算
Figure FDA0003475031240000011
为用户属性集合S中的每个属性x随机选择rx∈Zp,计算属性子项
Figure FDA0003475031240000012
得到用户的属性密钥SKuserID,S
属性路径密钥生成算法:根据MT二叉树定义,PATH(ui)表示用户ui对应的叶子节点到根节点的节点集合,对于任何的x∈PATH(ui),若未定义ax1和ax2,则随机选择
Figure FDA0003475031240000013
并存储于节点x中作为密钥子项的多项式指数的系数,利用属性标识attrID和用户标识userID生成多项式指数,再随机选择
Figure FDA0003475031240000014
计算:
Figure FDA0003475031240000015
Figure FDA0003475031240000016
Figure FDA0003475031240000017
得到用户路径覆盖集密钥APKuserID,attrID
属性覆盖密钥生成算法:根据MT二叉树定义,KUNodes(Gi)表示属性组Gi对应的最小覆盖集,根据撤销列表RL的变化实时更新,查询撤销列表RL中和属性标识为attrID相关的用户撤销信息,重新生成属性组Gi的最小覆盖集;定义CSattrID,t表示KUNodes(Gi)的节点集合,针对每个节点x,若未定义ax1和ax2,则随机选择
Figure FDA0003475031240000018
并存储于节点x中作为密钥子项的多项式指数的系数,利用版本信息t生成多项式指数,再随机选择
Figure FDA0003475031240000019
计算:
Figure FDA0003475031240000021
Figure FDA0003475031240000022
得到最小覆盖集密钥ACKattrID,t
根据用户路径覆盖集密钥APKuserID,attrID和最小覆盖集密钥ACKattrID,t计算用户路径节点集和最小覆盖节点集的交点,得到时序密钥SKuserID,t,并结合属性密钥SKuserID,S得到最终的用户密钥SKuserID
2.根据权利要求1所述的一种支持属性撤销的密文策略基于属性加密方法,其特征是,所述公钥和主密钥的生成过程具体为:
将安全参数λ和属性空间描述U输入初始化函数;
选择生成元为g阶、素数为p的双线性群G0,定义双线性映射:e:G0×G0→GT和哈希函数H:{0,1}*→G0,随机选择α,β∈Zp,输出系统公钥和被授权机构秘密保存的系统主密钥。
3.根据权利要求1所述的一种支持属性撤销的密文策略基于属性加密方法,其特征是,所述加密函数包括属性加密算法和时序加密算法;
数据所有者通过定义访问树结构并运行属性加密算法完成明文的属性密文加密工作;
根据属性标识和版本信息运行时序加密算法完成时序密文加密工作。
4.根据权利要求3所述的一种支持属性撤销的密文策略基于属性加密方法,其特征是,所述属性密文生成的具体过程为:
以公钥PK、明文m和访问树结构T作为输入,随机选择s∈Zp *,从访问树结构根节点R开始,自顶向下开始分发s,分发方法为:为访问树结构T中每个节点x定义多项式qx,其中多项式的阶dx=kx-1,kx表示门限值;令qR(0)=s,随机选择dR个点完整定义qR;对于除根节点以外的其余节点x,令qx(0)=qparent(x)(index(x)),并随机选择dx个点完整定义qx
令Y为访问树结构T的叶子节点集合,
Figure FDA0003475031240000023
计算
Figure FDA0003475031240000024
得到属性密文;
所述时序密文生成的具体过程为:
以公钥PK、属性标识attrID和版本信息t作为输入,随机选择kattrID,t∈Zp *,s′∈Zp *区别于属性加密的秘密值s,对秘密数kattrID,t进行保护,得到时序密文;
利用秘密数kattrID,t对所述属性密文中Cy子项进行指数运算,生成最终密文CTm
5.根据权利要求1-4任意一项所述的一种支持属性撤销的密文策略基于属性加密方法,其特征是,所述解密函数包括属性解密算法和时序解密算法;
通过时序解密算法调用时序密钥对时序密文解密计算密文的秘密数,通过指数计算还原属性密文子项内容;
通过属性解密算法调取属性密钥对属性密文解密计算,得到解密后的明文。
6.根据权利要求5所述的一种支持属性撤销的密文策略基于属性加密方法,其特征是,所述时序密文的解密过程具体为:
验证时序密钥和时序密文的版本信息t的一致性,若不一致,则向授权机构申请与时序密文版本匹配的用户时序密钥,否则将解密失败;
根据属性标识attrID在时序密文中查询相应的密文CTattrID,t,并利用时序密钥进行解密。
7.根据权利要求5所述的一种支持属性撤销的密文策略基于属性加密方法,其特征是,所述属性密文的解密过程具体为:
对于任意y∈YT,,运行时序解密算法求解得到秘密数kattr(y),t,通过指数计算还原属性密文子项内容;
以属性密文CTm,T以及与用户属性集合S相关联的密钥SKuserID,S和节点y作为递归函数的输入,输出GT上的一个群元素或⊥;
将节点y与用户属性集合S对比分析后,依据对比分析结果进行属性密文解密。
8.根据权利要求1-4任意一项所述的一种支持属性撤销的密文策略基于属性加密方法,其特征是,所述撤销函数包括密钥更新函数和密文更新函数,撤销过程具体为:
当在时间t*撤销用户标识userID*的属性标识attrID*时,撤销列表RL添加三元组(userID*,attrID*,t*);
当t*时刻撤销列表更新时,授权机构运行用户密钥生成函数中的时序密钥生成函数更新此时撤销的所有属性对应的用户时序密钥;同时撤销与三元组(userID*,attrID*,t*)中属性标识attrID*相关的密文,授权机构选择新的秘密数s*∈Zp *、s′*∈Zp *
Figure FDA0003475031240000032
Figure FDA0003475031240000031
根据getID(x)≠attrID*的匹配情况,分别更新所对应的属性密文和时序密文。
9.根据权利要求8所述的一种支持属性撤销的密文策略基于属性加密方法,其特征是,所述授权机构对所有生成的用户时序密钥按照时间顺序进行保存:
当离线用户转为在线时,则对用户分发最新的时序密钥;
当用户解密时序密文时,若时序密钥与时序密文版本信息不匹配,则对用户分发所申请的版本信息对应的时序密钥。
CN202110467954.3A 2021-04-28 2021-04-28 一种支持属性撤销的密文策略基于属性加密方法 Active CN113194089B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110467954.3A CN113194089B (zh) 2021-04-28 2021-04-28 一种支持属性撤销的密文策略基于属性加密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110467954.3A CN113194089B (zh) 2021-04-28 2021-04-28 一种支持属性撤销的密文策略基于属性加密方法

Publications (2)

Publication Number Publication Date
CN113194089A CN113194089A (zh) 2021-07-30
CN113194089B true CN113194089B (zh) 2022-03-11

Family

ID=76979963

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110467954.3A Active CN113194089B (zh) 2021-04-28 2021-04-28 一种支持属性撤销的密文策略基于属性加密方法

Country Status (1)

Country Link
CN (1) CN113194089B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113794556B (zh) * 2021-09-10 2023-05-23 福建师范大学 面向可编校区块链协议的pch可撤销方法及系统
CN114785622B (zh) * 2022-06-21 2022-09-30 深圳赛思鹏科技发展有限公司 多标识网络的访问控制方法、装置及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013027206A1 (en) * 2011-08-24 2013-02-28 Ben-Gurion University Of The Negev Research & Development Authority A method for attribute based broadcast encryption with permanent revocation
CN104113408A (zh) * 2014-07-11 2014-10-22 西安电子科技大学 一种实现及时用户属性撤销的基于密文策略属性加密方法
CN105071937A (zh) * 2015-07-14 2015-11-18 河海大学 具有高效属性撤销的密文策略属性基加密方法
CN107294718A (zh) * 2017-08-09 2017-10-24 长安大学 一种标准模型中可撤销的密钥策略基于属性加密方法
CN109286491A (zh) * 2018-10-18 2019-01-29 上海海事大学 一种基于代理撤销的密钥策略属性基加密方法
CN112671535A (zh) * 2020-12-28 2021-04-16 华南农业大学 多中心可撤销密钥策略属性基加密方法、装置及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013027206A1 (en) * 2011-08-24 2013-02-28 Ben-Gurion University Of The Negev Research & Development Authority A method for attribute based broadcast encryption with permanent revocation
CN104113408A (zh) * 2014-07-11 2014-10-22 西安电子科技大学 一种实现及时用户属性撤销的基于密文策略属性加密方法
CN105071937A (zh) * 2015-07-14 2015-11-18 河海大学 具有高效属性撤销的密文策略属性基加密方法
CN107294718A (zh) * 2017-08-09 2017-10-24 长安大学 一种标准模型中可撤销的密钥策略基于属性加密方法
CN109286491A (zh) * 2018-10-18 2019-01-29 上海海事大学 一种基于代理撤销的密钥策略属性基加密方法
CN112671535A (zh) * 2020-12-28 2021-04-16 华南农业大学 多中心可撤销密钥策略属性基加密方法、装置及存储介质

Non-Patent Citations (12)

* Cited by examiner, † Cited by third party
Title
An Efficient ABE Scheme With Verifiable Outsourced Encryption and Decryption;Z. Guo, B. Liu, K. Zhao and C. Feng;《IEEE Access》;20201105;第8卷;全文 *
Attribute Based Encryption for Secure Access to Cloud Based EHR Systems;M. Joshi, K. Joshi and T. Finin;《2018 IEEE 11th International Conference on Cloud Computing (CLOUD)》;20180910;全文 *
Attribute-Based Encryption With Parallel Outsourced Decryption for Edge Intelligent IoV;C. Feng, K. Yu, M. Aloqaily, M. Alazab, Z. Lv and S. Mumtaz;《IEEE Transactions on Vehicular Technology》;20201105;第8卷;全文 *
一种支持快速加密的基于属性加密方案;罗王平,冯朝胜等;《软件学报》;20201231;第31卷(第12期);全文 *
云数据安全存储技术;冯朝胜,秦志光,袁丁;《计算机学报》;20151231;第38卷(第01期);全文 *
可撤销存储的基于属性的加密方案研究;蒋松泉;《中国优秀硕士论文全文数据库(电子期刊)信息科技辑》;20200115;全文 *
可验证外包属性加密方案研究;李宇涵;《中国优秀硕士论文全文数据库(电子期刊)信息科技辑》;20200115;全文 *
基于CP-ABE的数字图书馆云存储访问控制模型研究;高媛等;《中国管理信息化》;20161215(第24期);全文 *
基于秘密共享技术的私有云存储方案;李梦园等;《北京电子科技学院学报》;20181215(第04期);全文 *
支持用户权限动态变更的可更新属性加密方案;严新成等;《计算机研究与发展》;20200515(第05期);全文 *
支持直接撤销的密文策略属性基加密方案;闫玺玺等;《通信学报》;20160525(第05期);全文 *
高效撤销成员的密文策略属性基加密方案;袁钰等;《电脑知识与技术》;20200715(第20期);全文 *

Also Published As

Publication number Publication date
CN113194089A (zh) 2021-07-30

Similar Documents

Publication Publication Date Title
CN108390876B (zh) 支持撤销外包可验证多授权中心访问控制方法、云服务器
CN110099043B (zh) 支持策略隐藏的多授权中心访问控制方法、云存储系统
CN108810004B (zh) 基于代理的可撤销多授权中心访问控制方法、云存储系统
CN112019591B (zh) 一种基于区块链的云数据共享方法
CN114065265B (zh) 基于区块链技术的细粒度云存储访问控制方法、系统及设备
Li et al. TMACS: A robust and verifiable threshold multi-authority access control system in public cloud storage
Xu et al. Dynamic user revocation and key refreshing for attribute-based encryption in cloud storage
US8000472B2 (en) Information encryption apparatus and controlling method of the same, computer program and computer readable storage medium
CN111130757A (zh) 一种基于区块链的多云cp-abe访问控制方法
CN108200181B (zh) 一种面向云存储的可撤销属性基加密系统及方法
EP3651405B1 (en) Cryptographic datashare control for blockchain
CN114039790B (zh) 一种基于区块链的细粒度云存储安全访问控制方法
CN110602063A (zh) 一种多授权中心访问控制方法、系统及云存储系统
CN112671535B (zh) 多中心可撤销密钥策略属性基加密方法、装置及存储介质
CN113194089B (zh) 一种支持属性撤销的密文策略基于属性加密方法
CN111740988B (zh) 云存储数据加密方法、系统和存储介质
CN108111540A (zh) 一种云存储中支持数据共享的分层访问控制系统及方法
CN110610102B (zh) 一种数据访问方法、装置及系统
CN110035067B (zh) 云存储中支持高效数据去重和属性撤销的属性加密方法
Ming et al. Efficient revocable multi-authority attribute-based encryption for cloud storage
CN115296817A (zh) 基于区块链技术和属性加密的数据访问控制方法
Guo et al. Revocable blockchain-aided attribute-based encryption with escrow-free in cloud storage
Sumathi et al. A group-key-based sensitive attribute protection in cloud storage using modified random Fibonacci cryptography
Sandhia et al. Secure sharing of data in cloud using MA-CPABE with elliptic curve cryptography
Lv et al. A secure and efficient revocation scheme for fine-grained access control in cloud storage

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