CN113194089A - 一种支持属性撤销的密文策略基于属性加密方法 - Google Patents
一种支持属性撤销的密文策略基于属性加密方法 Download PDFInfo
- Publication number
- CN113194089A CN113194089A CN202110467954.3A CN202110467954A CN113194089A CN 113194089 A CN113194089 A CN 113194089A CN 202110467954 A CN202110467954 A CN 202110467954A CN 113194089 A CN113194089 A CN 113194089A
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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/0478—Network 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols 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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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/083—Key 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/0833—Key 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/0836—Key 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public 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/3073—Public 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Algebra (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Storage Device Security (AREA)
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;
所述时序密文生成的具体过程为:
以公钥PK、属性标识attrID和版本信息t作为输入,随机选择kattrID,t∈Zp *,s′∈Zp *区别于属性加密的秘密值s,对秘密数kattrID,t进行保护,得到时序密文;
利用秘密数kattrID,t对所述属性密文中Cy子项进行指数运算,生成最终密文CTm。
进一步的,所述用户密钥生成函数包括属性密钥生成算法和时序密钥生成算法,时序密钥生成算法包括属性路径密钥生成算法和属性覆盖密钥生成算法;
属性密钥生成算法:以公钥PK、主密钥MSK和用户属性集合S作为属性密钥生成算法的输入,随机选择r∈Zp,计算为用户属性集合S中的每个属性x随机选择rx∈Zp,计算属性子项得到用户的属性密钥SKuserID,S;
属性路径密钥生成算法:根据MT二叉树定义,PATH(ui)表示用户ui对应的叶子节点到根节点的节点集合,对于任何的x∈PATH(ui),若未定义ax1和ax2,则随机选择并存储于节点x中作为密钥子项的多项式指数的系数,利用属性标识attrID和用户标识userID生成多项式指数,再随机选择计算: 和得到用户路径覆盖集密钥APKuserID,attrID;
属性覆盖密钥生成算法:根据MT二叉树定义,KUNodes(Gi)表示属性组Gi对应的最小覆盖集,根据撤销列表RL的变化实时更新,查询撤销列表RL中和属性标识为attrID相关的用户撤销信息,重新生成属性组Gi的最小覆盖集;定义CSattrID,t表示KUNodes(Gi)的节点集合,针对每个节点x,若未定义ax1和ax2,则随机选择并存储于节点x中作为密钥子项的多项式指数的系数,利用版本信息t生成多项式指数,再随机选择计算:和得到最小覆盖集密钥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 *和对根据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},拉格朗日系数定义为:哈希函数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;
S202,时序密文生成的具体过程为:
数据所有者完成时序密文生成过程,时序加密算法以公钥PK、属性标识attrID和版本信息t作为输入,随机选择kattrID,t∈Zp *,s′∈Zp *区别于属性加密的秘密值s,对秘密数kattrID,t进行保护,得到时序密文;时序密文如下:
利用秘密数kattrID,t对所述属性密文中Cy子项进行指数运算,生成最终密文CTm,最终密文CTm如下:
在步骤S1中,所述用户密钥生成函数包括属性密钥生成算法和时序密钥生成算法,时序密钥生成算法包括属性路径密钥生成算法和属性覆盖密钥生成算法。
属性密钥生成算法:以公钥PK、主密钥MSK和用户属性集合S作为属性密钥生成算法的输入,随机选择r∈Zp,计算为用户属性集合S中的每个属性x随机选择rx∈Zp,计算属性子项得到用户的属性密钥SKuserID,S;用户属性密钥为:
属性路径密钥生成算法:根据MT二叉树定义,PATH(ui)表示用户ui对应的叶子节点到根节点的节点集合,对于任何的x∈PATH(ui),若未定义ax1和ax2,则随机选择并存储于节点x中作为密钥子项的多项式指数的系数,利用属性标识attrID和用户标识userID生成多项式指数,再随机选择计算: 和得到用户路径覆盖集密钥APKuserID,attrID;用户路径覆盖集密钥为:
属性覆盖密钥生成算法:根据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,则随机选择并存储于节点x中作为密钥子项的多项式指数的系数,利用版本信息t生成多项式指数,再随机选择计算:和得到最小覆盖集密钥ACKattrID,t。最小覆盖集密钥如下:
CSattrID,t=KUNodes(Gi);
根据用户路径覆盖集密钥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为:
在步骤S4中,解密函数包括属性解密算法和时序解密算法;通过时序解密算法调用时序密钥对时序密文解密计算密文的秘密数,通过指数计算还原属性密文子项内容;通过属性解密算法调取属性密钥对属性密文解密计算,得到解密后的明文。
S401,时序密文的解密过程具体为:验证时序密钥和时序密文的版本信息t的一致性,若不一致,则向授权机构申请与时序密文版本相匹配的用户时序密钥,否则将解密失败;根据属性标识attrID在时序密文中查询相应的密文CTattrID,t,并利用时序密钥进行解密,解密过程如下:
S402,属性密文的解密过程具体为:
对于任意y∈YT,,运行时序解密算法求解得到秘密数kattr(y),t,通过指数计算还原属性密文子项内容;对属性子项进行指数计算如下:
定义递归函数DecryptNode(CTm,T,SKuserID,S,y),函数以属性密文CTm,T以及与用户属性集合S相关联的密钥SKuserID,S和节点y作为递归函数的输入,输出GT上的一个群元素或⊥。
具体解密过程如下。
(1)如果y是叶子节点,当x∈S时:
(2)如果y是非叶子节点:对于y的所有孩子节点z,都调用函数DecryptNode(CTm,T,SKuserID,S,z),并将其输出记为Fz。令Sy为任意ky大小的孩子节点z的集合,且Fz≠⊥。如果当节点不满足访问结构导致这种集合不存在,则函数返回⊥。
否则,计算(其中Sy′={index(z):z∈Sy},i=index(z))
最终解密过程为:
在步骤S5中,撤销函数包括密钥更新函数和密文更新函数,撤销过程具体过程如下。
S501,当在时间t*撤销用户标识userID*的属性标识attrID*时,撤销列表RL添加三元组(userID*,attrID*,t*);当t*时刻撤销列表更新时,授权机构运行用户密钥生成函数中的时序密钥生成函数更新此时撤销的所有属性对应的用户时序密钥,由于时序密钥采用二叉树数据结构生成,其具有灵活性和高效性,本发明在密钥更新阶段具有一定优势。
S502,同时撤销与三元组(userID*,attrID*,t*)中属性标识attrID*相关的密文,授权机构选择新的秘密数s*∈Zp *、s′*∈Zp *和对当getID(x)≠attrID*时,更新所对应的属性密文和时序密文,更新结果为:
当getID(x)=attrID*时,属性密文更新如上,时序密文更新为:
此时时序密文中所包含的版本信息都应更新为t*。对属性密文中Cy子项进行指数运算,生成最终密文CTm *。
授权机构对所有生成的用户时序密钥按照时间顺序进行保存:当离线用户转为在线时,则对用户分发最新的时序密钥;当用户解密时序密文时,若时序密钥与时序密文版本信息不匹配,则对用户分发所申请的版本信息对应的时序密钥。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种支持属性撤销的密文策略基于属性加密方法,其特征是,包括以下步骤:
授权机构通过初始化函数对输入的安全参数和属性空间描述处理后,输出公钥和主密钥;以及,通过用户密钥生成函数对输入的公钥、主密钥、属性标识、用户标识、二叉树、属性集、撤销列表和版本信息处理后,输出由属性密钥和时序密钥组成的用户私钥;
数据所有者通过加密函数对输入的公钥、明文和访问策略进行属性加密、时序加密处理后,输出密文;
云服务提供商响应数据所有者的存储请求后对密文进行存储,以及响应数据使用者的下载请求后将密文传输至数据使用者;
数据使用者通过解密函数对输入的公钥、用户私钥、密文和版本信息解密处理后,输出明文;
授权机构通过撤销函数对输入的版本信息、用户标识和属性标识撤销处理后,输出撤销列表。
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;
所述时序密文生成的具体过程为:
以公钥PK、属性标识attrID和版本信息t作为输入,随机选择kattrID,t∈Zp *,s′∈Zp *区别于属性加密的秘密值s,对秘密数kattrID,t进行保护,得到时序密文;
利用秘密数kattrID,t对所述属性密文中Cy子项进行指数运算,生成最终密文CTm。
5.根据权利要求1-4任意一项所述的一种支持属性撤销的密文策略基于属性加密方法,其特征是,所述用户密钥生成函数包括属性密钥生成算法和时序密钥生成算法,时序密钥生成算法包括属性路径密钥生成算法和属性覆盖密钥生成算法;
属性密钥生成算法:以公钥PK、主密钥MSK和用户属性集合S作为属性密钥生成算法的输入,随机选择r∈Zp,计算为用户属性集合S中的每个属性x随机选择rx∈Zp,计算属性子项得到用户的属性密钥SKuserID,S;
属性路径密钥生成算法:根据MT二叉树定义,PATH(ui)表示用户ui对应的叶子节点到根节点的节点集合,对于任何的x∈PATH(ui),若未定义ax1和ax2,则随机选择并存储于节点x中作为密钥子项的多项式指数的系数,利用属性标识attrID和用户标识userID生成多项式指数,再随机选择计算: 和得到用户路径覆盖集密钥APKuserID,attrID;
属性覆盖密钥生成算法:根据MT二叉树定义,KUNodes(Gi)表示属性组Gi对应的最小覆盖集,根据撤销列表RL的变化实时更新,查询撤销列表RL中和属性标识为attrID相关的用户撤销信息,重新生成属性组Gi的最小覆盖集;定义CSattrID,t表示KUNodes(Gi)的节点集合,针对每个节点x,若未定义ax1和ax2,则随机选择并存储于节点x中作为密钥子项的多项式指数的系数,利用版本信息t生成多项式指数,再随机选择计算和得到最小覆盖集密钥ACKattrID,t;
根据用户路径覆盖集密钥APKuserID,attrID和最小覆盖集密钥ACKattrID,t计算用户路径节点集和最小覆盖节点集的交点,得到时序密钥SKuserID,t,并结合属性密钥SKuserID,S得到最终的用户密钥SKuserID。
6.根据权利要求1-4任意一项所述的一种支持属性撤销的密文策略基于属性加密方法,其特征是,所述解密函数包括属性解密算法和时序解密算法;
通过时序解密算法调用时序密钥对时序密文解密计算密文的秘密数,通过指数计算还原属性密文子项内容;
通过属性解密算法调取属性密钥对属性密文解密计算,得到解密后的明文。
7.根据权利要求6所述的一种支持属性撤销的密文策略基于属性加密方法,其特征是,所述时序密文的解密过程具体为:
验证时序密钥和时序密文的版本信息t的一致性,若不一致,则向授权机构申请与时序密文版本匹配的用户时序密钥,否则将解密失败;
根据属性标识attrID在时序密文中查询相应的密文CTattrID,t,并利用时序密钥进行解密。
8.根据权利要求6所述的一种支持属性撤销的密文策略基于属性加密方法,其特征是,所述属性密文的解密过程具体为:
对于任意y∈YT,,运行时序解密算法求解得到秘密数kattr(y),t,通过指数计算还原属性密文子项内容;
以属性密文CTm,T以及与用户属性集合S相关联的密钥SKuserID,S和节点y作为递归函数的输入,输出GT上的一个群元素或⊥;
将节点y与用户属性集合S对比分析后,依据对比分析结果进行属性密文解密。
9.根据权利要求1-4任意一项所述的一种支持属性撤销的密文策略基于属性加密方法,其特征是,所述撤销函数包括密钥更新函数和密文更新函数,撤销过程具体为:
当在时间t*撤销用户标识userID*的属性标识attrID*时,撤销列表RL添加三元组(userID*,attrID*,t*);
10.根据权利要求9所述的一种支持属性撤销的密文策略基于属性加密方法,其特征是,所述授权机构对所有生成的用户时序密钥按照时间顺序进行保存:
当离线用户转为在线时,则对用户分发最新的时序密钥;
当用户解密时序密文时,若时序密钥与时序密文版本信息不匹配,则对用户分发所申请的版本信息对应的时序密钥。
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 true CN113194089A (zh) | 2021-07-30 |
CN113194089B 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) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113794556A (zh) * | 2021-09-10 | 2021-12-14 | 福建师范大学 | 面向可编校区块链协议的pch可撤销方法及系统 |
CN114785622A (zh) * | 2022-06-21 | 2022-07-22 | 深圳赛思鹏科技发展有限公司 | 多标识网络的访问控制方法、装置及存储介质 |
CN116232685A (zh) * | 2023-01-06 | 2023-06-06 | 四川大学 | 一种支持细粒度属性撤销的密文策略属性加密方法 |
CN118018310A (zh) * | 2024-03-11 | 2024-05-10 | 区块链新科技(广州)有限公司 | 一种可撤销的身份基密钥加密方法、存储介质及设备 |
Citations (6)
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 | 华南农业大学 | 多中心可撤销密钥策略属性基加密方法、装置及存储介质 |
-
2021
- 2021-04-28 CN CN202110467954.3A patent/CN113194089B/zh active Active
Patent Citations (6)
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)
Title |
---|
C. FENG, K. YU, M. ALOQAILY, M. ALAZAB, Z. LV AND S. MUMTAZ: "Attribute-Based Encryption With Parallel Outsourced Decryption for Edge Intelligent IoV", 《IEEE TRANSACTIONS ON VEHICULAR TECHNOLOGY》 * |
M. JOSHI, K. JOSHI AND T. FININ: "Attribute Based Encryption for Secure Access to Cloud Based EHR Systems", 《2018 IEEE 11TH INTERNATIONAL CONFERENCE ON CLOUD COMPUTING (CLOUD)》 * |
Z. GUO, B. LIU, K. ZHAO AND C. FENG: "An Efficient ABE Scheme With Verifiable Outsourced Encryption and Decryption", 《IEEE ACCESS》 * |
严新成等: "支持用户权限动态变更的可更新属性加密方案", 《计算机研究与发展》 * |
冯朝胜,秦志光,袁丁: "云数据安全存储技术", 《计算机学报》 * |
李宇涵: "可验证外包属性加密方案研究", 《中国优秀硕士论文全文数据库(电子期刊)信息科技辑》 * |
李梦园等: "基于秘密共享技术的私有云存储方案", 《北京电子科技学院学报》 * |
罗王平,冯朝胜等: "一种支持快速加密的基于属性加密方案", 《软件学报》 * |
蒋松泉: "可撤销存储的基于属性的加密方案研究", 《中国优秀硕士论文全文数据库(电子期刊)信息科技辑》 * |
袁钰等: "高效撤销成员的密文策略属性基加密方案", 《电脑知识与技术》 * |
闫玺玺等: "支持直接撤销的密文策略属性基加密方案", 《通信学报》 * |
高媛等: "基于CP-ABE的数字图书馆云存储访问控制模型研究", 《中国管理信息化》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113794556A (zh) * | 2021-09-10 | 2021-12-14 | 福建师范大学 | 面向可编校区块链协议的pch可撤销方法及系统 |
CN113794556B (zh) * | 2021-09-10 | 2023-05-23 | 福建师范大学 | 面向可编校区块链协议的pch可撤销方法及系统 |
CN114785622A (zh) * | 2022-06-21 | 2022-07-22 | 深圳赛思鹏科技发展有限公司 | 多标识网络的访问控制方法、装置及存储介质 |
CN116232685A (zh) * | 2023-01-06 | 2023-06-06 | 四川大学 | 一种支持细粒度属性撤销的密文策略属性加密方法 |
CN116232685B (zh) * | 2023-01-06 | 2024-09-17 | 四川大学 | 一种支持细粒度属性撤销的密文策略属性加密方法 |
CN118018310A (zh) * | 2024-03-11 | 2024-05-10 | 区块链新科技(广州)有限公司 | 一种可撤销的身份基密钥加密方法、存储介质及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113194089B (zh) | 2022-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108390876B (zh) | 支持撤销外包可验证多授权中心访问控制方法、云服务器 | |
CN113194089B (zh) | 一种支持属性撤销的密文策略基于属性加密方法 | |
CN110099043B (zh) | 支持策略隐藏的多授权中心访问控制方法、云存储系统 | |
CN108810004B (zh) | 基于代理的可撤销多授权中心访问控制方法、云存储系统 | |
CN114065265B (zh) | 基于区块链技术的细粒度云存储访问控制方法、系统及设备 | |
CN112019591B (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 | |
CN114039790B (zh) | 一种基于区块链的细粒度云存储安全访问控制方法 | |
EP3651405B1 (en) | Cryptographic datashare control for blockchain | |
CN105071937B (zh) | 具有高效属性撤销的密文策略属性基加密方法 | |
CN111130757A (zh) | 一种基于区块链的多云cp-abe访问控制方法 | |
CN112671535B (zh) | 多中心可撤销密钥策略属性基加密方法、装置及存储介质 | |
CN110602063A (zh) | 一种多授权中心访问控制方法、系统及云存储系统 | |
Guo et al. | Revocable blockchain-aided attribute-based encryption with escrow-free in cloud storage | |
CN110610102B (zh) | 一种数据访问方法、装置及系统 | |
CN115296817A (zh) | 基于区块链技术和属性加密的数据访问控制方法 | |
CN111740988A (zh) | 云存储数据加密方法、系统和存储介质 | |
CN107634830B (zh) | 服务器辅助的可撤销属性基加密方法、装置及系统 | |
CN116204923A (zh) | 数据管理、数据查询方法及装置 | |
Lv et al. | A secure and efficient revocation scheme for fine-grained access control in cloud storage | |
CN115001730A (zh) | 分布式场景下基于角色属性的访问控制系统及方法 | |
CN117097469A (zh) | 一种基于属性加密的数据分层访问控制方法 | |
Chandar et al. | Hierarchical attribute based proxy re-encryption access control in cloud computing | |
CN114157424B (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 |