CN111147460A - 一种基于区块链的协同细粒度访问控制方法 - Google Patents

一种基于区块链的协同细粒度访问控制方法 Download PDF

Info

Publication number
CN111147460A
CN111147460A CN201911290921.5A CN201911290921A CN111147460A CN 111147460 A CN111147460 A CN 111147460A CN 201911290921 A CN201911290921 A CN 201911290921A CN 111147460 A CN111147460 A CN 111147460A
Authority
CN
China
Prior art keywords
user terminal
attribute
block chain
identity
resource
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
Application number
CN201911290921.5A
Other languages
English (en)
Other versions
CN111147460B (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.)
Guangzhou Dayu Chuangfu Technology Co ltd
Original Assignee
Chongqing University of Post and Telecommunications
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 Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN201911290921.5A priority Critical patent/CN111147460B/zh
Publication of CN111147460A publication Critical patent/CN111147460A/zh
Application granted granted Critical
Publication of CN111147460B publication Critical patent/CN111147460B/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/0442Network 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 asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • 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/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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
    • 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/0825Key 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) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage

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

本发明公开了一种基于区块链的协同细粒度访问控制方法,该方法利用基于区块链的身份管理技术管理系统中各实体的身份和属性证书,也即可以不依赖TP,系统中的各实体可以自组织的管理自己的身份和属性证书,提升了系统整体的安全性,另外利用零知识证明、环签名等技术,保证交易过程中不会泄露用户的身份隐私,在不存在可信中心的情况下,系统主密钥由系统中的所有资源管理者协商产生,解决不依赖可信权威的情况下多属性权威的密钥策略的属性密码机制,实现了基于区块链的协同的密钥生成和资源访问,系统中各实体的安全性得到了大大的提升。

Description

一种基于区块链的协同细粒度访问控制方法
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于区块链的协同细粒度访问 控制方法。
背景技术
基于密钥策略的属性加密(Key-Policy Attribute based Encryption,KP-ABE)技 术,可应用于付费视频网站、日志加密等场景。根据用户能够访问的资源类型 进行授权,生成用户密钥。在用户的密钥中指定访问策略,在密文中指定属性 集。当密文中的属性满足密钥中指定的访问策略时,用户才可以解密数据。在 现有的一些方案中,用访问树表示访问控制策略,当用户请求私钥的时候,资 源管理者确定出能让用户终端解密的属性组合,并为用户分发相应的属性私钥。 但该方案存在单点失效的问题,不能扩展到分布式的应用场景中。
为了解决这个问题,Chase提出了依赖可信中心的多权威KP-ABE方案,但 是该方案依然由中心权威(Trusted Party,TP)管理用户的身份信息,在密钥生成过 程中资源管理者依赖TP验证用户所拥有的属性证书。在该方案中,TP成为系 统的瓶颈,管理所有用户和资源管理者的身份信息,一旦TP出现问题,用户和 资源管理者都面临隐私泄露的风险。
发明内容
为解决上述技术问题,本发明提供一种基于区块链的协同细粒度访问控制 方法,本发明采用的技术方案是:
一种基于区块链的协同细粒度访问控制方法,包括:
S1:用户终端构造资源访问请求,并利用资源访问服务器的区块链公钥对 该资源访问请求加密后发送给所述资源访问服务器,所述资源访问请求中包含 用户终端的身份信息以及待访问的资源列表,所述身份信息包括用户终端根据 区块链管理平台的指示生成的用户终端区块链身份标识IDuser以及身份属性证 书,所述用户终端中存储有资源管理者为其分发的授权凭证,所述授权凭证为 所述资源管理者根据为自身管理的每个身份属性生成的属性私钥和所述用户终 端在请求授权过程中向该资源管理者发送的身份属性证书列表计算得到的凭 证;
S2:所述资源访问服务器利用本地存储的自身的区块链私钥对接收到的资 源访问请求进行解密,所述资源访问服务器的区块链私钥和区块链公钥为所述 资源访问器在向所述区块链管理平台注册的过程中根据所述区块链管理平台的 指示生成的私钥和公钥;
S3:所述资源访问服务器利用解密得到的IDuser确定对应用户终端的区块链 公钥,并利用对应用户终端的区块链公钥验证解密得到的身份属性证书的真实 性,所述用户终端的区块链公钥为所述用户终端在向所述区块链管理平台注册 的过程中根据所述区块链管理平台的指示公钥;
S4:所述资源访问服务器在确定解密得到的身份属性证书真实后,利用该 身份属性证书和预先存储的区块链管理平台用户属性撤销列表判断该用户终端 是否有身份属性被撤销,如是,转至S5,否则,转至S6;
S5:所述资源访问服务器拒绝该用户终端的资源访问请求;
S6:所述资源访问服务器判断解密得到的资源列表中的资源的类型是否是 数据类型,如是,转至S7,否则,转至S9;
S7:所述资源访问服务器生成数据密文,并使用用户终端的区块链公钥加 密该数据密文后将该数据密文发送给对应的用户终端,所述数据密文中嵌有用 于进行加密的加密属性集、经加密的数据消息以及加密属性公钥集,所述加密 属性集为从资源管理者AAi管理的身份属性集合中选择出来用于加密的属性集 合,所述加密属性公钥集为基于所述资源管理者为其管理的每个身份属性生成 的属性公钥进行指数运算后得到的集合;
S8:用户终端利用自身的区块链私钥解密接收到的信息得到数据密文,并 利用本地存储的授权凭证对该数据密文进行解密;
S9:所述资源访问服务器利用挑战应答协议实现对所述用户终端的认证, 在认证通过后允许所述用户终端进行资源的访问,否则拒绝该用户终端的资源 访问请求。
进一步地,在步骤S1之前包括:
S11:所述系统中的用户终端、资源访问服务器和资源管理者注册到区块链 管理平台中;
步骤S11包括:
S111:区块链管理平台初始化;
S112:所述系统中的用户终端、资源访问服务器和资源管理者根据所述区 块链管理平台的指示生成各自的区块链公私钥对、区块链身份标识和身份属性 证书;
S113:所述用户终端、资源访问服务器和资源管理者根据步骤S12的生成 结果分别配置自身的区块链公私钥对、区块链身份标识和身份属性证书。
进一步地,在步骤S11和步骤S1之间包括:
S12:所述系统中各资源管理者初始化;所述系统中存在N个资源管理者, 且每一资源管理者各自管理一个身份属性集合,且各身份属性集合互不相交;
步骤S12包括:
S121:资源管理者AAi生成自己的主私钥yi;AAi表示系统中的第i个资源 管理者,i∈[1,N];
S122:AAi选取N-1次的多项式fi(x)=ci,0+ci,1x+...+ci,N-1xN-1,并根据该多项式的系数ci,k计算资源管理者AAi主私钥的背书值Ci,k,并向其他AAj广播自身的背 书值,ci,0=yi
Figure BDA0002319091420000031
k∈[1,N-1],j∈[1,…i-1,i+1,…N],e(g,g)表示系统 的双线性映射;
S123:资源管理者AAi计算自身主私钥的共享ti,j,并利用AAj的区块链公 钥加密该共享发送给对应的AAj
S124:AAj接收到AAi发送的共享,并利用自身的区块链私钥解密,并根据 解密结果判断AAi是否是诚实的,如是,转至S126,否则,转至S125;
S125:AAi重新发送主私钥的共享给AAj,直至AAj判定AAi诚实为止;
S126:AAi利用接收到的其他所有资源管理者广播的主私钥的背书值计算系 统的主公钥Y0
S127:AAi为其管理的每个身份属性生成对应的属性私钥和属性公钥得到属 性私钥集合{atti,m}和属性公钥集合{ATTi,m},其中,
Figure BDA0002319091420000041
m∈[1,n],g表示 系统中双线性群的生成元,n为AAi管理的身份属性集合身份属性的总个数,atti,m表示AAi为其管理的第m个身份属性生成的属性私钥,ATTi,m表示AAi为其管理 的第m个身份属性生成的属性公钥;
S128:AAi将所述属性公钥公布,并将自身的属性私钥存储在本地;
步骤S7中的数据密文中包括经系统的主公钥Y0加密的数据消息。
进一步地,步骤S123中通过公式
Figure BDA0002319091420000042
计算AAi主私钥的共享, 其中
Figure BDA0002319091420000043
表示利用系统的哈希函数H1对资源管理者AAj的区块链身份标识 进行处理;
步骤S124包括:AAj利用自身的区块链私钥解密AAi发送的共享后判断
Figure BDA0002319091420000044
是否成立,如是,则判定AAi是诚实的,否则,判定AAi是不诚实的;
步骤S126中通过公式
Figure BDA0002319091420000045
计算系统的主公钥Y0
进一步地,在步骤S12与步骤S1之间还包括:
S13:资源管理者针对用户终端生成对应的授权凭证,并将该授权凭证发送 给对应的用户终端;
步骤S13包括:
S131:用户终端构造授权凭证生成请求,并利用资源管理者的区块链公钥 对该请求加密后发送给对应的资源管理者AAi,所述授权凭证生成请求中包括用 户终端的区块链身份标识IDuser以及用户终端预先从本地存储的身份属性证书中 选择出来的身份属性证书列表{ATTCerti},ATTCerti表示用户终端向资源管理者 AAi发送的身份属性证书;
S132:资源管理者AAi利用自身的区块链私钥对接收到的授权凭证生成请 求进行解密得到用户终端发送的区块链身份标识和身份属性证书列表;
S133:资源管理者AAi在验证用户的身份属性证书真实后利用用户终端的 身份属性证书和预先存储的区块链管理平台用户属性撤销列表判断该用户终端 是否有身份属性被撤销,如是,转至S134,否则,转至S135;
S134:资源管理者AAi拒绝为该用户终端生成授权凭证;
S135:资源管理者AAi根据请求中的身份属性证书列表确定用户终端的权 限,为该用户终端发送的身份属性证书列表所指示的身份属性集中自己管理的 身份属性生成用户终端对应的属性私钥,并利用自身的主私钥yi生成用户终端的 全局私钥;
S136:资源管理者AAi利用用户终端的区块链公钥加密生成的属性私钥和 全局私钥作为授权凭证发送给用户终端;
S137:用户终端在接收到授权凭证后利用自身的区块链私钥解密得到对应 的属性私钥和全局私钥并存储在本地。
进一步地,步骤S135包括:
S1351:资源管理者AAi针对区块链身份标识为IDuser的用户终端生成随机数
Figure BDA0002319091420000051
并选取d-1次的多项式pi(x)=ai,0+ai,1x+...+ai,d-1xd-1,其中,
Figure BDA0002319091420000052
S1352:资源管理者AAi针对属性证书列表中自己管理的身份属性通过公式
Figure BDA0002319091420000053
生成用户终端对应的属性私钥Di,m,并通过公式
Figure BDA0002319091420000054
生成用户 终端对应的全局私钥
Figure BDA0002319091420000055
进一步地,步骤S7包括:
资源访问服务器对资源管理者AAi的每一属性公钥进行指数运算得到加密 属性公钥集{ATTi,m s},选取随机数s作为加密指数,输出密文CT并发送给对应的 用户终端,其中,
Figure BDA0002319091420000061
Figure BDA0002319091420000062
表示从资源管理者 AAi管理的身份属性集合中选择出来的用于加密的加密属性集,M表示数据消 息。
进一步地,步骤S8包括:
S81:当
Figure BDA0002319091420000063
时,用户终端利用自己的属性私钥和加密属性集做配 对运算恢复出资源管理者AAi为该用户终端生成的
Figure BDA0002319091420000064
Figure BDA0002319091420000065
表示该用户终端 拥有的总属性集;
S82:用户终端利用恢复得到的
Figure BDA0002319091420000066
以及拉格朗日插值算法恢复出第一解密 密钥
Figure BDA0002319091420000067
Figure BDA0002319091420000068
S83:用户终端利用全局私钥
Figure BDA0002319091420000069
和密文中的C″计算得到第二解密密钥A;
Figure BDA00023190914200000610
S84:用户终端利用
Figure BDA00023190914200000611
和A解密密文中的C′得到数据消息M,
Figure BDA00023190914200000612
进一步地,步骤S9包括:
S91:资源访问服务器生成临时访问许可TAP密文,利用用户终端的区块链 公钥对该临时访问许可TAP密文加密后发送给对应的用户终端,所述临时访问 许可TAP密文中包含用于进行加密的加密属性集、经加密的TAP消息以及加密 属性公钥集;
S92:用户终端自身的区块链私钥解密接收到的信息得到TAP密文,并利用 本地存储的授权凭证对该TAP密文进行解密得到访问许可明文;
S93:用户终端使用自身的区块链私钥签名访问许可明文,并将访问许可明 文和签名通过该资源访问服务器的区块链公钥加密发送给该资源访问服务器;
S94:该资源访问服务器使用自身的区块链私钥解密并验证TAP,认证通过 之后,允许该用户终端进行资源的访问,否则,拒绝该用户终端所有的资源访 问请求。
进一步地,所述方法还包括:
当某个用户终端的身份属性被撤销时,区块链平台发布用户身份属性撤销 通知,并同步到所有实体共同维护的用户属性撤销列表中;
该用户终端重新注册到区块链身份管理平台,生成新的区块链身份标识和 区块链公私钥对,重新获得授权凭证。
本发明提供的基于区块链的协同细粒度访问控制方法利用基于区块链的身 份管理技术管理系统中各实体的身份和属性证书,也即可以不依赖TP,系统中 的各实体可以自组织的管理自己的身份和属性证书,提升了系统整体的安全性。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1为基于区块链的协同细粒度访问控制方法的流程示意图;
图2为系统中实体初始化的流程示意图;
图3为密码系统的初始化流程示意图;
图4为对用户终端授权的流程示意图。
具体实施方式
为了使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合 附图及具体实施例进行详细描述,应当理解,此处所描述的具体实施例仅仅用 以解释本发明,并不用于限定本发明。
本实施例提供一种基于区块链的协同细粒度访问控制方法,利用基于区块 链的自组织身份管理技术,解决传统KP-ABE中依赖可信中心进行属性证书管 理和密钥分发的局限性,结合非中心的密码技术、多权威KP-ABE技术,实现 多资源管理者协同的密钥生成和数据访问,最终实现基于区块链的协同的细粒 度访问控制方法,具体方法请参见图1所示,包括:
S1:用户终端构造资源访问请求,并利用资源访问服务器的区块链公钥对 该资源访问请求加密后发送给资源访问服务器。资源访问请求中包含用户终端 的身份信息以及待访问的资源列表,用户终端的身份信息包括用户终端根据区 块链管理平台的指示生成的用户终端区块链身份标识IDuser以及身份属性证书, 用户终端中存储有资源管理者为其分发的授权凭证,授权凭证为资源管理者根 据为自身管理的每个身份属性生成的属性私钥和用户终端在请求授权过程中向 该资源管理者发送的身份属性证书列表计算得到的凭证。
请参见图2所示,在步骤S1之前包括:
S11:系统中的用户终端、资源访问服务器和资源管理者注册到资源管理平 台中。
访问控制系统根据权限分散的原则,N个资源管理者协同管理所有的资源, 资源访问服务器为用户提供资源访问接口。
上述步骤S11包括:
S111:区块链管理平台初始化;
具体的,区块链管理平台可以选取哈希算法SHA-256、数字签名算法ECDSA 等。
S112:系统中的用户终端、资源访问服务器和资源管理者根据区块链管理 平台的指示生成各自的区块链公私钥对、区块链身份标识和身份属性证书;
S113:用户终端、资源访问服务器和资源管理者根据步骤S12的生成结果 分别配置自身的区块链公私钥对、区块链身份标识和身份属性证书。
系统中所有的用户属性集被划分为多个不相交的集合,每一个资源管理者 作为密码系统的属性权威管理一个属性集合,并共同协商密码系统公共参数和 系统主公钥,得到系统主私钥份额,每个资源管理者也独立生成自己所管理属 性集的每一个属性的公/私钥对,所有的公钥被发布,私钥安全保存在本地。
在一个可选的实施例中,如图3所示,区块链管理平台将系统所有用户的 身份属性集划分为N个不相交的身份属性集合,每个资源管理者AA管理一个 属性集合。将去中心的密码技术和多属性权威的KP-ABE方案结合,N个AA 共同协商系统的主私钥,相互之间不知道彼此的主私钥。每个AAi,i=1,…,N广播自 己主私钥的背书值,并将主私钥的共享发给AAj,其中j=1,…,i-1,i+1…,N。每个AAj通 过验证AAi的共享来判断相应的AAi是否可信,验证通过之后,每个AAi利用 收到的其他所有AA广播的背书值计算密码系统的主公钥。
也即是说,在步骤S11和步骤S1之间还包括以下密码系统初始化的步骤:
S12:系统中各资源管理者初始化;系统中存在N个资源管理者,且每一资 源管理者各自管理一个身份属性集合,且各身份属性集合互不相交;
区块链管理平台根据预设的安全参数λ,生成系统公共参数,其中系统公共 参数包括两个阶为p的双线性群G、GT,G的生成元为g,双线性映射e:G×G→GT, 哈希函数
Figure BDA0002319091420000091
具体来说,步骤S12包括:
S121:每个资源管理者AAi生成自己的主私钥yi,yi∈Zp,AAi表示系统中 的第i个资源管理者,i∈[1,N];
S122:AAi选取N-1次的多项式fi(x)=ci,0+ci,1x+...+ci,N-1xN-1,并根据该多项式的系数ci,k计算资源管理者AAi主私钥的背书值Ci,k,并向其他AAj广播自身的背 书值,ci,0=yi
Figure BDA0002319091420000092
k∈[1,N-1],j∈[1,…i-1,i+1,…N],e(g,g)表示系统 的双线性映射;
S123:资源管理者AAi计算自身主私钥的共享ti,j,并利用AAj的区块链公 钥加密该共享发送给对应的AAj
具体来说,步骤S123中可以通过公式
Figure BDA0002319091420000093
计算AAi主私钥的共 享,其中
Figure BDA0002319091420000094
表示利用系统的哈希函数H1对资源管理者AAj的区块链身份标 识进行处理;
S124:AAj接收到AAi发送的共享,并利用自身的区块链私钥解密,并根据 解密结果判断AAi是否是诚实的,如是,转至S126,否则,转至S125;
在步骤S124中,AAj利用自身的区块链私钥解密AAi发送的共享后可以判断
Figure BDA0002319091420000101
是否成立,如是,则判定AAi是诚实的,否则,判定AAi是不诚实的;
S125:AAi重新发送主私钥的共享给AAj,直至AAj判定AAi诚实为止;
S126:AAi利用接收到的其他所有资源管理者广播的主私钥的背书值计算系 统的主公钥Y0,公开系统的公共参数
Figure BDA0002319091420000102
步骤S126中可以通过公式
Figure BDA0002319091420000103
计算系统的主公钥Y0
S127:AAi为其管理的每个身份属性生成对应的属性私钥和属性公钥得到属 性私钥集合{atti,m}和属性公钥集合{ATTi,m},其中,
Figure BDA0002319091420000104
m∈[1,n],g表示 系统中双线性群的生成元,n为AAi管理的身份属性集合身份属性的总个数,atti,m表示AAi为其管理的第m个身份属性生成的属性私钥,ATTi,m表示AAi为其管理 的第m个身份属性生成的属性公钥;
在步骤S127中,每个AAi可以选取随机数atti,1,...,atti,n∈Zp作为AAi的属性私钥。
S128:AAi将属性公钥公布,并将自身的属性私钥存储在本地;
应当说明的是,用户终端本地存储的授权凭证是该用户终端向资源管理者 发送授权请求后资源管理者为该用户终端分发的,也即是说,在步骤S12与步 骤S1之间还可以包括以下步骤:
S13:资源管理者针对用户终端生成对应的授权凭证,并将该授权凭证发送 给对应的用户终端;
具体的,请参见图4所示,步骤S13包括:
S131:用户终端构造授权凭证生成请求,并利用资源管理者的区块链公钥 对该请求加密后发送给对应的资源管理者AAi,所述授权凭证生成请求中包括用 户终端的区块链身份标识IDuser以及用户终端预先从本地存储的身份属性证书中 选择出来的身份属性证书列表{ATTCerti},ATTCerti表示用户终端向资源管理者 AAi发送的身份属性证书;
应当说明的是,图4中的密钥生成请求也即是步骤S131所提及的授权凭证 生成请求,用户终端可以利用资源管理者为其分发的授权凭证(密钥)对资源 访问服务器返回的信息进行解密。
S132:资源管理者AAi利用自身的区块链私钥对接收到的授权凭证生成请 求进行解密得到户终端发送的区块链身份标识和身份属性证书列表;
S133:资源管理者AAi在验证用户的身份属性证书真实后利用用户终端的 身份属性证书和预先存储的区块链管理平台用户属性撤销列表判断该用户终端 是否有身份属性被撤销,如是,转至S134,否则,转至S135;
S134:资源管理者AAi拒绝为该用户终端生成授权凭证;
S135:资源管理者AAi根据请求中的身份属性证书列表确定用户终端的权 限,为该用户终端发送的身份属性证书列表所指示的身份属性集中自己管理的 身份属性生成用户终端对应的属性私钥,并利用自身的主私钥yi生成用户终端的 全局私钥;
应当说明的是,步骤S135可以包括:
S1351:资源管理者AAi针对区块链身份标识为IDuser的用户终端生成随机数
Figure BDA0002319091420000111
并选取d-1次的多项式pi(x)=ai,0+ai,1x+...+ai,d-1xd-1
Figure BDA0002319091420000112
S1352:资源管理者AAi针对属性证书列表中自己管理的身份属性通过公式
Figure BDA0002319091420000113
生成用户终端对应的属性私钥Di,m,并通过公式
Figure BDA0002319091420000114
生成用户 终端对应的全局私钥
Figure BDA0002319091420000115
S136:资源管理者AAi利用用户终端的区块链公钥加密生成的属性私钥和 全局私钥作为授权凭证发送给用户终端;
S137:用户终端在接收到授权凭证后利用自身的区块链私钥解密得到对应 的属性私钥和全局私钥并存储在本地。
S2:资源访问服务器利用本地存储的自身的区块链私钥对接收到的资源访 问请求进行解密,资源访问服务器的区块链私钥和区块链公钥为资源访问器在 向区块链管理平台注册的过程中根据区块链管理平台的指示生成的私钥和公 钥。
S3:资源访问服务器利用解密得到的IDuser确定对应用户终端的区块链公钥, 并利用对应用户终端的区块链公钥验证解密得到的身份属性证书的真实性,用 户终端的区块链公钥为用户终端在向所述区块链管理平台注册的过程中根据所 述区块链管理平台的指示公钥。
S4:资源访问请求在确定解密得到的身份属性证书真实后,利用该身份属 性证书和预先存储的区块链管理平台用户属性撤销列表判断该用户终端是否有 身份属性被撤销,如是,转至S5,否则,转至S6;
S5:资源访问服务器拒绝该用户终端的资源访问请求;
S6:资源访问服务器判断解密得到的资源列表中的资源的类型是否是数据 类型,如是,转至S7,否则,转至S9;
可以理解的是,整个系统在正常运作之前,需要进行资源的访问控制设置, 具体设置规则为:如果需要访问的资源是数据,则用选定属性集对数据进行加 密实现访问控制;如果需要访问的资源是其它类型,设置能够访问该资源的属 性集合,并利用一个动态的挑战应答协议实现用户向服务器证明其拥有足够的 访问该资源的属性私钥从而实现访问控制,服务器端不需要维护庞大的用户身 份信息库;
在该过程中,作为一种可选方式,可以选择一个对称密钥,用于加密共享 的资源,然后用KP-ABE方案及选定的属性集加密该对称密钥。
S7:资源访问服务器生成数据密文,并使用用户终端的区块链公钥加密该 数据密文后将该数据密文发送给对应的用户终端,数据密文中嵌有用于进行加 密的加密属性集、经加密的数据消息以及加密属性公钥集,加密属性集为从资 源管理者AAi管理的身份属性集合中选择出来用于加密的属性集合,加密属性 公钥集为基于资源管理者为其管理的每个身份属性生成的属性公钥进行指数运 算后得到的集合。
资源访问服务器对资源管理者AAi的每一属性公钥进行指数运算得到加密 属性公钥集{ATTi,m s},选取随机数s作为加密指数,输出密文CT并发送给对应的 用户终端,其中,
Figure BDA0002319091420000131
Figure BDA0002319091420000132
表示从资源管理者 AAi管理的身份属性集合中选择出来的用于加密的加密属性集,M表示数据消 息。本实施例中的C′和C″都表示经加密的信息。
S8:用户终端利用自身的区块链私钥解密接收到的信息得到数据密文,并 利用本地存储的授权凭证对该数据密文进行解密。
具体来说,当资源访问服务器返回的信息是数据密文时,本实施例中的步 骤S8包括:
S81:当
Figure BDA0002319091420000133
时,用户终端利用自己的属性私钥和加密属性集做配 对运算恢复出资源管理者AAi为该用户终端生成的
Figure BDA0002319091420000134
Figure BDA0002319091420000135
表示该用户终端 拥有的总属性集;
Figure BDA0002319091420000136
S82:用户终端利用恢复得到的
Figure BDA0002319091420000137
以及拉格朗日插值算法恢复出第一解密 密钥
Figure BDA0002319091420000138
Figure BDA0002319091420000139
S83:用户终端利用全局私钥
Figure BDA00023190914200001310
和密文中的C″计算得到第二解密密钥A;
Figure BDA00023190914200001311
A84:用户终端利用
Figure BDA00023190914200001312
和A解密密文中的C′得到数据消息M,
Figure BDA00023190914200001313
当然了,当资源访问服务器返回的是TAP密文时,用户终端同样可以利用 上述方法对TAP密文进行解密。
S9:资源访问服务器利用挑战应答协议实现对用户终端的认证,在认证通 过后允许用户终端进行资源的访问,否则拒绝该用户终端的资源访问请求。
比如,当用户终端请求访问的资源是网络资源时就可以执行步骤S9,本实 施例中的步骤S9包括:
S91:资源访问服务器生成临时访问许可TAP密文,利用用户终端的区块链 公钥对该临时访问许可TAP密文加密后发送给对应的用户终端,所述临时访问 许可TAP密文中包含用于进行加密的加密属性集、经加密的TAP消息以及加密 属性公钥集;
应当说明的是,这里的TAP密文的结构可以和步骤S7中数据密文的结构相 似,也即
Figure BDA0002319091420000141
S92:用户终端自身的区块链私钥解密接收到的信息得到TAP密文,并利用 本地存储的授权凭证对该TAP密文进行解密得到访问许可明文;
S93:用户终端使用自身的区块链私钥签名访问许可明文,并将访问许可明 文和签名通过该资源访问服务器的区块链公钥加密发送给该资源访问服务器;
S94:该资源访问服务器使用自身的区块链私钥解密并验证TAP,认证通过 之后,允许该用户终端进行资源的访问,否则,拒绝该用户终端所有的资源访 问请求。
本实施例所提供的方法还包括以下步骤:
当某个用户终端的身份属性被撤销时,区块链平台发布用户身份属性撤销 通知,并同步到所有实体共同维护的用户属性撤销列表中;
该用户终端重新注册到区块链身份管理平台,生成新的区块链身份标识和 区块链公私钥对,重新获得授权凭证。
在一个示例中,以基于区块链的协同资源共享的应用场景来解释本实施例 提供的方法,该资源类型不是数据资源。密码系统的公共参数一般包括安全参 数λ、根据安全参数选择的素数p、双线性群G、GT、群G的生成元g、双线 性映射e:G×G→GT、哈希函数
Figure BDA0002319091420000142
等。
根据实际的应用场景,假设有N个资源管理者,其身份标识为
Figure BDA0002319091420000151
每个资源管理者管理不同的属性集{atti,1,...,atti,n},i∈[1,N],选取随机数atti,1,...,atti,n∈Zp作为
Figure BDA0002319091420000152
的属性私钥,即为{atti,1,...,atti,n},生成相应的属性公钥
Figure BDA0002319091420000153
其中
Figure BDA0002319091420000154
每个
Figure BDA0002319091420000155
选取各自的主私钥 yi∈Zp并作为系统主私钥的份额,种子密钥si∈Zp
Figure BDA0002319091420000156
随机选取一个N-1次的多 项式,fi(x)=ci,0+ci,1x+...+ci,N-1xN-1,其中fi(0)=ci,0=yi。然后,
Figure BDA0002319091420000157
计算并广播背 书值:
Figure BDA0002319091420000158
Figure BDA0002319091420000159
计算主私钥的共享:
Figure BDA00023190914200001510
(ti,i自己保留),利用
Figure BDA00023190914200001511
的区块链公钥加密
Figure BDA00023190914200001512
发送给对应的
Figure BDA00023190914200001513
Figure BDA00023190914200001514
Figure BDA00023190914200001515
接收到加密的共享{tj,i}i∈[1,N]
Figure BDA00023190914200001516
利用自己的区块链私钥解密并验证等式
Figure BDA00023190914200001517
是 否成立。如果等式成立,则证明
Figure BDA00023190914200001518
是诚实的;否则,要求
Figure BDA00023190914200001519
重新发送共享直 到等式成立为止;经过以上步骤,每个
Figure BDA00023190914200001520
可以得到广播值
Figure BDA00023190914200001521
并且可以被公开验证。因此,每个
Figure BDA00023190914200001522
利用收到的所有其他AA广播的主私钥的 背书值,各自计算的主公钥
Figure BDA00023190914200001523
每个
Figure BDA00023190914200001524
将属性公 钥和系统主公钥公开,自己的主私钥和属性私钥安全的存储在本地。
用户构造密钥生成请求,请求内容包括用户的身份标识IDuser、用户选择的 身份属性证书列表
Figure RE-GDA00024097192300001525
并分别利用资源管理者
Figure RE-GDA00024097192300001526
的 区块链公钥对密钥生成请求进行加密,发送给对应的资源管理者。资源管理者 利用自身的区块链私钥对密钥生成请求解密,得到明文。资源管理者验证用户 的身份属性证书并查找用户属性撤销列表,如果证书真实且属性没有被撤销, 则根据请求中的身份属性列表确定用户的权限。每个
Figure RE-GDA00024097192300001527
计算
Figure RE-GDA00024097192300001528
用户生成一个接近于真随机数的值,并随机选取一个d-1次的多项式 pi(x)=ai,0+ai,1x+...+ai,d-1xd-1,其中,
Figure RE-GDA00024097192300001529
并为属性证书列表
Figure RE-GDA0002409719230000161
中对应的属性集中自己管理的属性集生成对应的属性私钥
Figure RE-GDA0002409719230000162
另外,也生成一个全局私钥
Figure RE-GDA0002409719230000163
否则,拒绝请求, 其中,l表示密钥生成请求中用户身份属性有效声明的个数。资源管理者利用用 户的区块链公钥加密生成的属性私钥和全局私钥,作为响应发送给用户作为用 户的授权凭证。
用户构建资源访问请求,该请求中包括用户想要的资源列表{RL1,...,RLx}和用户的身份标识IDuser;其中,x表示想要请求的资源个数。资源访问服务器用自己 的区块链私钥解密请求并根据区块链平台的用户属性撤销列表确认用户是否有 属性被撤销,如果没有任何属性被撤销,服务器生成一个临时的服务许可 (Temporary Access Permit,TAP),选取随机数s∈Zp作为加密指数,然后根据资源 的访问控制配置中的属性集加密该TAP,然后用请求用户的区块链公钥加密 TAP,将TAP密文发送给用户;
Figure BDA0002319091420000164
用户用自己的区块链私钥解密出TAP密文,然后用授权凭证解密TAP密文, 每个
Figure BDA0002319091420000165
系统访问控制配置中的属性集和用户授权的属性相交至少d个,也即
Figure BDA0002319091420000166
Figure BDA0002319091420000167
用户利用自己的授权票据解密TAP密文:
Figure BDA0002319091420000168
每个
Figure BDA0002319091420000169
使用拉格朗日插值法恢复出
Figure BDA00023190914200001610
用户计算:
Figure BDA00023190914200001611
利用上述计算结果A和系统的公共参数解密数据密文,得到临时的访问许可TAP:
Figure BDA00023190914200001612
用户使用自己的区块链私钥签名TAP,并将TAP和
Figure BDA00023190914200001613
(TAP)利用该服务 器的公钥加密发送给该服务器。该资源访问服务器用自己的区块链私钥解密并 验证TAP。认证通过之后,允许用户进行资源的访问;否则,拒绝所有的资源访 问请求。
通过本实施例提供的方法,系统中所有的实体注册到区块链平台上,每个 实体都可以配置自己的身份文档和属性证书;移除传统多权威KP-ABE访问控 制中可信的身份管理中心,实现用户自组织身份管理的同时保护了用户的身份 隐私;另外本实施林提供的方案融合非中心的密码技术,解决不依赖可信权威 的情况下多属性权威的密钥策略的属性密码机制,实现了基于区块链的协同的 密钥生成和资源访问;同时利用区块链技术,可以实现即时的用户属性撤销。 当用户向服务器请求资源时,服务器可以根据区块链平台发布的用户属性撤销 声明判断是否向用户提供服务资源。在本实施例所提供的方法中,将用户访问 的资源分为数据资源和其他类型资源,当用户访问的是数据资源,根据选定的 属性集加密数据资源实现访问控制;当用户访问的是其他类型的资源,设置能 够访问该资源的集合,并利用挑战应答协议实现用户向服务器证明自己拥有足 够的访问该资源的属性私钥从而实现访问控制,服务器端不需要维护庞大的身 份信息库。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实 施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬 件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方 案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来, 该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包 括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者 网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述 的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本 领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保 护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

Claims (10)

1.一种基于区块链的协同细粒度访问控制方法,其特征在于,包括:
S1:用户终端构造资源访问请求,并利用资源访问服务器的区块链公钥对该资源访问请求加密后发送给所述资源访问服务器,所述资源访问请求中包含用户终端的身份信息以及待访问的资源列表,所述身份信息包括用户终端根据区块链管理平台的指示生成的用户终端区块链身份标识IDuser以及身份属性证书,所述用户终端中存储有资源管理者为其分发的授权凭证,所述授权凭证为所述资源管理者根据为自身管理的每个身份属性生成的属性私钥和所述用户终端在请求授权过程中向该资源管理者发送的身份属性证书列表计算得到的凭证;
S2:所述资源访问服务器利用本地存储的自身的区块链私钥对接收到的资源访问请求进行解密,所述资源访问服务器的区块链私钥和区块链公钥为所述资源访问器在向所述区块链管理平台注册的过程中根据所述区块链管理平台的指示生成的私钥和公钥;
S3:所述资源访问服务器利用解密得到的IDuser确定对应用户终端的区块链公钥,并利用对应用户终端的区块链公钥验证解密得到的身份属性证书的真实性,所述用户终端的区块链公钥为所述用户终端在向所述区块链管理平台注册的过程中根据所述区块链管理平台的指示公钥;
S4:所述资源访问服务器在确定解密得到的身份属性证书真实后,利用该身份属性证书和预先存储的区块链管理平台用户属性撤销列表判断该用户终端是否有身份属性被撤销,如是,转至S5,否则,转至S6;
S5:所述资源访问服务器拒绝该用户终端的资源访问请求;
S6:所述资源访问服务器判断解密得到的资源列表中的资源的类型是否是数据类型,如是,转至S7,否则,转至S9;
S7:所述资源访问服务器生成数据密文,并使用用户终端的区块链公钥加密该数据密文后将该数据密文发送给对应的用户终端,所述数据密文中嵌有用于进行加密的加密属性集、经加密的数据消息以及加密属性公钥集,所述加密属性集为从资源管理者AAi管理的身份属性集合中选择出来用于加密的属性集合,所述加密属性公钥集为基于所述资源管理者为其管理的每个身份属性生成的属性公钥进行指数运算后得到的集合;
S8:用户终端利用自身的区块链私钥解密接收到的信息得到数据密文,并利用本地存储的授权凭证对该数据密文进行解密;
S9:所述资源访问服务器利用挑战应答协议实现对所述用户终端的认证,在认证通过后允许所述用户终端进行资源的访问,否则拒绝该用户终端的资源访问请求。
2.如权利要求1所述的基于区块链的协同细粒度访问控制方法,其特征在于,在步骤S1之前包括:
S11:所述系统中的用户终端、资源访问服务器和资源管理者注册到区块链管理平台中;
步骤S11包括:
S111:区块链管理平台初始化;
S112:所述系统中的用户终端、资源访问服务器和资源管理者根据所述区块链管理平台的指示生成各自的区块链公私钥对、区块链身份标识和身份属性证书;
S113:所述用户终端、资源访问服务器和资源管理者根据步骤S12的生成结果分别配置自身的区块链公私钥对、区块链身份标识和身份属性证书。
3.如权利要求2所述的基于区块链的协同细粒度访问控制方法,其特征在于,在步骤S11和步骤S1之间包括:
S12:所述系统中各资源管理者初始化;所述系统中存在N个资源管理者,且每一资源管理者各自管理一个身份属性集合,且各身份属性集合互不相交;
步骤S12包括:
S121:资源管理者AAi生成自己的主私钥yi;AAi表示系统中的第i个资源管理者,i∈[1,N];
S122:AAi选取N-1次的多项式fi(x)=ci,0+ci,1x+...+ci,N-1xN-1,并根据该多项式的系数ci,k计算资源管理者AAi主私钥的背书值Ci,k,并向其他AAj广播自身的背书值,ci,0=yi
Figure FDA0002319091410000031
k∈[1,N-1],j∈[1,…i-1,i+1,…N],e(g,g)表示系统的双线性映射;
S123:资源管理者AAi计算自身主私钥的共享ti,j,并利用AAj的区块链公钥加密该共享发送给对应的AAj
S124:AAj接收到AAi发送的共享,并利用自身的区块链私钥解密,并根据解密结果判断AAi是否是诚实的,如是,转至S126,否则,转至S125;
S125:AAi重新发送主私钥的共享给AAj,直至AAj判定AAi诚实为止;
S126:AAi利用接收到的其他所有资源管理者广播的主私钥的背书值计算系统的主公钥Y0
S127:AAi为其管理的每个身份属性生成对应的属性私钥和属性公钥得到属性私钥集合{atti,m}和属性公钥集合{ATTi,m},其中,
Figure FDA0002319091410000032
m∈[1,n],g表示系统中双线性群的生成元,n为AAi管理的身份属性集合身份属性的总个数,atti,m表示AAi为其管理的第m个身份属性生成的属性私钥,ATTi,m表示AAi为其管理的第m个身份属性生成的属性公钥;
S128:AAi将所述属性公钥公布,并将自身的属性私钥存储在本地;
步骤S7中的数据密文中包括经系统的主公钥Y0加密的数据消息。
4.如权利要求3所述的基于区块链的协同细粒度访问控制方法,其特征在于,步骤S123中通过公式
Figure FDA0002319091410000033
计算AAi主私钥的共享,其中
Figure FDA0002319091410000034
表示利用系统的哈希函数H1对资源管理者AAj的区块链身份标识进行处理;
步骤S124包括:AAj利用自身的区块链私钥解密AAi发送的共享后判断
Figure FDA0002319091410000035
是否成立,如是,则判定AAi是诚实的,否则,判定AAi是不诚实的;
步骤S126中通过公式
Figure FDA0002319091410000036
计算系统的主公钥Y0
5.如权利要求4所述的基于区块链的协同细粒度访问控制方法,其特征在于,在步骤S12与步骤S1之间还包括:
S13:资源管理者针对用户终端生成对应的授权凭证,并将该授权凭证发送给对应的用户终端;
步骤S13包括:
S131:用户终端构造授权凭证生成请求,并利用资源管理者的区块链公钥对该请求加密后发送给对应的资源管理者AAi,所述授权凭证生成请求中包括用户终端的区块链身份标识IDuser以及用户终端预先从本地存储的身份属性证书中选择出来的身份属性证书列表{ATTCerti},ATTCerti表示用户终端向资源管理者AAi发送的身份属性证书;
S132:资源管理者AAi利用自身的区块链私钥对接收到的授权凭证生成请求进行解密得到用户终端发送的区块链身份标识和身份属性证书列表;
S133:资源管理者AAi在验证用户的身份属性证书真实后利用用户终端的身份属性证书和预先存储的区块链管理平台用户属性撤销列表判断该用户终端是否有身份属性被撤销,如是,转至S134,否则,转至S135;
S134:资源管理者AAi拒绝为该用户终端生成授权凭证;
S135:资源管理者AAi根据请求中的身份属性证书列表确定用户终端的权限,为该用户终端发送的身份属性证书列表所指示的身份属性集中自己管理的身份属性生成用户终端对应的属性私钥,并利用自身的主私钥yi生成用户终端的全局私钥;
S136:资源管理者AAi利用用户终端的区块链公钥加密生成的属性私钥和全局私钥作为授权凭证发送给用户终端;
S137:用户终端在接收到授权凭证后利用自身的区块链私钥解密得到对应的属性私钥和全局私钥并存储在本地。
6.如权利要求5所述的基于区块链的协同细粒度访问控制方法,其特征在于,步骤S135包括:
S1351:资源管理者AAi针对区块链身份标识为IDuser的用户终端生成随机数
Figure FDA0002319091410000051
并选取d-1次的多项式pi(x)=ai,0+ai,1x+...+ai,d-1xd-1
Figure FDA0002319091410000052
S1352:资源管理者AAi针对属性证书列表中自己管理的身份属性通过公式
Figure FDA0002319091410000053
生成用户终端对应的属性私钥Di,m,并通过公式
Figure FDA0002319091410000054
生成用户终端对应的全局私钥
Figure FDA0002319091410000055
7.如权利要求6所述的基于区块链的协同细粒度访问控制方法,其特征在于,步骤S7包括:
资源访问服务器对资源管理者AAi的每一属性公钥进行指数运算得到加密属性公钥集{ATTi,m s},选取随机数s作为加密指数,输出密文CT并发送给对应的用户终端,其中,
Figure FDA0002319091410000056
Figure FDA0002319091410000057
表示从资源管理者AAi管理的身份属性集合中选择出来的用于加密的加密属性集,M表示数据消息。
8.如权利要求7所述的基于区块链的协同细粒度访问控制方法,其特征在于,步骤S8包括:
S81:当
Figure FDA0002319091410000058
时,用户终端利用自己的属性私钥和加密属性集做配对运算恢复出资源管理者AAi为该用户终端生成的
Figure FDA0002319091410000059
Figure FDA00023190914100000510
表示该用户终端拥有的总属性集;
S82:用户终端利用恢复得到的
Figure FDA00023190914100000511
以及拉格朗日插值算法恢复出第一解密密钥
Figure FDA00023190914100000512
Figure FDA00023190914100000513
S83:用户终端利用全局私钥
Figure FDA00023190914100000514
和密文中的C″计算得到第二解密密钥A;
Figure FDA00023190914100000515
A84:用户终端利用
Figure FDA00023190914100000516
和A解密密文中的C′得到数据消息M,
Figure FDA00023190914100000517
9.如权利要求1所述的基于区块链的协同细粒度访问控制方法,其特征在于,步骤S9包括:
S91:资源访问服务器生成临时访问许可TAP密文,利用用户终端的区块链公钥对该临时访问许可TAP密文加密后发送给对应的用户终端,所述临时访问许可TAP密文中包含用于进行加密的加密属性集、经加密的TAP消息以及加密属性公钥集;
S92:用户终端自身的区块链私钥解密接收到的信息得到TAP密文,并利用本地存储的授权凭证对该TAP密文进行解密得到访问许可明文;
S93:用户终端使用自身的区块链私钥签名访问许可明文,并将访问许可明文和签名通过该资源访问服务器的区块链公钥加密发送给该资源访问服务器;
S94:该资源访问服务器使用自身的区块链私钥解密并验证TAP,认证通过之后,允许该用户终端进行资源的访问,否则,拒绝该用户终端所有的资源访问请求。
10.如权利要求1-9任一项所述的基于区块链的协同细粒度访问控制方法,其特征在于,所述方法还包括:
当某个用户终端的身份属性被撤销时,区块链平台发布用户身份属性撤销通知,并同步到所有实体共同维护的用户属性撤销列表中;
该用户终端重新注册到区块链身份管理平台,生成新的区块链身份标识和区块链公私钥对,重新获得授权凭证。
CN201911290921.5A 2019-12-16 2019-12-16 一种基于区块链的协同细粒度访问控制方法 Active CN111147460B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911290921.5A CN111147460B (zh) 2019-12-16 2019-12-16 一种基于区块链的协同细粒度访问控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911290921.5A CN111147460B (zh) 2019-12-16 2019-12-16 一种基于区块链的协同细粒度访问控制方法

Publications (2)

Publication Number Publication Date
CN111147460A true CN111147460A (zh) 2020-05-12
CN111147460B CN111147460B (zh) 2021-10-22

Family

ID=70518397

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911290921.5A Active CN111147460B (zh) 2019-12-16 2019-12-16 一种基于区块链的协同细粒度访问控制方法

Country Status (1)

Country Link
CN (1) CN111147460B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112073479A (zh) * 2020-08-26 2020-12-11 重庆邮电大学 一种基于区块链的去中心数据访问控制方法及系统
CN112383391A (zh) * 2020-11-12 2021-02-19 北京安御道合科技有限公司 基于数据属性授权的数据安全保护方法、存储介质及终端
CN112528250A (zh) * 2020-12-17 2021-03-19 上海万向区块链股份公司 通过区块链实现数据隐私和数字身份的系统及方法
CN112733192A (zh) * 2021-01-22 2021-04-30 福州大学 基于联盟链和同态加密的司法电子证据系统及方法
CN112818384A (zh) * 2021-01-18 2021-05-18 网易(杭州)网络有限公司 基于区块链的资产处理方法、装置、设备及存储介质
CN112910870A (zh) * 2021-01-22 2021-06-04 西安电子科技大学 基于区块链的协同隐私计算数据通信方法
CN113067704A (zh) * 2021-03-29 2021-07-02 安徽慧可科技有限公司 一种基于区块链的数据确权方法、系统和设备
CN115022039A (zh) * 2022-06-02 2022-09-06 中国工商银行股份有限公司 信息处理方法、装置、设备、存储介质和计算机程序产品

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108768988A (zh) * 2018-05-17 2018-11-06 深圳前海微众银行股份有限公司 区块链访问控制方法、设备及计算机可读存储介质
US20190238327A1 (en) * 2018-01-30 2019-08-01 Baidu Online Network Technology (Beijing) Co., Ltd. Cross-blockchain data access method, apparatus and system, and computer readable medium
CN110493347A (zh) * 2019-08-26 2019-11-22 重庆邮电大学 基于区块链的大规模云存储中数据访问控制方法及系统
CN110505227A (zh) * 2019-08-23 2019-11-26 国网江苏省电力有限公司无锡供电分公司 基于区块链的电力通信网接入认证方法和装置
CN110519066A (zh) * 2019-09-29 2019-11-29 广东电网有限责任公司 一种基于区块链技术的物联网隐私保护访问控制方法
US20190372956A1 (en) * 2018-06-01 2019-12-05 Paypal, Inc. Using keys with targeted access to the blockchain to verify and authenticate identity

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190238327A1 (en) * 2018-01-30 2019-08-01 Baidu Online Network Technology (Beijing) Co., Ltd. Cross-blockchain data access method, apparatus and system, and computer readable medium
CN108768988A (zh) * 2018-05-17 2018-11-06 深圳前海微众银行股份有限公司 区块链访问控制方法、设备及计算机可读存储介质
US20190372956A1 (en) * 2018-06-01 2019-12-05 Paypal, Inc. Using keys with targeted access to the blockchain to verify and authenticate identity
CN110505227A (zh) * 2019-08-23 2019-11-26 国网江苏省电力有限公司无锡供电分公司 基于区块链的电力通信网接入认证方法和装置
CN110493347A (zh) * 2019-08-26 2019-11-22 重庆邮电大学 基于区块链的大规模云存储中数据访问控制方法及系统
CN110519066A (zh) * 2019-09-29 2019-11-29 广东电网有限责任公司 一种基于区块链技术的物联网隐私保护访问控制方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CHAO WANG; SHIZHAN CHEN; ZHIYONG FENG; YANAN JIANG; XIAO XUE: "Block Chain-Based Data Audit and Access Control Mechanism in Service Collaboration", 《2019 IEEE INTERNATIONAL CONFERENCE ON WEB SERVICES (ICWS)》 *
张青禾: "区块链中的身份识别和访问控制技术研究", 《北京交通大学》 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112073479A (zh) * 2020-08-26 2020-12-11 重庆邮电大学 一种基于区块链的去中心数据访问控制方法及系统
CN112383391A (zh) * 2020-11-12 2021-02-19 北京安御道合科技有限公司 基于数据属性授权的数据安全保护方法、存储介质及终端
CN112383391B (zh) * 2020-11-12 2024-03-19 北京安御道合科技有限公司 基于数据属性授权的数据安全保护方法、存储介质及终端
CN112528250A (zh) * 2020-12-17 2021-03-19 上海万向区块链股份公司 通过区块链实现数据隐私和数字身份的系统及方法
CN112818384A (zh) * 2021-01-18 2021-05-18 网易(杭州)网络有限公司 基于区块链的资产处理方法、装置、设备及存储介质
CN112818384B (zh) * 2021-01-18 2023-07-04 网易(杭州)网络有限公司 基于区块链的资产处理方法、装置、设备及存储介质
CN112733192B (zh) * 2021-01-22 2023-03-31 福州大学 基于联盟链同态加密的司法电子证据系统及方法
CN112733192A (zh) * 2021-01-22 2021-04-30 福州大学 基于联盟链和同态加密的司法电子证据系统及方法
CN112910870A (zh) * 2021-01-22 2021-06-04 西安电子科技大学 基于区块链的协同隐私计算数据通信方法
CN112910870B (zh) * 2021-01-22 2021-11-09 西安电子科技大学 基于区块链的协同隐私计算数据通信方法
CN113067704A (zh) * 2021-03-29 2021-07-02 安徽慧可科技有限公司 一种基于区块链的数据确权方法、系统和设备
CN113067704B (zh) * 2021-03-29 2022-08-30 安徽慧可科技有限公司 一种基于区块链的数据确权方法、系统和设备
CN115022039A (zh) * 2022-06-02 2022-09-06 中国工商银行股份有限公司 信息处理方法、装置、设备、存储介质和计算机程序产品
CN115022039B (zh) * 2022-06-02 2024-03-15 中国工商银行股份有限公司 信息处理方法、装置、设备和存储介质

Also Published As

Publication number Publication date
CN111147460B (zh) 2021-10-22

Similar Documents

Publication Publication Date Title
CN111147460B (zh) 一种基于区块链的协同细粒度访问控制方法
CN110493347B (zh) 基于区块链的大规模云存储中数据访问控制方法及系统
US11206137B2 (en) Providing high availability computing service by issuing a certificate
CN106790261B (zh) 分布式文件系统及用于其中节点间认证通信的方法
CN113761582B (zh) 基于群签名的可监管区块链交易隐私保护方法及系统
CN111953479B (zh) 数据处理的方法及装置
CN108632251B (zh) 基于云计算数据服务的可信认证方法及其加密算法
US11228450B2 (en) Method and apparatus for performing multi-party secure computing based-on issuing certificate
CN110708337B (zh) 一种基于身份认证的大数据安全框架系统
CN109995723B (zh) 一种域名解析系统dns信息交互的方法、装置及系统
CN114091009A (zh) 利用分布式身份标识建立安全链接的方法
CN111756722B (zh) 一种无密钥托管的多授权属性基加密方法和系统
CN116599659B (zh) 无证书身份认证与密钥协商方法以及系统
CN110752934B (zh) 拓扑结构下网络身份交互认证的方法
CN106790185B (zh) 基于cp-abe的权限动态更新集中信息安全访问方法和装置
KR101165350B1 (ko) 유비쿼터스 컴퓨팅 네트워크 환경에서 커뮤니티 컴퓨팅을 위한 디바이스 멤버 인증방법
CN116318637A (zh) 设备安全入网通信的方法和系统
Dutta et al. Vector space access structure and ID based distributed DRM key management
KR101256114B1 (ko) 다수의 mac검증서버에 의한 메시지인증코드 검증 방법 및 시스템
Tan et al. A secure cloud-assisted certificateless group authentication scheme for VANETs in big data environment
CN113556236B (zh) 一种基于代理签名的能源数据中台敏感内容委托授权方法
CN115580403B (zh) 一种基于pki的计算节点接入控制方法
CN117155692B (zh) 基于安全掩码的智能电网数据聚合方法及系统
CN115604030B (zh) 数据共享方法、装置、电子设备和存储介质
CN117278330B (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240411

Address after: Room 801, 85 Kefeng Road, Huangpu District, Guangzhou City, Guangdong Province

Patentee after: Guangzhou Dayu Chuangfu Technology Co.,Ltd.

Country or region after: China

Address before: 400065 Chongwen Road, Nanshan Street, Nanan District, Chongqing

Patentee before: CHONGQING University OF POSTS AND TELECOMMUNICATIONS

Country or region before: China