CN112073479A - 一种基于区块链的去中心数据访问控制方法及系统 - Google Patents
一种基于区块链的去中心数据访问控制方法及系统 Download PDFInfo
- Publication number
- CN112073479A CN112073479A CN202010869076.3A CN202010869076A CN112073479A CN 112073479 A CN112073479 A CN 112073479A CN 202010869076 A CN202010869076 A CN 202010869076A CN 112073479 A CN112073479 A CN 112073479A
- Authority
- CN
- China
- Prior art keywords
- attribute
- data
- user
- private key
- node
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000012795 verification Methods 0.000 claims description 27
- 230000007246 mechanism Effects 0.000 claims description 19
- 230000008569 process Effects 0.000 claims description 17
- 230000015572 biosynthetic process Effects 0.000 claims description 7
- 238000003786 synthesis reaction Methods 0.000 claims description 7
- 230000003993 interaction Effects 0.000 claims description 4
- 230000002194 synthesizing effect Effects 0.000 claims description 3
- 230000008520 organization Effects 0.000 description 17
- 239000011159 matrix material Substances 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 239000003643 water by type Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
Images
Classifications
-
- 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
- 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
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- 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
- 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/3263—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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- 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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本发明属于区块链技术领域,具有涉及一种基于区块链的去中心数据访问控制方法,包括:构建联盟区块链平台,确定平台的节点;将各个节点分为普通的用户节点和属性权威节点;数据拥有者在其构建的数据访问策略下加密数据上传到云存储服务器;数据用户根据身份标识和具有的属性向属性权威节点请求属性私钥;属性权威节点为合法用户颁发可验证属性证书,并颁发对应的属性私钥;数据用户向云存储服务器提交属性证书并发送访问密文请求;云存储服务器验证数据用户的属性证书是否被撤销并返回密文数据;用户得到密文,并用属性私钥解密密文得到明文。本发明为数据共享提供了一种去中心化的数据访问控制方法,具有好的场景拓展和灵活的数据共享实现。
Description
技术领域
本发明属于云存储、数据共享、访问控制和区块链领域,特别涉及一种基于区块链的去中心数据访问控制方法及系统。
背景技术
密文策略的属性密码(ciphetext-policy attribute based encryption,简称CP-ABE)能在不可信的云存储环境下实现数据的安全存储与共享,密文策略的属性密码技术是指将密文和访问策略相关联,在访问策略中指定允许访问的属性,只要用户的属性满足密文中的访问策略就可以解密。密文策略的属性密码技术可以实现细粒度的访问控制,满足一方加密多方解密。最初的CP-ABE方案是由单个权威为所有用户分发密钥,存在单个权威中心腐败问题。
为了解决这个问题,多属性权威的非中心化CP-ABE被提出(Lewko A,WatersB.Decentralizing Attribute-Based Encryption[C]//Advances in Cryptology-eurocrypt-international Conference on the Theory&Applications ofCryptographic Techniques.2011.),但是系统中的每一个属性权威都要参与密钥分发,某一个权威失效会使整个系统失效。同时,如果有节点加入或者退出需要重新启动系统,针对此问题,去中心的多属性权威的DABE被提出(Lewko A,Waters B.Decentralizingattribute-based encryption[C]//Annual international conference on the theoryand applications of cryptographic techniques.Springer,Berlin,Heidelberg,2011:568-588.),该方案中任意能够创建属性公钥和颁发属性私钥的节点都可以成为属性权威,且在该方案中,任意节点的加入和离开不会影响系统的正常运行。这个方案较好的解决了单属性权威失效影响系统的问题,当有节点加入或者退出时不会影响系统,同时该方案的去中心化特性十分吻合区块链的特点。
上述CP-ABE方案中,需要共同协商系统参数,任意节点只有拥有该系统参数就可以通过创建属性公钥,颁发属性私钥成为属性权威节点,而且系统维护性和可控性较差,同时属性私钥需要通过安全信道分发,使得系统的正常运行具有局限性。
发明内容
为解决以上现有技术问题,本发明提出了一种基于区块链的去中心数据访问控制方法,包括配置联盟区块链系统以及用户访问区块链系统的加密数据,所述用户访问区块链系统的加密数据的过程包括:
S1:数据用户向联盟区块链系统的云存储服务器提交第一次请求信息,所述第一次请求信息包括可验证身份标识和密文数据访问请求;
S2:云存储服务器接到第一次请求信息后,向数据用户返回所需的属性;数据用户向属性权威节点发送所需的属性和对应的属性私钥请求;
S3:属性权威节点接收所需的属性和对应的属性私钥请求后验证请求是否有效,若有效,则为数据用户颁发属证书和对应的属性私钥,否则请求无效;
S4:数据用户向云存储服务器提交第二次请求信息,所述第二次请求信息包括可验证身份标识、属性证书和密文数据访问请求;云存储服务器接收到第二次请求信息后,验证数据用户发送的第二次请求信息是否有效,若第二次请求信息有效,则返回数据用户申请访问的数据密文,否则拒绝该用户的请求;
S5:数据用户得到密文数据,利用属性私钥解密密文;若数据数据用户中的属性集满足数据密文的访问策略,则正确解密密文,得到明文;否则得不到正确明文,数据访问无效。
优选的,配置联盟区块链系统的过程包括:
步骤1:将参与数据访问的所有用户注册成为联盟区块链上的节点;对联盟区块链的各个节点配置区块链公钥、私钥、可验证身份标识以及对应的身份标识文档;
步骤2:将各个节点分为普通用户节点和属性权威节点;属性权威节点发布各自管理的属性集;属性权威节点协商属性密码系统参数,根据系统参数发布各属性权威管理的每个属性对应的属性公钥;
步骤3:数据拥有者选取属性集中的属性构建属性子集,通过属性子集构建数据访问策略;对待访问的数据使用属性公钥进行加密处理;将加密后的密文传到云存储服务器。
进一步的,获取可验证身份标识包括:各个节点根据区块链公钥编码生成字符串;采用节点区块链私钥对该字符串签名,生成可验证的身份标识。
进一步的,属性权威节点发布各自管理的属性集的过程包括:
步骤1:属性权威节点确定自己管理的属性集,属性权威节点使用自己身份标识对应的区块链私钥签名属性集;
步骤2:将单个属性权威节点的属性集存放在该属性权威对应的身份标识文档中;
步骤3:将所有属性权威节点的属性集公布在区块链上;
步骤4:每个属性权威节点将各自管理的每一个属性对应的属性公钥发布在区块链上或者发布在区块链下。
进一步的,对待访问的数据进行加密处理包括:采用密文策略的属性密码机制加密算法对数据进行加密;加密方式包括:采用属性加密算法加密对称密钥,再使用对称密钥加密密文。
优选的,属性权威节点为数据用户颁发属性私钥包括:
步骤1:属性权威节点根据属性密码系统参数对各自管理的属性进行属性密码初始化,生成各自属性的主私钥;
步骤2:数据用户向属性权威节点提交拥有的属性、属性私钥请求、身份标识、使用的签名算法类型以及哈希算法的类型;
步骤3:属性权威节点根据用户提交的身份标识找到该用户的身份标识文档;属性权威节点根据用户提交的签名算法类型采用相同的签名算法验证文档的签名;采用哈希算法类型一致的哈希算法验证身份标识对应的文档哈希值,同时确定该哈希值与区块链上的哈希值是否一致;
步骤4:若验证失败,则请求失败;若验证成功,属性权威节点使用属性主私钥为用户生成属性私钥,将该用户的可验证身份标识作为全局唯一标识符;将该标识符作为用户属性私钥的生成组件,根据可验证身份标识得到数据用户的区块链公钥,采用该公钥加密属性私钥;将加密后的属性私钥写入属性证书中;属性权威节点采用自己的区块链私钥对属性证书进行签名,将签名后的属性证书通过安全通道发送给请求的用户。
进一步的,属性证书的内容包括:数据用户的可验证身份标识,属性权威的可验证身份标识,属性权威的可验证身份标识对应的公钥,加密颁发的属性私钥、属性证书的编号,属性证书的颁发时间,属性证书的到期时间,属性权威的可验证身份标识对应的私钥对前面内容哈希的签名,签名算法类型,哈希算法的类型。
优选的,云存储服务器验证第二次请求信息是否有效包括:云存储服务器检查请求用户的属性是否被撤销,若属性被撤销,拒绝该用户请求,若属性没有被撤销,则验证该用户的属性证书是否正确;若证书错误,拒绝该用户访问,若证书正确,则返回该用户申请的数据密文。
优选的,用户属性撤销的过程包括:
步骤1:针对恶意用户,属性权威节点对该用户发布属性撤销声明,撤销声明包括已经颁发的属性证书编号、该用户的身份标识以及撤销声明的时间;
步骤2:采用属性权威节点可验证身份标识对应的区块链私钥对该撤销声明进行签名,将签名后的撤销声明上传至所有节点共同维护的属性撤销列表中;
步骤3:重新检测属性权威节点,当检测到属性权威节点将要离开联盟区块链时,待离开的属性权威节点将自己将要离开的消息和已颁发的属性密钥失效的消息通知全网络的其他节点;联盟区块链自动更新属性集,使属性集中所有属性都有对应的属性公钥;
步骤4:云存储服务器接收到该属性权威节点离开的消息,删除该属性权威节点对应的属性加密密文,通知数据拥有者重新选取公钥和访问策略加密的密文。
一种基于区块链的去中心数据访问控制系统,所述数据访问控制系统控制所有参与数据访问的用户之间的信息交互,所述系统包括:用户初始化配置模块、密钥请求模块、密钥生成模块、密钥分发模块、数据加密模块、数据访问模块;
所述用户初始化配置模块包括可验证身份标识初始化模块、属性发布初始化模块以及密码系统初始化模块;
所述可验证身份标识初始化模块用于配置数据访问控制系统中所有节点包括属性权威节点、数据拥有者、数据用户以及云存储服务器的身份标识;将各自的身份标识对应的文档写入系统中所有节点共同维护的分布式数据库中;将文档的哈希值写入区块链;
所述属性发布初始化模块用于发布属性权威节点管理的属性集;将得到认可的属性集发布在区块链平台上,同时属性权威节点将属性证书颁发给合法数据用户;
所述密码系统初始化模块用于生成全局系统参数,在属性加密的各个阶段中为属性密码机制提供密文策略;
所述密钥请求模块为数据用户根据属性权威节点公布的属性公钥,对应的属性权威节点申请属性私钥;
所述密钥生成模块包括:户私钥请求单元、私钥请求验证单元和用户私钥合成单元;
所述用户私钥请求单元用于数据用户构建私钥生成请求;
所述私钥请求验证单元用于属性权威节点验证用户的私钥请求;
所述用户私钥合成单元用于数据用户综合属性权威节点返回的属性私钥份额以生成完整的属性私钥;
所述密钥分发模块用于颁发属性权威节点的属性私钥,属性权威节点采用数据申请者身份标识对应公钥对属性私钥进行加密,并将加密后的属性私钥写入属性证书;
所述数据加密模块用于数据拥有者利用密文策略的属性密码机制加密数据;
所述数据访问模块包括:数据访问请求单元、数据访问验证单元以及数据解密单元;
所述数据访问请求单元为数据用户利用自己属性证书并提交密文访问请求;
所述据访问验证单元用于验证数据用户中的属性证书是否被撤销,若被撤销,则用户访问无效;若验证通过,用户访问有效;
所述数据解密单元用于数据用户利用属性证书里面加密的属性私钥请求到的密文数据。
本发明方有益效果:
1、本发明将所有的节点注册到区块链平台,所有能够发布自己管理属性集的节点都可以成为属性权威节点,也可以不发布属性集从而成为普通节点,任意节点的加入和退出不会影响系统的正常运行,任意节点都可以为其他节点颁发对应的属性私钥。
2、本发明实现了无中心的共享数据的细粒度访问控制系统,可验证的身份标识,实现了所有节点的身份的自我管理,而不依赖第三方身份提供商;
3、本发明实现了属性密码机制的全局唯一标识的生成,而不依赖属性权威,实现了密文策略的属性密码机制的属性私钥的分发。
4、本发明为无中心的多属性权威的属性密码系统的正常运行搭建了良好的生态环境,将属性密码系统与区块链技术融合,使得无中心多属性权威的属性密码系统得以良好应用。
附图说明
图1为本发明的整体流程图;
图2为本发明的系统框架结构图;
图3为本发明的数据用户申请属性私钥和权威节点向数据用户颁发属性私钥的一种实施方式;
图4为本发明中属性权威节点属性撤销的一种实施方式;
图5为本发明中数据用户获得密文数据的一种实施方式。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的整体思路在于,选取联盟链作为系统的区块链平台,利用联盟链准入机制,确保数据交互的安全性,利用基于区块链的自我主权身份技术,完成属性密码机制的属性私钥分发,实现用户身份的自主管理。将区块链技术和属性密码技术结合最终实现共享数据的细粒度访问控制。
一种基于区块链的去中心数据访问控制方法,如图1所示,配置联盟区块链系统以及用户访问区块链系统的加密数据。系统在进行数据访问过程中,只配置一次联盟区块链系统,后续用户进行多次数据访问过程中不再进行联盟区块链系统的配置。
一种配置联盟区块链系统的具体实施方式包括:将参与数据访问的所有利益相关方注册成为联盟区块链平台的节点;对联盟区块链的各个节点配置可验证身份标识和可验证属性证明,向其他节点发送可验证属性证明、可验证属性撤销;发布属性集的节点执行无中心的多属性权威密文策略的属性密码机制,生成并发布系统公共参数以及系统身份属性公钥;数据拥有者选择系统身份属性构建数据访问策略,并根据系统公共参数和系统身份属性公钥以及属性密码机制加密数据,将密文上传到云存储服务器。
一种配置联盟区块链的优选实施方式包括:
步骤1:将参与数据访问的所有用户注册成为联盟区块链上的节点;对联盟区块链的各个节点配置区块链公钥、私钥、可验证身份标识以及对应的身份标识文档;
步骤2:将各个节点分为普通用户节点和属性权威节点;属性权威节点发布各自管理的属性集;属性权威节点协商属性密码系统参数,根据系统参数发布各属性权威管理的每个属性对应的属性公钥;
步骤3:数据拥有者选取属性集中的属性构建属性子集,通过属性子集构建数据访问策略;将待访问的数据使用属性公钥进行加密处理;将加密后的密文传到云存储服务器。
一种配置联盟区块链系统的最优实施方式包括:
步骤1、搭建联盟区块链平台,确定网络拓扑结构,确定联盟链的节点。
作为一种实现方式,区块链平台选取的是联盟链,联盟链的初始文件由联盟构建方协商决定,所述初始文件包括创世块文件和通道配置文件;所有节点的创世块文件和通道配置文件一致;当有新的节点加入联盟链时,新加入的节点通过安全信道对初始文件进行同步更新。
作为一种可实现的方式,联盟链可以选择模块化的分布式账本解决方案支撑平台Hyperledeger Fabric。
搭建联盟区块链平台的步骤为:
步骤101、初始化组织底层网络架构,确定加入当前联盟链的组织机构;
步骤102、为每个组织机构确定名字和域名,并配置各自管理的节点数量;
步骤103、为联盟链的组织生成公私钥和证书;
步骤104、联盟链的组织生成创世块和通道配置文件;
步骤105、初始化联盟链网络环境;
步骤106、创建通道;
步骤107、将组织结构下的节点加入通道,使得所有节点可以共享该联盟链下的区块链账本;
步骤108、为各个节点安装链码;
步骤109、调用链码查看区块链账本信息。
联盟链搭建好之后,不允许未经授权的节点加入,当后续有组织机构加入联盟区块链,需要该联盟链的所有组织一致同意才可以加入。新组织加入的步骤为:
步骤111、生成新组织的证书和新组织的配置信息,如读写权限,当前版本等;
步骤112、新组织获取要加入通道的配置信息,根据新组织的配置信息和拉取的通道配置信息,最终生成更新通道配置的策略;
步骤113、根据通道配置更新策略,让在联盟里面的组织节点对策略进行签名,然后将签名的更新配置策略发送到排序节点,并打包上链;
步骤114、新组织利用新的通道配置文件和创世块文件加入通道。
步骤2、将参与数据访问的所有用户注册成为联盟区块链上的节点;对联盟区块链的各个节点配置区块链公钥、私钥、可验证身份标识以及对应的身份标识文档;
联盟区块链的节点包括数据用户、数据拥有者、组织机构、云存储服务器等。
作为一种实现方式,所有的参与方注册成为区块链平台的节点,这当中的参与方包括数据申请者、数据拥有者、属性权威和云存储服务器,任意节点可以通过发布属性集成为属性权威节点,也可以不发布属性集从而成为普通节点;此时,用户配置可验证身份标识,包括一个身份标识符ID及其一个身份标识文档FID,该文档存储在所有节点共同维护的分布式数据库中,文档的哈希存储在区块链中。
具体的,该身份标识文档FID具体包括全局唯一识别的身份标识、该用户的区块链公钥、证明意图、服务端点、属性权威节点管理的属性集、签名算法的类型、哈希算法的类型以及该身份标识使用自身的区块链私钥对文档的哈希值所做的签名。
作为一种可实现方式,哈希值的计算可以选择任意的哈希函数,签名可以是任意的签名算法,但需要在身份标识文档指明签名算法和哈希算法的类型,以便验证。
作为一种优选实施方式,哈希函数采用几种常见的哈希函数(散列函数)中任意一种或多种,其构造方法可采用直接定址法、除留余数法、随机数法以及数字分析法。
作为一种优选实施方式,签名算法采用信息摘要算法Message-Digest Algorithm5(MD5)或者安全哈希算法SHA1算法。
所有节点配置自己的可验证的身份标识的步骤为:
步骤201、根据节点的区块链公钥编码生成字符串,使用节点的区块链私钥对该字符串签名,生成可验证的身份标识;每个身份标识对应一个身份标识文档;
步骤202、节点将身份标识文档写入所有节点共同维护的分布式数据库,然后将身份标识作为键,身份标识文档的哈希作为值写入区块链。
其中,身份标识文档本身不包括身份标识所有者的隐私信息,身份标识文档包括全局唯一的身份标识、身份标识的区块链公钥、证明意图、服务端点、成为属性权威节点管理的属性集和对身份标识文档的签名。节点每更新一次身份标识文档都要将步骤202执行一遍。
步骤3、将各个节点分为普通用户节点和属性权威节点;属性权威节点发布各自管理的属性集;属性权威节点将属性证书和各自管理的属性集中属性所对应的属性公钥颁发给合法的数据用户;属性权威节点协商属性密码系统参数。
所述属性密码系统参数包括属性密码的安全参数和根据安全参数生成的全局参数GP。
作为一种实现方式,步骤S3中的属性集存放在该节点的身份标识对应的身份标识文档,该身份标识文档在所有联盟链节点都可以访问的分布式数据库,将文档的哈希存放在区块链上,通过发布属性集成为属性权威的节点管理发布的属性集,并使用自己的区块链私钥签名这些属性集。
步骤3中协商的属性密码系统方案是无中心的多属性权威的基于密文策略的属性加密CP-ABE方案,任意节点加入联盟链都可以通过发布属性集成为属性权威节点,成为属性权威的节点只需要根据属性密码系统参数,就可以独立创建属性公钥,颁发属性私钥。特别的,只有联盟链中的节点才可以共享并使用系统参数。
属性权威发布自己管理的属性集的步骤为:
步骤301、属性权威节点发布自己管理的属性集,并用自己的身份标识对应的区块链私钥签名属性集;
步骤302、每一个属性权威管理的属性集的格式为{组织机构名.属性名}。组织机构名为属性权威对应的属性前缀,属性前缀名字为步骤S102中组织机构的名字,属性名为其管理的具体属性;
步骤303、单个属性权威的属性集存放在属性权威对应的身份标识文档;
步骤304、所有属性权威的属性集公布在区块链上,以便于数据拥有者选取什么样的属性进行加密。
同时,所有成为属性权威的节点协商密文策略的属性密码系统参数,该参数不会影响系统的重新启动,每个属性权威发布各自管理的每一个属性对应的属性公钥,该公钥可以链上或者链下发布。
步骤4、数据拥有者从所有属性权威公布的属性集中选取适当的属性子集构建数据访问策略,并用步骤3公布的属性密码系统参数和访问策略中属性公钥,执行密文策略的属性密码机制的加密算法在该访问策略下加密数据,将密文上传至云存储服务器。
所述适当的属性子集包括:属性权威对这些管理各自的属性集,所有权威的属性构成属性集,属性子集是从这些属性集中选取,同过选取的属性子集构建访问策略。
在这个过程中,作为一种可选方式,利用多属性权威的密文策略的属性密码机制加密数据加密密钥,利用数据加密密钥和对称密码算法加密数据,然后分别上传密钥密文和数据密文到云存储服务器。
数据拥有者加密数据的步骤为:
步骤401、数据拥有者查看联盟链里所有属性权威管理的属性集并从中选取适当的属性子集构建数据访问策略;
数据访问策略包括:数据拥有者根据属性子集确定可访问加密数据的用户;数据拥有者对可访问加密数据的用户进行筛选,得到可对加密数据的密文进行解密的用户。
例如属性集有{one,two,three,four,five,six},数据拥有者选取的属性子集={one,three,six},数据拥有者可以构建访问策略为{(one and three)or six}}就是说,只有拥有属性one和属性three对应的属性私钥或者只有属性six对应的属性私钥的用户才可以解密。
步骤402、数据拥有者根据步骤3公布的属性公钥、属性密码机制的加密算法以及访问策略对待访问的数据进行加密处理。
优选的,加密方式包括:采用属性加密算法加密对称密钥,再使用对称密钥加密密文。所述对称密钥为对称加密使用的密钥,如高级加密标准AES、数据加密算法DES等。采用该加密方式可以增强加密效果,提升数据的安全性,并且保证了加密的效率。
步骤403、数据拥有者将加密后的密文数据上传至云存储服务器。
如图1所示,用户访问区块链系统的加密数据的过程包括:
S1:数据用户向联盟区块链系统的云存储服务器提交第一次请求信息,所述第一次请求信息包括可验证身份标识和密文数据访问请求;
S2:云存储服务器接到第一次请求信息后,向数据用户返回所需的属性;数据用户向属性权威节点发送所需的属性和对应的属性私钥请求;
S3:属性权威节点接收所需的属性和对应的属性私钥请求后验证请求是否有效,若有效,则为数据用户颁发属证书和对应的属性私钥,否则请求无效;
S4:数据用户向云存储服务器提交第二次请求信息,所述第二次请求信息包括可验证身份标识、属性证书和密文数据访问请求;云存储服务器接收到第二次请求信息后,验证数据用户发送的第二次请求信息是否有效,若第二次请求信息有效,则返回数据用户申请访问的数据密文,否则拒绝该用户的请求;
S5:数据用户得到密文数据,利用属性私钥解密密文;若数据数据用户中的属性集满足数据密文的访问策略,则正确解密密文,得到明文;否则得不到正确明文,数据访问无效。
数据用户分别向属性权威请求颁发该用户所拥有属性的对应属性私钥过程中,针对每一个属性,属性权威为合法用户颁发可验证属性证书,并颁发对应的属性私钥,通过安全信道发送给申请的用户。当某个用户的某个属性被撤销时,管理该属性的属性权威发布可验证属性撤销声明。
上述过程至少包括以下阶段:
第一阶段:数据用户申请属性私钥;
第二阶段:属性权威为用户颁发属性证书,并分发对应的属性私钥;
第三阶段:属性权威撤销数据用户的属性私钥权限;
作为一种实现方式,如图3所示,数据用户申请属性私钥和属性权威向数据用户颁发属性私钥的步骤:
S301、根据联盟区块链系统协商的公共参数,各个属性权威为其管理的属性执行属性密码初始化算法,生成各自的属性主私钥;
S302、用户提交自己的拥有的属性、属性私钥请求、身份标识、使用的签名算法类型和哈希算法的类型;
S303、属性权威根据用户提交的身份标识找到对应的身份标识文档,再用用户提交的签名算法类型和哈希算法类型执行对应签名算法验证文档的签名,采用哈希算法类型一致的哈希算法验证身份标识对应的文档哈希值,同时确定该哈希值与区块链上的哈希值是否一致;
S304、若验证失败,则请求失败;若验证通过,将用户的可验证身份标识作为全局唯一标识符(GID),并将该GID作为用户属性私钥的生成组件,再根据可验证身份标识得到用户的区块链公钥,使用该公钥加密属性私钥,将加密后的属性私钥写入属性证书,属性权威节点采用自己的区块链私钥对属性证书进行签名,将签名后的属性证书通过安全通道发送给请求的用户。
其中,属性证书内容包括:数据用户的可验证身份标识(UserVerID),属性权威的可验证身份标识(AttrOrgID),属性权威的可验证身份标识对应的公钥(AttrOrgPK),加密颁发的属性私钥(EncAttrSK)、属性证书的编号(Number),属性证书的颁发时间(IssueTime),属性证书的到期时间(Expira Time),属性权威的可验证身份标识对应的私钥对前面内容哈希的签名(Sign),签名算法类型(SignType),哈希算法的类型(HashType)。其中,Sign=SignAttrOrgPK(Hash(UserVerID||AttrOrgID||AttrOrgPK||EncAttrSK||Number||Issu eTime||ExpiraTime||SignType||HashType),表示使用属性权威的公钥对文档的内容的哈希签名,其中Sign表示签名算法,Hash表示哈希算法。
属性权威颁发的属性私钥失效的原因主要有两点:
1、属性权威节点离开联盟;
2、恶意用户的存在;
作为一种实现方式,如图4所示,对于离开的属性权威节点,其颁发的属性密钥不应该再有效,对于系统恶意用户,应该撤销他对数据的访问权限,本发明中,节点的任意加入或者退出不会影响系统的正常运行;即云存储服务器验证第二次请求信息是否有效包括:云存储服务器检查请求用户的属性是否被撤销,若属性被撤销,拒绝该用户请求,若属性没有被撤销,则验证该用户的属性证书是否正确;若证书错误,拒绝该用户访问,若证书正确,则返回该用户申请的数据密文;用户属性撤销的过程包括:
步骤1、针对恶意用户,属性权威发布对其的属性撤销声明,撤销声明包括已经颁发的属性证书编号,用户的身份标识,撤销声明的时间;
步骤2、该撤销声明使用属性权威的可验证的身份标识对应的区块链私钥签名,将撤销声明上传至所有节点共同维护的属性撤销列表中;
步骤3、对于离开的属性权威节点,首先更新联盟链里的属性集,确保所有属性都能有对应的属性密钥。再全网通知该节点退出,告知其他节点,该节点之前颁发的属性密钥失效;
步骤4、云存储节点同步跟新接收到该节点退出的消息,删除有该节点对应属性加密的密文,并告知数据拥有者重新选取公钥和访问策略加密密文。
云存储服务器验证用户第二次发送的请求信息包括:云存储服务器检查用户的属性是否被撤销,如果属性被撤销,则拒绝用户请求;如果没有撤销,则验证属性证书是否正确,若验证通过则返回用户申请的数据密文,反之,则拒绝。
作为一种可实现的方式,如图5所示,数据用户获得密文数据的步骤为:
步骤S1、数据用户向向云存储服务器提交自己的可验证的身份标识和密文数据访问请求;
步骤S2、云存储服务器返回访问该密文需要的属性;
步骤S3、数据用户向属性权威节点提交自己的可验证的身份标识、步骤S2要求的属性和属性私钥请求;
步骤S4、属性权威节点按照步骤S303验证,验证通过,为数据用户颁发属性证书和对应的属性私钥;
步骤S5、数据用户向云存储服务器提交自己的属性证书和密文数据访问请求;
步骤S6、云存储服务器先验证该属性证书是否被撤销,如果被撤销,拒绝数据用户的密文数据访问请求,反之,进入一步;
步骤S7、使用数据用户属性证书里面的属性权威节点的身份标识对应的公钥、签名算法类型、哈希算法类型,执行对应的签名算法、哈希算法验证属性证书是否正确;如果不正确,拒绝密文访问请求;反之,响应密文请求。
根据S5可知数据用户对得到的密文进行解密,解密的过程包括:数据用户的属性私钥是以加密的形式嵌入在属性证书里面,数据用户利用自己的区块链私钥解密属性证书里面被加密的属性私钥,利用该属性私钥解密得到数据明文。
密码系统公共参数一般包括安全参数λ、根据安全参数生成的全局参数GP、选择的素数p、双线性群G、群上的双线性映射e、群的生成元g、哈希函数H等。
在一个实施例中,通过发布属性集成为属性权威的节点针对其管理的每一个属性,该节点选取两个随机数αi,yi∈ZN,计算并发布自己的属性公钥将SK={αi,yi∈ZN}作为自己的属性主私钥;其中,PK表示属性主公钥,表示双线性操作,g1表示群G的生成元,αi表示属于ZN的随机数,yi表示ZN的随机数,ZN表示元素个数为N的有限域的集合,SK表示属性主私钥。
在一个实施例中,属性权威为数据用户颁发的属性私钥是根据用户提交的身份标识(VerID)作为属性私钥生成组件,属性权威节点根据自己属性主私钥SK、对应管理的每一个属性i、系统参数(GP)和用户提交的VerID为数据用户颁发属性私钥:其中,Ki,VerID表示用户的属性私钥,表示g的αi次幂,g表示群的生成元,表示将身份标识哈希到群G,然后执行幂运算。
在一个实施例中,数据拥有者选取权威节点的属性公钥PK、全局参数GP和访问策略加密数据,并将加密后密文数据上传至云存储服务器,其中,访问策略嵌入在访问矩阵(A,ρ),A表示大小为n×l的矩阵,l表示访问矩阵的总列数,n表示访问矩阵的总行数,ρ是将每一个属性映射到矩阵的行,首先选取随机数s∈ZN和随机向量其中s是向量v的第一元素,使得λx=Ax·v,Ax表示矩阵A的第x行;再选取一个随机向量使得0是向量的第一个元素,计算ωx=Ax·ω,针对矩阵A的每一行选取随机数rx∈ZN,其中,ZN表示个数为N的有限域的集合,表示属于ZN的向量的长度为l。
计算密文:
C0=Me(g1,g1)s
其中,C0表示第一部分密文,Me(.)s表示将消息M绑定到双线性运算,S表示属性,g1表示群G的生成元,C1,x表示第二部分密文,x表示访问矩阵的行,表示对两个群G的生成元进行双线性操作,λx表示矩阵第x行向量和向量v的乘积,表示对两个群G的生成元进行双线性操作,αρ(x)表示对矩阵的每一行选取随机值,ρ(x)表示矩阵对应的行,rx表示对矩阵的每一行选取的随机值,C2,x表示第三部分密文,C3,x表示第四部分密文,表示进行密文加密的结果,ωx表示对访问矩阵的行进行加密处理后的值。
在一个实施例中,数据用户根据自己身份标识和属性证书向云存储服务器请求数据,云存储服务器验证通过,将密文数据发送给数据用户,数据用用户解密密文的步骤为首先计算H(VerID),当数据用户有属性私钥时,即:
数据用户根据属性私钥计算:
然后数据用户选择常数cx∈ZN,使得cxAx=(1,0,...,0)
根据cx和cxAx=(1,0,...,0)计算:
从而得到密文数据:M=C0/e(g,g)s。
可以理解的是,本实施例主要是对本发明中属性主公钥或主私钥生成、属性私钥颁发、数据加密、数据解密据进行重点描述,为了节省篇幅,其余过程可参考上述实施例。
一种基于区块链的去中心数据访问控制系统,所述数据访问控制系统控制所有参与数据访问的用户之间的信息交互,所述系统包括:用户初始化配置模块、密钥请求模块、密钥生成模块、密钥分发模块、数据加密模块、数据访问模块;
所述用户初始化配置模块包括可验证身份标识初始化模块、属性发布初始化模块以及密码系统初始化模块;
所述可验证身份标识初始化模块用于配置数据访问控制系统中所有节点包括属性权威节点、数据拥有者、数据用户以及云存储服务器的身份标识;将各自的身份标识对应的文档写入系统中所有节点共同维护的分布式数据库中;将文档的哈希值写入区块链;
所述属性发布初始化模块用于发布属性权威节点管理的属性集;将得到认可的属性集发布在区块链平台上,同时属性权威节点将属性证书颁发给合法数据用户;
所述密码系统初始化模块用于生成全局系统参数,在属性加密的各个阶段中为属性密码机制提供密文策略;
所述密钥请求模块为数据用户根据属性权威节点公布的属性公钥,对应的属性权威节点申请属性私钥;
所述密钥生成模块包括:户私钥请求单元、私钥请求验证单元和用户私钥合成单元;
所述用户私钥请求单元用于数据用户构建私钥生成请求;
所述私钥请求验证单元用于属性权威节点验证用户的私钥请求;
所述用户私钥合成单元用于数据用户综合属性权威节点返回的属性私钥份额以生成完整的属性私钥;
所述密钥分发模块用于颁发属性权威节点的属性私钥,属性权威节点采用数据申请者身份标识对应公钥对属性私钥进行加密,并将加密后的属性私钥写入属性证书;
所述数据加密模块用于数据拥有者利用密文策略的属性密码机制加密数据;
所述数据访问模块包括:数据访问请求单元、数据访问验证单元以及数据解密单元;
所述数据访问请求单元为数据用户利用自己属性证书并提交密文访问请求;
所述据访问验证单元用于验证数据用户中的属性证书是否被撤销,若被撤销,则用户访问无效;若验证通过,用户访问有效;
所述数据解密单元用于数据用户利用属性证书里面加密的属性私钥请求到的密文数据。
密码系统初始化模块的各个阶段具体包括:
全局初始化(λ→GP):根据安全参数λ为该系统生成全局参数GP。
属性权威初始化(GP→SK,PK):根据全局参数GP生成属性主公钥PK和属性主私钥SK。
加密((M,(A,ρ),GP,{PK})→CT):根据属性公钥PK,访问策略和全局参数GP加密消息M生成密文CT。
密钥生成((GID,GP,i,SK)→Ki,GID):属性权威根据全局身份标识GID,全局参数GP,属性i,属性主私钥SK为用户生成属性私钥Ki,GID。
解密((CT,GP,{Ki,GID})→M):根据密文CT,全局参数GP,属性私钥Ki,GID解密得到消息M。
作为一种实现方式,如图2所示,数据访问控制系统中的节点即所有参与者均通过初始化配置模块注册成为区块链平台的节点并配置可验证的身份标识和身份标识文档;
进一步的,在数据访问控制系统中,节点通过初始化配置模块发布自己管理的属性集,本发明中的任意节点都可以通过发布属性集从而成为属性权威,也可以不发布属性集从而作为普通节点。所有属性权威协商属性密码系统参数并发布自己的属性集,发布各自管理的每一个属性对应的属性公钥。
进一步的,在数据访问控制系统中,所有属性权威节点根据初始化配置模块协商属性密码的公共系统参数并执行相应的初始化算法。
可以理解的是,该系统中的用户可能是数据用户也可能是数据拥有者也可以是区块链平台中的其他运行节点;数据用户和数据拥有者主要是为了区分用户在申请访问数据整个过程中作为数据的请求者对象或作为数据的提供者对象,并不是对其本身进行限定,也即是数据用户和数据拥有者是可逆的。
一方面,数据拥有者通过数据加密模块构建数据访问策略并对其数据进行加密,利用属性密码机制加密数据加密密钥,利用数据加密密钥和对称密码算法加密数据,然后分别上传密钥密文和数据密文到云存储服务器。
另一方面,数据用户通过密钥请求模块向属性权威节点申请属性私钥;属性权威节点通过私钥请求验证单元进行验证,验证通过,则通过密钥分发模块为数据用户颁发属性证书,并分发对应的属性私钥,将该属性私钥用数据用户的区块链公钥加密,将加密后的密钥嵌入属性证书,数据用户通过用户私钥合成单元对属性权威分发的属性私钥进行合成,从而形成完整的属性私钥。
数据用户通过数据访问模块向云存储服务器发起数据访问请求,云存储服务器验证通过后,返回请求的密文。
具体包括:数据用户通过数据访问请求单元向云存储服务器提交自己属性证书并提交密文访问请求;云存储服务器通过数据访问请求验证单元查找属性撤销列表以验证数据访问请求中的属性是否被撤销,验证属性证书的签名是否正确,若验证通过,则数据用户数据解密单单元解密得到属性私钥再利用属性私钥解密得到密文数据。
本发明的方法、系统部分实施例的特征可以相互引用,本发明为了节省篇幅,则不再一一列举。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
以上所举实施例,对本发明的目的、技术方案和优点进行了进一步的详细说明,所应理解的是,以上所举实施例仅为本发明的优选实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于区块链的去中心数据访问控制方法,包括配置联盟区块链系统以及用户访问区块链系统的加密数据,其特征在于,所述用户访问区块链系统的加密数据的过程包括:
S1:数据用户向联盟区块链系统的云存储服务器提交第一次请求信息,所述第一次请求信息包括可验证身份标识和密文数据访问请求;
S2:云存储服务器接到第一次请求信息后,向数据用户返回所需的属性;数据用户向属性权威节点发送所需的属性和对应的属性私钥请求;
S3:属性权威节点接收所需的属性和对应的属性私钥请求后验证请求是否有效,若有效,则为数据用户颁发属证书和对应的属性私钥,否则请求无效;
S4:数据用户向云存储服务器提交第二次请求信息,所述第二次请求信息包括可验证身份标识、属性证书和密文数据访问请求;云存储服务器接收到第二次请求信息后,验证数据用户发送的第二次请求信息是否有效,若第二次请求信息有效,则返回数据用户申请访问的数据密文,否则拒绝该用户的请求;
S5:数据用户得到密文数据,利用属性私钥解密密文;若数据数据用户中的属性集满足数据密文的访问策略,则正确解密密文,得到明文;否则得不到正确明文,数据访问无效。
2.根据权利要求1所述的一种基于区块链的去中心数据访问控制方法,其特征在于,配置联盟区块链系统的过程包括:
步骤1:将参与数据访问的所有用户注册成为联盟区块链上的节点;对联盟区块链的各个节点配置区块链公钥、私钥、可验证身份标识以及对应的身份标识文档;
步骤2:将各个节点分为普通用户节点和属性权威节点;属性权威节点发布各自管理的属性集;属性权威节点协商属性密码系统参数,根据系统参数发布各属性权威管理的每个属性对应的属性公钥;
步骤3:数据拥有者选取属性集中的属性构建属性子集,通过属性子集构建数据访问策略;对待访问的数据使用属性公钥进行加密处理;将加密后的密文传到云存储服务器。
3.根据权利要求2所述的一种基于区块链的去中心数据访问控制方法,其特征在于,获取可验证身份标识包括:各个节点根据区块链公钥编码生成字符串;采用节点区块链私钥对该字符串签名,生成可验证的身份标识。
4.根据权利要求2所述的一种基于区块链的去中心数据访问控制方法,其特征在于,属性权威节点发布各自管理的属性集的过程包括:
步骤1:属性权威节点确定自己管理的属性集,属性权威节点使用自己身份标识对应的区块链私钥签名属性集;
步骤2:将单个属性权威节点的属性集存放在该属性权威对应的身份标识文档中;
步骤3:将所有属性权威节点的属性集公布在区块链上;
步骤4:每个属性权威节点将各自管理的每一个属性对应的属性公钥发布在区块链上或者发布在区块链下。
5.根据权利要求2所述的一种基于区块链的去中心数据访问控制方法,其特征在于,对待访问的数据进行加密处理包括:采用密文策略的属性密码机制加密算法对数据进行加密;加密方式包括:采用属性加密算法加密对称密钥,再使用对称密钥加密密文。
6.根据权利要求1所述的一种基于区块链的去中心数据访问控制方法,其特征在于,属性权威节点为数据用户颁发属性私钥包括:
步骤1:属性权威节点根据属性密码系统参数对各自管理的属性进行属性密码初始化,生成各自属性的主私钥;
步骤2:数据用户向属性权威节点提交拥有的属性、属性私钥请求、身份标识、使用的签名算法类型以及哈希算法的类型;
步骤3:属性权威节点根据用户提交的身份标识找到该用户的身份标识文档;属性权威节点根据用户提交的签名算法类型采用相同的签名算法验证文档的签名;采用哈希算法类型一致的哈希算法验证身份标识对应的文档哈希值,同时确定该哈希值与区块链上的哈希值是否一致;
步骤4:若验证失败,则请求失败;若验证成功,属性权威节点使用属性主私钥为用户生成属性私钥,将该用户的可验证身份标识作为全局唯一标识符;将该标识符作为用户属性私钥的生成组件,根据可验证身份标识得到数据用户的区块链公钥,采用该公钥加密属性私钥;将加密后的属性私钥写入属性证书中;属性权威节点采用自己的区块链私钥对属性证书进行签名,将签名后的属性证书通过安全通道发送给请求的用户。
7.根据权利要求6所述的一种基于区块链的去中心数据访问控制方法,其特征在于,所述属性证书的内容包括:数据用户的可验证身份标识,属性权威的可验证身份标识,属性权威的可验证身份标识对应的公钥,加密颁发的属性私钥、属性证书的编号,属性证书的颁发时间,属性证书的到期时间,属性权威的可验证身份标识对应的私钥对前面内容哈希的签名,签名算法类型,哈希算法的类型。
8.根据权利要求1所述的一种基于区块链的去中心数据访问控制方法,其特征在于,云存储服务器验证第二次请求信息是否有效包括:云存储服务器检查请求用户的属性是否被撤销,若属性被撤销,拒绝该用户请求,若属性没有被撤销,则验证该用户的属性证书是否正确;若证书错误,拒绝该用户访问,若证书正确,则返回该用户申请的数据密文。
9.根据权利要求8所述的一种基于区块链的去中心数据访问控制方法,其特征在于,用户属性撤销的过程包括:
步骤1:针对恶意用户,属性权威节点对该用户发布属性撤销声明,撤销声明包括已经颁发的属性证书编号、该用户的身份标识以及撤销声明的时间;
步骤2:采用属性权威节点可验证身份标识对应的区块链私钥对该撤销声明进行签名,将签名后的撤销声明上传至所有节点共同维护的属性撤销列表中;
步骤3:重新检测属性权威节点,当检测到属性权威节点将要离开联盟区块链时,待离开的属性权威节点将自己将要离开的消息和已颁发的属性密钥失效的消息通知全网络的其他节点;联盟区块链自动更新属性集,使属性集中所有属性都有对应的属性公钥;
步骤4:云存储服务器接收到该属性权威节点离开的消息,删除该属性权威节点对应的属性加密密文,通知数据拥有者重新选取公钥和访问策略加密的密文。
10.一种基于区块链的去中心数据访问控制系统,所述数据访问控制系统控制所有参与数据访问的用户之间的信息交互,其特征在于,所述系统包括:用户初始化配置模块、密钥请求模块、密钥生成模块、密钥分发模块、数据加密模块、数据访问模块;
所述用户初始化配置模块包括可验证身份标识初始化模块、属性发布初始化模块以及密码系统初始化模块;
所述可验证身份标识初始化模块用于配置数据访问控制系统中所有节点包括属性权威节点、数据拥有者、数据用户以及云存储服务器的身份标识;将各自的身份标识对应的文档写入系统中所有节点共同维护的分布式数据库中;将文档的哈希值写入区块链;
所述属性发布初始化模块用于发布属性权威节点管理的属性集;将得到认可的属性集发布在区块链平台上,同时属性权威节点将属性证书颁发给合法数据用户;
所述密码系统初始化模块用于生成全局系统参数,在属性加密的各个阶段中为属性密码机制提供密文策略;
所述密钥请求模块为数据用户根据属性权威节点公布的属性公钥,对应的属性权威节点申请属性私钥;
所述密钥生成模块包括:户私钥请求单元、私钥请求验证单元和用户私钥合成单元;
所述用户私钥请求单元用于数据用户构建私钥生成请求;
所述私钥请求验证单元用于属性权威节点验证用户的私钥请求;
所述用户私钥合成单元用于数据用户综合属性权威节点返回的属性私钥份额以生成完整的属性私钥;
所述密钥分发模块用于颁发属性权威节点的属性私钥,属性权威节点采用数据申请者身份标识对应公钥对属性私钥进行加密,并将加密后的属性私钥写入属性证书;
所述数据加密模块用于数据拥有者利用密文策略的属性密码机制加密数据;
所述数据访问模块包括:数据访问请求单元、数据访问验证单元以及数据解密单元;
所述数据访问请求单元为数据用户利用自己属性证书并提交密文访问请求;
所述据访问验证单元用于验证数据用户中的属性证书是否被撤销,若被撤销,则用户访问无效;若验证通过,用户访问有效;
所述数据解密单元用于数据用户利用属性证书里面加密的属性私钥请求到的密文数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010869076.3A CN112073479A (zh) | 2020-08-26 | 2020-08-26 | 一种基于区块链的去中心数据访问控制方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010869076.3A CN112073479A (zh) | 2020-08-26 | 2020-08-26 | 一种基于区块链的去中心数据访问控制方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112073479A true CN112073479A (zh) | 2020-12-11 |
Family
ID=73659993
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010869076.3A Pending CN112073479A (zh) | 2020-08-26 | 2020-08-26 | 一种基于区块链的去中心数据访问控制方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112073479A (zh) |
Cited By (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112528250A (zh) * | 2020-12-17 | 2021-03-19 | 上海万向区块链股份公司 | 通过区块链实现数据隐私和数字身份的系统及方法 |
CN112613050A (zh) * | 2020-12-22 | 2021-04-06 | 北京八分量信息科技有限公司 | 基于大数据系统中数据访问方法、装置及相关产品 |
CN112637211A (zh) * | 2020-12-24 | 2021-04-09 | 国网河北省电力有限公司信息通信分公司 | 一种基于区块链的跨域访问的认证方法及系统 |
CN112632576A (zh) * | 2020-12-22 | 2021-04-09 | 北京八分量信息科技有限公司 | 大数据系统中保护隐私的数据访问方法、装置及相关产品 |
CN112734572A (zh) * | 2021-01-07 | 2021-04-30 | 华南农业大学 | 基于双区块链的细粒度访问控制方法及系统 |
CN112818379A (zh) * | 2021-01-11 | 2021-05-18 | 北京信息科技大学 | 一种基于区块链的航空重力数据安全访问控制方法及系统 |
CN112989385A (zh) * | 2021-03-26 | 2021-06-18 | 中国人民解放军国防科技大学 | 一种云际计算环境中数据安全动态访问控制方法及系统 |
CN113067704A (zh) * | 2021-03-29 | 2021-07-02 | 安徽慧可科技有限公司 | 一种基于区块链的数据确权方法、系统和设备 |
CN113127927A (zh) * | 2021-04-27 | 2021-07-16 | 泰山学院 | 一种许可链数据共享及监管的属性重构加密方法及系统 |
CN113193953A (zh) * | 2021-04-16 | 2021-07-30 | 南通大学 | 一种基于区块链的多权威属性基加密方法 |
CN113242219A (zh) * | 2021-04-26 | 2021-08-10 | 卓尔智联(武汉)研究院有限公司 | 数据传输方法、区块链网络及存储介质 |
CN113269645A (zh) * | 2021-05-28 | 2021-08-17 | 中邮信息科技(北京)有限公司 | 一种区块链的交易信息调度方法、装置、介质及电子设备 |
CN113553332A (zh) * | 2021-09-22 | 2021-10-26 | 深圳时空云科技有限公司 | 去中心化的数据存储访问方法与装置 |
CN113792332A (zh) * | 2021-08-31 | 2021-12-14 | 远光软件股份有限公司 | 一种数据访问控制的方法及相关装置 |
CN113992418A (zh) * | 2021-10-29 | 2022-01-28 | 南京联了么信息技术有限公司 | 一种基于区块链技术的IoT设备管理方法 |
CN114039790A (zh) * | 2021-11-23 | 2022-02-11 | 重庆邮电大学 | 一种基于区块链的细粒度云存储安全访问控制方法 |
CN114124392A (zh) * | 2021-11-01 | 2022-03-01 | 广州大学 | 支持访问控制的数据可控流通方法、系统、设备和介质 |
CN114139203A (zh) * | 2021-12-03 | 2022-03-04 | 成都信息工程大学 | 基于区块链的异构身份联盟风险评估系统、方法及终端 |
CN114338026A (zh) * | 2021-12-17 | 2022-04-12 | 复旦大学 | 基于属性签名与区块链的匿名信息反馈系统 |
CN114448639A (zh) * | 2021-12-15 | 2022-05-06 | 电子科技大学 | 具有唯一性和密钥安全的去中心化身份系统及实现方法 |
CN114629661A (zh) * | 2022-04-27 | 2022-06-14 | 中国科学技术大学 | 加密信息处理方法及装置 |
CN114679319A (zh) * | 2022-03-25 | 2022-06-28 | 南京邮电大学 | 基于区块链的分布式数据同步加密方法 |
WO2022134812A1 (zh) * | 2020-12-21 | 2022-06-30 | 深圳壹账通智能科技有限公司 | 基于联盟链的多机构数据处理方法、装置及相关设备 |
CN114697001A (zh) * | 2020-12-28 | 2022-07-01 | 山东浪潮质量链科技有限公司 | 一种基于区块链的信息加密传输方法、设备及介质 |
CN114826572A (zh) * | 2022-03-31 | 2022-07-29 | 西安电子科技大学 | 支持属性隐私保护的去中心化众包方法、系统及终端 |
CN114928447A (zh) * | 2022-02-10 | 2022-08-19 | 北京轻信科技有限公司 | 基于分布式身份的数据管理方法和系统 |
CN115001730A (zh) * | 2022-03-02 | 2022-09-02 | 上海交通大学 | 分布式场景下基于角色属性的访问控制系统及方法 |
CN115189974A (zh) * | 2022-09-13 | 2022-10-14 | 北京邮电大学 | 基于区块链的多组织访问控制方法及装置 |
CN115296838A (zh) * | 2022-06-24 | 2022-11-04 | 北京中科金财科技股份有限公司 | 基于区块链的数据共享方法、系统及存储介质 |
CN115622719A (zh) * | 2021-07-13 | 2023-01-17 | 中移物联网有限公司 | 一种物联网数据处理方法、装置及系统 |
CN116112244A (zh) * | 2023-01-13 | 2023-05-12 | 重庆邮电大学 | 一种基于区块链和属性基加密的访问控制方法 |
CN116629804A (zh) * | 2023-06-06 | 2023-08-22 | 河北华正信息工程有限公司 | 一种信访督查跟踪管理系统及管理方法 |
CN116756780A (zh) * | 2023-08-21 | 2023-09-15 | 北京邮电大学 | 基于cp-abe算法的联盟链数据访问控制方法及相关设备 |
CN116894730A (zh) * | 2023-06-08 | 2023-10-17 | 三峡大学 | 基于链上链下协同的多元分布式储能交易方法 |
CN116911809A (zh) * | 2023-08-25 | 2023-10-20 | 广东宏航供应链科技集团有限公司 | 基于区块链技术的供应链企业人力资源经营管理系统 |
CN117892354A (zh) * | 2024-03-11 | 2024-04-16 | 云账户技术(天津)有限公司 | 电子回单的管理方法、装置、电子设备及存储介质 |
CN118069661A (zh) * | 2024-04-24 | 2024-05-24 | 江西农业大学 | 一种面向可信云服务的确定性存储与删除方法及系统 |
CN118381663A (zh) * | 2024-06-21 | 2024-07-23 | 中国科学技术大学 | 一种基于区块链和did的高校联盟用户身份管理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109559124A (zh) * | 2018-12-17 | 2019-04-02 | 重庆大学 | 一种基于区块链的云数据安全共享方法 |
CN110493347A (zh) * | 2019-08-26 | 2019-11-22 | 重庆邮电大学 | 基于区块链的大规模云存储中数据访问控制方法及系统 |
CN111130757A (zh) * | 2019-12-31 | 2020-05-08 | 华中科技大学 | 一种基于区块链的多云cp-abe访问控制方法 |
CN111147460A (zh) * | 2019-12-16 | 2020-05-12 | 重庆邮电大学 | 一种基于区块链的协同细粒度访问控制方法 |
CN111371561A (zh) * | 2020-02-27 | 2020-07-03 | 华信咨询设计研究院有限公司 | 基于cp-abe算法的联盟区块链数据访问控制方法 |
-
2020
- 2020-08-26 CN CN202010869076.3A patent/CN112073479A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109559124A (zh) * | 2018-12-17 | 2019-04-02 | 重庆大学 | 一种基于区块链的云数据安全共享方法 |
CN110493347A (zh) * | 2019-08-26 | 2019-11-22 | 重庆邮电大学 | 基于区块链的大规模云存储中数据访问控制方法及系统 |
CN111147460A (zh) * | 2019-12-16 | 2020-05-12 | 重庆邮电大学 | 一种基于区块链的协同细粒度访问控制方法 |
CN111130757A (zh) * | 2019-12-31 | 2020-05-08 | 华中科技大学 | 一种基于区块链的多云cp-abe访问控制方法 |
CN111371561A (zh) * | 2020-02-27 | 2020-07-03 | 华信咨询设计研究院有限公司 | 基于cp-abe算法的联盟区块链数据访问控制方法 |
Non-Patent Citations (4)
Title |
---|
MIN XIAO等: ""Efficient distributed access control for big data in clouds"", 《2015 IEEE CONFERENCE ON COMPUTER COMMUNICATIONS WORKSHOPS(INFOCOM WKSHPS)》 * |
吕品: ""面向物联网的安全发布订阅系统的设计与实现"", 《中国优秀硕士学位论文全文数据库》 * |
田有亮等: ""基于属性加密的区块链数据溯源算法"", 《通信学报》 * |
邱云翔等: ""基于CP-ABE算法的区块链数据访问控制方案"", 《网络与信息安全学报》 * |
Cited By (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112528250A (zh) * | 2020-12-17 | 2021-03-19 | 上海万向区块链股份公司 | 通过区块链实现数据隐私和数字身份的系统及方法 |
WO2022134812A1 (zh) * | 2020-12-21 | 2022-06-30 | 深圳壹账通智能科技有限公司 | 基于联盟链的多机构数据处理方法、装置及相关设备 |
CN112613050A (zh) * | 2020-12-22 | 2021-04-06 | 北京八分量信息科技有限公司 | 基于大数据系统中数据访问方法、装置及相关产品 |
CN112632576A (zh) * | 2020-12-22 | 2021-04-09 | 北京八分量信息科技有限公司 | 大数据系统中保护隐私的数据访问方法、装置及相关产品 |
CN112637211B (zh) * | 2020-12-24 | 2022-09-20 | 国网河北省电力有限公司信息通信分公司 | 一种基于区块链的跨域访问的认证方法及系统 |
CN112637211A (zh) * | 2020-12-24 | 2021-04-09 | 国网河北省电力有限公司信息通信分公司 | 一种基于区块链的跨域访问的认证方法及系统 |
CN114697001B (zh) * | 2020-12-28 | 2024-06-07 | 浪潮云洲工业互联网有限公司 | 一种基于区块链的信息加密传输方法、设备及介质 |
CN114697001A (zh) * | 2020-12-28 | 2022-07-01 | 山东浪潮质量链科技有限公司 | 一种基于区块链的信息加密传输方法、设备及介质 |
CN112734572A (zh) * | 2021-01-07 | 2021-04-30 | 华南农业大学 | 基于双区块链的细粒度访问控制方法及系统 |
CN112818379B (zh) * | 2021-01-11 | 2023-04-25 | 北京信息科技大学 | 一种基于区块链的航空重力数据安全访问控制方法及系统 |
CN112818379A (zh) * | 2021-01-11 | 2021-05-18 | 北京信息科技大学 | 一种基于区块链的航空重力数据安全访问控制方法及系统 |
CN112989385A (zh) * | 2021-03-26 | 2021-06-18 | 中国人民解放军国防科技大学 | 一种云际计算环境中数据安全动态访问控制方法及系统 |
CN113067704B (zh) * | 2021-03-29 | 2022-08-30 | 安徽慧可科技有限公司 | 一种基于区块链的数据确权方法、系统和设备 |
CN113067704A (zh) * | 2021-03-29 | 2021-07-02 | 安徽慧可科技有限公司 | 一种基于区块链的数据确权方法、系统和设备 |
CN113193953A (zh) * | 2021-04-16 | 2021-07-30 | 南通大学 | 一种基于区块链的多权威属性基加密方法 |
CN113242219A (zh) * | 2021-04-26 | 2021-08-10 | 卓尔智联(武汉)研究院有限公司 | 数据传输方法、区块链网络及存储介质 |
CN113127927A (zh) * | 2021-04-27 | 2021-07-16 | 泰山学院 | 一种许可链数据共享及监管的属性重构加密方法及系统 |
CN113127927B (zh) * | 2021-04-27 | 2022-03-18 | 泰山学院 | 一种许可链数据共享及监管的属性重构加密方法及系统 |
CN113269645A (zh) * | 2021-05-28 | 2021-08-17 | 中邮信息科技(北京)有限公司 | 一种区块链的交易信息调度方法、装置、介质及电子设备 |
CN113269645B (zh) * | 2021-05-28 | 2024-05-17 | 中邮信息科技(北京)有限公司 | 一种区块链的交易信息调度方法、装置、介质及电子设备 |
CN115622719A (zh) * | 2021-07-13 | 2023-01-17 | 中移物联网有限公司 | 一种物联网数据处理方法、装置及系统 |
CN113792332A (zh) * | 2021-08-31 | 2021-12-14 | 远光软件股份有限公司 | 一种数据访问控制的方法及相关装置 |
CN113553332A (zh) * | 2021-09-22 | 2021-10-26 | 深圳时空云科技有限公司 | 去中心化的数据存储访问方法与装置 |
CN113553332B (zh) * | 2021-09-22 | 2022-01-25 | 深圳时空云科技有限公司 | 去中心化的数据存储访问方法与装置 |
CN113992418A (zh) * | 2021-10-29 | 2022-01-28 | 南京联了么信息技术有限公司 | 一种基于区块链技术的IoT设备管理方法 |
CN114124392A (zh) * | 2021-11-01 | 2022-03-01 | 广州大学 | 支持访问控制的数据可控流通方法、系统、设备和介质 |
CN114039790B (zh) * | 2021-11-23 | 2023-07-18 | 重庆邮电大学 | 一种基于区块链的细粒度云存储安全访问控制方法 |
CN114039790A (zh) * | 2021-11-23 | 2022-02-11 | 重庆邮电大学 | 一种基于区块链的细粒度云存储安全访问控制方法 |
CN114139203A (zh) * | 2021-12-03 | 2022-03-04 | 成都信息工程大学 | 基于区块链的异构身份联盟风险评估系统、方法及终端 |
CN114448639A (zh) * | 2021-12-15 | 2022-05-06 | 电子科技大学 | 具有唯一性和密钥安全的去中心化身份系统及实现方法 |
CN114448639B (zh) * | 2021-12-15 | 2022-12-06 | 电子科技大学 | 具有唯一性和密钥安全的去中心化身份系统及实现方法 |
CN114338026A (zh) * | 2021-12-17 | 2022-04-12 | 复旦大学 | 基于属性签名与区块链的匿名信息反馈系统 |
CN114928447A (zh) * | 2022-02-10 | 2022-08-19 | 北京轻信科技有限公司 | 基于分布式身份的数据管理方法和系统 |
CN114928447B (zh) * | 2022-02-10 | 2024-04-30 | 北京轻信科技有限公司 | 基于分布式身份的数据管理方法和系统 |
CN115001730A (zh) * | 2022-03-02 | 2022-09-02 | 上海交通大学 | 分布式场景下基于角色属性的访问控制系统及方法 |
CN115001730B (zh) * | 2022-03-02 | 2023-09-05 | 上海交通大学 | 分布式场景下基于角色属性的访问控制系统及方法 |
CN114679319B (zh) * | 2022-03-25 | 2023-08-18 | 南京邮电大学 | 基于区块链的分布式数据同步加密方法 |
CN114679319A (zh) * | 2022-03-25 | 2022-06-28 | 南京邮电大学 | 基于区块链的分布式数据同步加密方法 |
CN114826572A (zh) * | 2022-03-31 | 2022-07-29 | 西安电子科技大学 | 支持属性隐私保护的去中心化众包方法、系统及终端 |
CN114629661B (zh) * | 2022-04-27 | 2024-02-23 | 中国科学技术大学 | 加密信息处理方法及装置 |
CN114629661A (zh) * | 2022-04-27 | 2022-06-14 | 中国科学技术大学 | 加密信息处理方法及装置 |
CN115296838A (zh) * | 2022-06-24 | 2022-11-04 | 北京中科金财科技股份有限公司 | 基于区块链的数据共享方法、系统及存储介质 |
CN115296838B (zh) * | 2022-06-24 | 2023-09-26 | 北京中科金财科技股份有限公司 | 基于区块链的数据共享方法、系统及存储介质 |
CN115189974B (zh) * | 2022-09-13 | 2022-12-09 | 北京邮电大学 | 基于区块链的多组织访问控制方法及装置 |
CN115189974A (zh) * | 2022-09-13 | 2022-10-14 | 北京邮电大学 | 基于区块链的多组织访问控制方法及装置 |
CN116112244A (zh) * | 2023-01-13 | 2023-05-12 | 重庆邮电大学 | 一种基于区块链和属性基加密的访问控制方法 |
CN116629804A (zh) * | 2023-06-06 | 2023-08-22 | 河北华正信息工程有限公司 | 一种信访督查跟踪管理系统及管理方法 |
CN116629804B (zh) * | 2023-06-06 | 2024-01-09 | 河北华正信息工程有限公司 | 一种信访督查跟踪管理系统及管理方法 |
CN116894730A (zh) * | 2023-06-08 | 2023-10-17 | 三峡大学 | 基于链上链下协同的多元分布式储能交易方法 |
CN116756780B (zh) * | 2023-08-21 | 2024-01-30 | 北京邮电大学 | 基于cp-abe算法的联盟链数据访问控制方法及相关设备 |
CN116756780A (zh) * | 2023-08-21 | 2023-09-15 | 北京邮电大学 | 基于cp-abe算法的联盟链数据访问控制方法及相关设备 |
CN116911809A (zh) * | 2023-08-25 | 2023-10-20 | 广东宏航供应链科技集团有限公司 | 基于区块链技术的供应链企业人力资源经营管理系统 |
CN117892354A (zh) * | 2024-03-11 | 2024-04-16 | 云账户技术(天津)有限公司 | 电子回单的管理方法、装置、电子设备及存储介质 |
CN118069661A (zh) * | 2024-04-24 | 2024-05-24 | 江西农业大学 | 一种面向可信云服务的确定性存储与删除方法及系统 |
CN118381663A (zh) * | 2024-06-21 | 2024-07-23 | 中国科学技术大学 | 一种基于区块链和did的高校联盟用户身份管理方法 |
CN118381663B (zh) * | 2024-06-21 | 2024-08-23 | 中国科学技术大学 | 一种基于区块链和did的高校联盟用户身份管理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112073479A (zh) | 一种基于区块链的去中心数据访问控制方法及系统 | |
CN110493347B (zh) | 基于区块链的大规模云存储中数据访问控制方法及系统 | |
CN112019591B (zh) | 一种基于区块链的云数据共享方法 | |
Wang et al. | Attribute-based data sharing scheme revisited in cloud computing | |
CN113014392B (zh) | 基于区块链的数字证书管理方法及系统、设备、存储介质 | |
Zuo et al. | Fine-grained two-factor protection mechanism for data sharing in cloud storage | |
US7634085B1 (en) | Identity-based-encryption system with partial attribute matching | |
Chow et al. | Dynamic secure cloud storage with provenance | |
CN114730420A (zh) | 用于生成签名的系统和方法 | |
Sun et al. | Outsourced decentralized multi-authority attribute based signature and its application in IoT | |
Xu et al. | Server-aided bilateral access control for secure data sharing with dynamic user groups | |
Wu et al. | On the security of data access control for multiauthority cloud storage systems | |
Li et al. | Privacy-preserving data utilization in hybrid clouds | |
CN111614680B (zh) | 一种基于cp-abe的可追溯云存储访问控制方法和系统 | |
Wang et al. | A pre-authentication approach to proxy re-encryption in big data context | |
CN111147460A (zh) | 一种基于区块链的协同细粒度访问控制方法 | |
Jiang et al. | SDSS-MAC: Secure data sharing scheme in multi-authority cloud storage systems | |
CN113836222B (zh) | 一种基于区块链的可隐藏策略和属性的访问控制方法 | |
Hur et al. | Removing escrow from ciphertext policy attribute-based encryption | |
CN117201132A (zh) | 一种完全去中心化的多委员会属性基加密方法及其应用 | |
Yao et al. | A lightweight access control mechanism for mobile cloud computing | |
Zhang et al. | A revocable multi-authority fine-grained access control architecture against ciphertext rollback attack for mobile edge computing | |
CN117200966A (zh) | 一种基于分布式身份和联盟链的可信授权数据共享方法 | |
CN116318784B (zh) | 身份认证方法、装置、计算机设备和存储介质 | |
Liang | Enabling privacy preservation and decentralization for attribute-based task assignment in crowdsourcing |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201211 |