CN112804064B - 基于区块链的属性加密访问控制系统及方法 - Google Patents

基于区块链的属性加密访问控制系统及方法 Download PDF

Info

Publication number
CN112804064B
CN112804064B CN202110101569.7A CN202110101569A CN112804064B CN 112804064 B CN112804064 B CN 112804064B CN 202110101569 A CN202110101569 A CN 202110101569A CN 112804064 B CN112804064 B CN 112804064B
Authority
CN
China
Prior art keywords
data
attribute
ciphertext
private key
accessor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110101569.7A
Other languages
English (en)
Other versions
CN112804064A (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.)
Xian University of Posts and Telecommunications
Original Assignee
Xian University of Posts 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 Xian University of Posts and Telecommunications filed Critical Xian University of Posts and Telecommunications
Priority to CN202110101569.7A priority Critical patent/CN112804064B/zh
Publication of CN112804064A publication Critical patent/CN112804064A/zh
Application granted granted Critical
Publication of CN112804064B publication Critical patent/CN112804064B/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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic 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 digital signatures
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y30/00IoT infrastructure
    • G16Y30/10Security thereof
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y40/00IoT characterised by the purpose of the information processing
    • G16Y40/50Safety; Security of things, users, data or systems
    • 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/045Network 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 hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本公开实施例是关于一种基于区块链的属性加密访问控制系统及方法。该系统包括:区块链系统,包括多个属性授权机构,该区块链系统用于初始化操作后生成公共参数和主密钥数据,并将公共参数进行发送;数据访问者,与区块链系统进行交互;物联网设备,与区块链系统进行交互;云服务器,分别与数据访问者和物联网设备交互,用于接收并保存物联网设备发送的密文数据和交易编号数据,及接收数据访问者发送的请求密文指令。本公开根据区块链的多中心化和不可篡改特点,利用联盟链实现可信第三方可以使多个属性授权机构、数据拥有者参与属性背书审计,并存储密文哈希值,通过隐藏密文策略的属性加密和对称加密混合机制实现用户基于属性的细粒度访问控制。

Description

基于区块链的属性加密访问控制系统及方法
技术领域
本公开实施例涉及物联网中数据细粒度访问控制技术领域,尤其涉及一种基于区块链的属性加密访问控制系统及方法。
背景技术
物联网(IoT)在当前社会中扮演着重要角色,如今,物联网技术已被广泛应用于从工业应用到个人生活的各个领域,例如医疗保健,工业设备,智能家居等。物联网应用程序和服务的激增为社会发展和我们的日常生活带来了极大的便利。然而,物联网设备的快速部署也引发了一些安全问题,物联网设备生成并传输了大量敏感数据,并且大量复杂的用户可能会访问这些数据,造成了数据的访问控制和安全问题。
区块链(Blockchain)是随着比特币等数字加密货币的日益普及而逐渐兴起的一种全新的去中心化基础架构与分布式计算范式,目前已经引起政府部门、金融机构、科技企业和资本市场的高度重视与广泛关注.区块链技术具有去中心化、不可篡改、时序数据、集体维护、可编程和安全可信等特点。
传统的物联网访问控制系统是集中式的,在访问控制授权、决策过程中并未包括所有利益相关者,并且物联网生态系统中涉及不同方位、不同的管理实体下,它们之间可能缺乏信任。使用传统方法,不可能确保所有互不信任的各方积极参与物联网访问控制机制的不同方面,例如确定访问策略和做出访问控制决策。物联网中基于区块链的访问控制系统适用于访问策略控制,区块链在访问控制中可以作为由多个可信属性授权机构、数据拥有者等实体组成的系统,其中访问控制的不同阶段(例如创建访问策略和做出访问控制决策)是基于所有利益相关者的共识而发生的。区块链通过消除对可信中央机构的需求,为构建相互不信任的各方构建分布式应用程序提供了一个绝佳的平台。从高层次上讲,区块链是由对等网络维护的分布式不可变分类账,其中,网络中的所有对等点在任何给定时间点都通过某种共识协议就账本的一个相同版本达成一致。
区块链技术主要分为三种应用模式,即公共链(Public Blockchain)、联盟链(Consortium Blockchain)和私有链(Private Blockchain)。赋予比特币和以太坊之类的加密货币授权的区块链被称为公共或无权限区块链,对等方无需许可即可参与该区块链。其主要使用PoW或PoS共识机制,这导致链上的数据无法及时更新,一次交易等待的时间过长。联盟链,如Hyperledger Fabric等,适用于多个实体构成的组织或联盟。联盟链具有很高的生成交易效率,它包含了更快的共识协议,例如拜占庭容错(BFT),并且提供了一种方法来保护一组具有共同目标但彼此不完全信任的具有已验证身份的参与者之间的交易,使其通过共识机制对请求数据达成一致。因此,联盟链更适合物联网访问控制。私有链适用于特定机构的内部数据管理与审计等,其写入权限由中心机构控制,而读取权限可视需求有选择性地对外开放。
因此,有必要改善上述相关技术方案中存在的一个或者多个问题。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开实施例的目的在于提供一种基于区块链的属性加密访问控制系统及方法,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。
根据本公开实施例的第一方面,提供一种基于区块链的属性加密访问控制系统,该系统包括:
区块链系统,包括多个属性授权机构,该区块链系统用于初始化操作后生成公共参数和主密钥数据,并将所述公共参数进行发送;
数据访问者,与所述区块链系统进行交互,用于向所述区块链系统发送属性列表数据,并接收经由所述区块链系统验证处理后生成的部分属性私钥,并结合该数据访问者的私钥和所述区块链系统生成的所述部分属性私钥生成完整的用户属性私钥;
物联网设备,与所述区块链系统进行交互,并接收所述区块链系统发送的所述公共参数,并对该公共参数进行预设加密处理,以生成密文数据,并将该密文的哈希数据发送至所述区块链系统;
其中,所述区块链系统将接收的所述哈希数据进行保存,并生成交易编号数据,并将该交易编号数据发送至所述物联网设备;
云服务器,分别与所述数据访问者和物联网设备交互,用于接收并保存所述物联网设备生成的所述密文数据及所述交易编号数据,及接收所述数据访问者发送的请求密文指令,并进行预设属性匹配计算,以将存储的所述密文数据下载发送至所述数据访问者;
其中,所述数据访问者验证所述密文数据的完整性,以对该密文数据进行解密而恢复出明文数据。
本公开的一种示例性实施例中,所述物联网设备通过内置加密设备对接收的所述公共参数进行加密处理,并生成密文哈希值,并将该密文哈希值数据发送至所述区块链系统。
本公开的一种示例性实施例中,所述数据访问者向所述区块链系统发送密文寻找指令,并从所述区块链系统获取与所述密文数据对应的所述密文哈希值数据和所述交易编号数据。
本公开的一种示例性实施例中,所述完整的用户属性私钥包括属性验证私钥和解密私钥,且所述区块链系统生成的所述部分属性私钥包括所述属性验证私钥和部分所述解密私钥。
本公开的一种示例性实施例中,所述数据访问者将所述属性验证私钥和所述交易编号数据发送至所述云服务器,以进行属性匹配及请求密文数据的操作。
本公开的一种示例性实施例中,所述数据访问者对从所述云服务器下载的所述密文数据与从所述区块链系统获取的所述密文哈希值数据进行完整性验证,若完整则对所述密文数据进行解密。
本公开的一种示例性实施例中,所述区块链系统在初始化后将所述主密钥数据存储在该区块链系统的各节点中,并在使用时恢复出所述主密钥并参与计算。
本公开的一种示例性实施例中,所述区块链系统对接收的所述属性列表数据进行背书签名及审核操作处理,并验证所述属性列表的信息以生成所述部分属性私钥数据,并将生成的所述部分属性私钥数据发送给所述数据访问者。
根据本公开实施例的第二方面,提供一种基于区块链的属性加密访问控制方法,应用于上述实施例所述基于区块链的属性加密访问控制系统,该方法包括:
初始化操作执行Setup(1λ)→(PK,MK),生成公共参数PK和主密钥MK,并将所述公共参数PK发送至物联网设备;
接收数据访问者发送的属性列表数据L,并对该属性列表数据L进行验证处理执行KeyGen(PK,MK,L)→SK1,以生成部分属性私钥数据SK1,并将该部分属性私钥数据SK1返回至所述数据访问者;
其中,数据访问者结合SK1及其私钥生成完整用户属性私钥;
接收所述物联网设备生成密文数据中的哈希值数据,所述密文数据由所述物联网设备执行Encrypt(PK,M,W,K)→CTw完成,并对该密文数据CTw取哈希值进行保存并生成交易编号数据,并将该交易编号数据返回至所述物联网设备;
其中,云服务器接收并保存所述物联网设备生成的所述密文数据及所述交易编号数据;
接收所述数据访问者发送的访问请求数据,并发送与该访问请求数据相匹配的所述哈希值数据和所述交易编号数据至所述数据访问者,所述数据访问者发送所述交易编号数据和属性验证私钥至所述云服务器,该云服务器进行属性匹配操作,若匹配成功则所述数据访问者则下载密文,所述数据访问者执行Decrypt(PK,CTw,SKL)→K以便于所述数据访问者进行解密以获得对称密钥,进而解密出明文数据。
本公开的一种示例性实施例中,所述数据访问者发送所述交易编号数据和所述属性验证私钥至所述云服务器的步骤,包括:
对所述数据访问者的属性策略进行匹配检测
Figure GDA0002959170690000051
当且仅当等式成立时
Figure GDA0002959170690000053
所述数据访问者通过检测返回密文CTw,若
Figure GDA0002959170690000054
Figure GDA0002959170690000055
则返回⊥;
所述数据访问者获得密文数据后与从区块链系统中获得的哈希值进行完整性验证,若完整则对属性密文Ck进行解密,通过
Figure GDA0002959170690000052
以得到对称密钥K,通过K对CM进行解密得到明文数据。
本公开的实施例提供的技术方案可以包括以下有益效果:
本公开的实施例中,根据上述实施例提供的基于区块链的属性加密访问控制系统,通过区块链系统、数据访问者、物联网设备和云服务器分别交互连接,由区块链执行初始化并通过背书请求生成部分属性密钥,数据访问者根据自身私钥结合部分属性密钥生成完整的属性密钥,然后通过物联网设备完成加密算法,并对应生成密文,并将密文存储于云服务器中,密文哈希值存储在区块链系统中,最后在云服务器上进行属性匹配检测,若匹配成功则允许数据访问者下载数据,并将对称密钥进行解密,然后通过对称密钥恢复出明文。该系统可根据区块链的多中心化和不可篡改特点,利用联盟链实现可信第三方,可以使多个属性授权机构、数据拥有者参与属性背书审计,并存储密文哈希值,通过隐藏密文策略的属性加密和对称加密混合机制实现用户基于属性的细粒度访问控制。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本公开示例性实施例中基于区块链的属性加密访问控制系统结构示意图;
图2示出本公开示例性实施例中属性加密访问策略示意图;
图3示出本公开示例性实施例中区块链背书流程示意图;
图4示出本公开示例性实施例中基于区块链的属性加密访问控制系统协议示意图;
图5示出本公开示例性实施例中基于区块链的属性加密访问控制方法流程图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
本示例实施方式中首先提供了一种基于区块链的属性加密访问控制系统,该系统包括区块链系统、数据访问者、物联网设备和云服务器。
区块链系统,包括多个属性授权机构,该区块链系统用于初始化操作后生成公共参数和主密钥数据,并将所述公共参数进行发送;数据访问者,与所述区块链系统进行交互,用于向所述区块链系统发送属性列表数据,并接收经由所述区块链系统验证处理后生成的部分属性私钥,并结合该数据访问者的私钥和所述区块链系统生成的所述部分属性私钥生成完整的用户属性私钥;物联网设备,与所述区块链系统进行交互,并接收所述区块链系统发送的所述公共参数,并对该公共参数进行预设加密处理,以生成密文数据,并将该密文的哈希数据发送至所述区块链系统;其中,所述区块链系统将接收的所述哈希数据进行保存,并生成交易编号数据,并将该交易编号数据发送至所述物联网设备;云服务器,分别与所述数据访问模块和物联网设备交互,用于接收并保存所述物联网设备生成的所述密文数据及所述交易编号数据,及接收所述数据访问者发送的请求密文指令,并进行预设属性匹配计算,以将存储的所述密文数据下载发送至所述数据访问者;其中,所述数据访问者验证所述密文数据的完整性,以对该密文数据进行解密而恢复出明文数据。
根据上述实施例提供的基于区块链的属性加密访问控制系统,通过区块链系统、数据访问者、物联网设备和云服务器分别交互连接,由区块链执行初始化并通过背书请求生成部分属性密钥,数据访问者根据自身私钥结合部分属性密钥生成完整的属性密钥,然后通过物联网设备完成加密算法,并对应生成密文,并将密文存储于云服务器中,密文哈希值存储在区块链系统中,最后在云服务器上进行属性匹配检测,若匹配成功则允许数据访问者下载数据,并将对称密钥进行解密,然后通过对称密钥恢复出明文。该系统可根据区块链的多中心化和不可篡改特点,利用联盟链实现可信第三方,可以使多个属性授权机构、数据拥有者参与属性背书审计,并存储密文哈希值,通过隐藏密文策略的属性加密和对称加密混合机制实现用户基于属性的细粒度访问控制。
下面,将参考图1至图4对本示例实施方式中的上述系统的各个部分进行更详细的说明。
在一个实施例中,为了达到细粒度访问控制的目的,本申请采用基于属性的加密方法(ABE)来实现。ABE是一种一对多的公钥密码学原语,可以分为两大类:第一个是密文策略ABE(CP-ABE)。在CP-ABE中,用户的属性秘密密钥与属性列表相关联,并且密文是指定在系统的属性范围上定义的访问策略。仅当用户的属性列表与密文的访问策略匹配时,用户才能解密密文。第二个是密钥策略ABE(KP-ABE)。在KP-ABE中,将在系统属性上定义的访问策略编码为用户的属性秘密密钥,并根据属性列表创建密文,仅当相应的属性列表与用户的属性密钥相关联的访问策略匹配时,用户才能解密密文。
如图2所示,该属性加密访问控制系统的访问策略支持属性的多个取值和通配符,具有更丰富的表达能力,提高方案效率。描述如下,假设系统中有n个属性,其属性集U={ω1,ω2,ω3,…ωn},且每个属性有多个取值,第i个属性ωi有ni个属性值,
Figure GDA0002959170690000081
为属性ωi的多值集且|Si|=ni
如图3所示,本实施例中区块链系统基于联盟链Hyperledger Fabric的背书流程,数据访问者发送所需要申请的属性列表,通过客户端(SDK)将属性列表中的属性与区块链中各组织负责的属性集相联系,并把交易提议发给指定的一个或多个属性授权组织中的背书节点,接收提议的背书节点在SDK的交易提议请求中指定。背书节点收到交易提议后首先校验客户端签名,然后在指定的背书节点中模拟交易,若该背书节点同意此交易,则对客户端的交易提案签名并返回给客户端。客户端收集到足够多的消息和背书签名后,表示该交易已经正确背书,发送包含签名背书和模拟执行的结果给排序服务节点对交易进行排序并生成区块,广播给其他节点更新区块。若收集的背书签名不足够多则交易将被遗弃。
区块链系统使用联盟链Hyperledger Fabric作为可信平台,由多个可信属性授权机构、数据拥有者组织等实体组成,通过智能合约生成系统公共参数、系统主密钥,其中主密钥使用秘密共享方案存储;将数据访问者的属性请求在区块链中的相关实体进行背书审查,通过参与实体的背书审计后即可授予数据访问者相关的属性,生成部分属性私钥;系统中存储物联网设备生成的密文哈希值,保证其不可篡改,作为数据完整性校验的凭证。
在一个示例中,所述数据访问者向所述区块链系统发送密文寻找指令,并从所述区块链系统获取与所述密文数据对应的所述密文哈希值数据和所述交易编号数据。具体的,数据访问者生成公私钥,发送属性列表请求给区块链,结合区块链生成的部分私钥生成完整属性私钥。根据区块链查找数据密文哈希和交易编号,在云服务器中进行属性匹配。在一个示例中,所述完整的用户属性私钥包括属性验证私钥和解密私钥,且所述区块链系统生成的所述部分属性私钥包括所述属性验证私钥和部分所述解密私钥。
在一个示例中,所述物联网设备通过内置加密设备对接收的所述公共参数进行加密处理,并生成密文哈希值,并将该密文哈希值数据发送至所述区块链系统。具体的,物联网设备根据公共参数在加密器中使用属性加密和对称加密的混合体制,数据使用对称加密算法,对称密钥使用属性加密算法,将生成的数据密文和密钥密文存储在云服务器中,其哈希值存储在区块链中。
云服务器保存物联网设备的加密数据,并进行属性匹配计算。
如图1、4所示,该属性加密访问控制系统的具体过程可如下:
区块链系统进行初始化,执行Setup(1λ)→(PK,MK),生成公共参数PK、系统主密钥MK,将公共参数公开,在一个示例中,所述区块链系统在初始化后将所述主密钥数据存储在该区块链系统的各节点中,并在使用时恢复出所述主密钥并参与计算。具体的,系统主密钥使用秘密共享技术存储,将主密钥分成n个共享分给不同节点,当已知任意t个共享时易于计算出主密钥,当已知任意少于t个共享时无法求出。
Setup(1λ)→(PK,MK):G,GT为两个阶为大素数p的乘法循环群,g是G的一个生成元,
Figure GDA0002959170690000091
G×G→GT是一个双线性映射,定义映射函数:
Figure GDA0002959170690000092
假设系统中有n个属性,其属性集U={ω1,ω2,ω3,…ωn},且每个属性有多个取值,第i个属性ωi有ni个属性值,
Figure GDA0002959170690000093
Figure GDA0002959170690000094
为属性ωi的多值集且|Si|=ni;选择随机数
Figure GDA0002959170690000095
h∈G,计算
Figure GDA0002959170690000096
P=gβ;公共参数
Figure GDA0002959170690000097
Figure GDA0002959170690000098
MK=<α,β>。
数据访问者生成公私钥对:选择随机数
Figure GDA0002959170690000099
秘密保存,计算其公钥
Figure GDA00029591706900000910
区块链中节点的公钥公开,数据访问者选择区块链任意节点发送属性列表请求,表示为
Figure GDA00029591706900000911
其中L为用户属性列表,
Figure GDA00029591706900000912
为某一节点公钥,
Figure GDA00029591706900000913
为数据访问者秘密随机数。数据访问者使用私钥对
Figure GDA00029591706900000914
的哈希值进行签名,防止请求参数被篡改,并使用
Figure GDA00029591706900000915
加密req,确保只有对应节点能够解密。若发现参数被篡改则丢弃请求。
若req没有被篡改,通过客户端(SDK)将属性列表转化成区块链中的背书策略把交易提议发给指定的一个或多个背书节点,客户端收集到足够多背书节点对客户端送的交易提案签名后,表示该交易已经正确背书,属性申请已经被相关的实体审核,存储满足背书策略的属性证书生成交易随机值。执行KeyGen(PK,MK,L)→SK1生成部分用户私钥。
KeyGen(PK,MK,L)→SK1:设L={L1,L2,L3…Ln}为数据访问者所具有的属性列表,
Figure GDA0002959170690000101
计算
Figure GDA0002959170690000102
系统选取随机值
Figure GDA0002959170690000103
并且
Figure GDA0002959170690000104
计算K1=tk
Figure GDA0002959170690000105
K3=P(α-r)
Figure GDA0002959170690000106
Figure GDA0002959170690000107
生成
Figure GDA0002959170690000108
在一个示例中,所述区块链系统对接收的所述属性列表数据进行背书签名及审核操作处理,并验证所述属性列表的信息以生成所述部分属性私钥数据,并将生成的所述部分属性私钥数据发送给所述数据访问者,具体的,区块链系统生成部分私钥后响应给数据访问者,相应信息表示为res:
Figure GDA0002959170690000109
Figure GDA00029591706900001010
为区块链中节点私钥,
Figure GDA00029591706900001011
为用户公钥,ID表示为区块链背书成功后生成的唯一交易随机数。节点用私钥对ID,SK1哈希值进行签名,用用户公钥对res加密。
数据访问者收到后可以对消息进行验证,使用保存的秘密随机数ut生成完整的属性私钥
Figure GDA00029591706900001012
物联网设备根据初始化的公共参数在加密器中执行Encrypt(PK,M,W,K)→CTw,采用对称加密算法对数据进行加密得到数据密文,采用密文策略的属性加密算法加密对称密钥得到密钥密文,该加密方法不需要公开密文中的访问策略,而将策略隐藏在密文中,防止用户属性敏感数据受到威胁。
Encrypt(PK,M,W,K)→CTw:加密包括两部分,使用对称加密算法加密明文M,CM=Enc(K,M)。使用属性加密算法加密对称密钥,选择随机数
Figure GDA00029591706900001013
计算C0=KYs
Figure GDA00029591706900001018
C1=gs,C′1=gs′,若vi,t∈W,
Figure GDA00029591706900001015
Figure GDA00029591706900001016
得到隐藏属性策略的密文
Figure GDA00029591706900001017
其中C′0,C′1,C′i用于对数据访问者属性进行认证,C0,C1,Ci用于解密出真正的明文。
将密文CTw的哈希值Hash(CTw)存储在区块链中,并生成交易编号返回给物联网设备。
物联网设备将交易编号、CTw以键值对形式存储在云服务器中。
数据数据访问者在区块链公开的数据中寻找目标哈希值、交易编号。
在一个示例中,所述数据访问者将属性验证私钥和所述交易编号数据发送至所述云服务器,以进行属性匹配及请求密文数据的操作。具体的,数据访问者将交易编号、属性验证密钥发送给云服务器,云服务器根据交易编号寻找密文,并进行属性预先匹配检测属性匹配:
Figure GDA0002959170690000111
Figure GDA0002959170690000112
当且仅当等式成立时
Figure GDA0002959170690000115
数据访问者满足策略返回密文CTw,若
Figure GDA0002959170690000116
Figure GDA0002959170690000117
则返回⊥,提示数据访问者权限不足。
在一个示例中,所述数据访问者对从所述云服务器下载的所述密文数据与从所述区块链系统获取的所述密文哈希值数据进行完整性验证,若完整则对所述密文数据进行解密。具体的,用户收到密文CTw与区块链中得到的Hash(CTw)进行完整性校验,检测完成后用户执行Decrypt(PK,CTw,SKL)→K,得到对称密钥K,通过K对CM进行解密得到数据明文Decrypt(PK,CTw,SKL)→K:
Figure GDA0002959170690000113
Figure GDA0002959170690000114
根据上述实施例提供的基于区块链的属性加密访问控制系统,通过区块链系统、数据访问者、物联网设备和云服务器分别交互连接,由区块链执行初始化并通过背书请求生成部分属性密钥,数据访问者根据自身私钥结合部分属性密钥生成完整的属性密钥,然后通过物联网设备完成加密算法,并对应生成密文,并将密文存储于云服务器中,密文哈希值存储在区块链系统中,最后在云服务器上进行属性匹配检测,若匹配成功则允许数据访问者下载数据,并将对称密钥进行解密,然后通过对称密钥恢复出明文。该系统可根据区块链的多中心化和不可篡改特点,利用联盟链实现可信第三方,可以使多个属性授权机构、数据拥有者参与属性背书审计,并存储密文哈希值,通过隐藏密文策略的属性加密和对称加密混合机制实现用户基于属性的细粒度访问控制。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。作为模块或单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本示例实施方式中还提供了一种基于区块链的属性加密访问控制方法,参考图5中所示,该方法可以包括下述步骤:
步骤S101:初始化操作执行Setup(1λ)→(PK,MK),生成公共参数PK和主密钥MK,并将所述公共参数PK发送至物联网设备。
步骤S102:接收数据访问者发送的属性列表数据L,并对该属性列表数据L进行验证处理执行KeyGen(PK,MK,L)→SK1,以生成部分属性私钥数据SK1,并将该部分属性私钥数据SK1返回至所述数据访问者;其中,数据访问者结合SK1及其私钥生成完整用户属性私钥。
步骤S103:接收所述物联网设备生成密文数据中的哈希值数据,所述密文数据由所述物联网设备执行Encrypt(PK,M,W,K)→CTw完成,并对该密文数据CTw取哈希值在区块链中进行保存并生成交易编号数据,并将该交易编号数据返回至所述物联网设备。
步骤S104:接收所述数据访问者发送的访问请求数据,并发送与该访问请求数据相匹配的所述哈希值数据和所述交易编号数据至所述数据访问者,所述数据访问者发送所述交易编号数据和属性验证私钥至所述云服务器,该云服务器进行属性匹配操作,若匹配成功则所述数据访问者可以下载密文,所述数据访问者执行Decrypt(PK,CTw,SKL)→K以便于所述数据访问者进行解密以获得对称密钥,进而解密出明文数据。
在一个实施例中,步骤S104还包括步骤S1041~S1042。
步骤S1041:对所述数据访问者的属性策略进行匹配检测
Figure GDA0002959170690000121
Figure GDA0002959170690000131
当且仅当等式成立时
Figure GDA0002959170690000135
所述数据访问者通过检测返回密文CTw,若
Figure GDA0002959170690000134
则返回⊥。
步骤S1042:所述数据访问者获得密文数据后与从区块链系统中获得的哈希值进行完整性验证,若完整则对属性密文Ck进行解密,通过
Figure GDA0002959170690000132
Figure GDA0002959170690000133
以得到对称密钥K,通过K对CM进行解密得到明文数据。
关于上述实施例中的方法步骤,已经在有关该系统的实施例中进行了详细描述,此处将不做详细阐述说明。
需要说明的是,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。另外,也易于理解的是,这些步骤可以是例如在多个模块/进程/线程中同步或异步执行。
本申请从使用目的上,效能上,进步及新颖性等观点进行阐述,其设置有的实用进步性,已符合专利法所强调的功能增进及使用要件,本申请以上的说明及附图,仅为本申请的较佳实施例而已,并非以此局限本申请,因此,凡一切与本申请构造,装置,特征等近似、雷同的,即凡依本申请专利申请范围所作的等同替换或修饰等,皆应属本申请的专利申请保护的范围之内。

Claims (10)

1.一种基于区块链的属性加密访问控制系统,其特征在于,该系统包括:
区块链系统,包括多个属性授权机构,该区块链系统用于初始化操作后生成公共参数和主密钥数据,并将所述公共参数进行发送;
数据访问者,与所述区块链系统进行交互,用于向所述区块链系统发送属性列表数据,并接收经由所述区块链系统验证处理后生成的部分属性私钥,并结合该数据访问者的私钥和所述区块链系统生成的所述部分属性私钥生成完整的用户属性私钥;
物联网设备,与所述区块链系统进行交互,并接收所述区块链系统发送的所述公共参数,并对该公共参数进行预设加密处理,以生成密文数据,并将该密文的哈希数据发送至所述区块链系统;
其中,所述区块链系统将接收的所述哈希数据进行保存,并生成交易编号数据,并将该交易编号数据发送至所述物联网设备;
云服务器,分别与所述数据访问者和物联网设备交互,用于接收并保存所述物联网设备生成的所述密文数据及所述交易编号数据,及接收所述数据访问者发送的请求密文指令,并进行预设属性匹配计算,以将存储的所述密文数据下载发送至所述数据访问者;
其中,所述数据访问者验证所述密文数据的完整性,以对该密文数据进行解密而恢复出明文数据。
2.根据权利要求1所述属性加密访问控制系统,其特征在于,所述物联网设备通过内置加密设备对接收的所述公共参数进行加密处理,并生成密文哈希值,并将该密文哈希值数据发送至所述区块链系统。
3.根据权利要求2所述属性加密访问控制系统,其特征在于,所述数据访问者向所述区块链系统发送密文寻找指令,并从所述区块链系统获取与所述密文数据对应的所述密文哈希值数据和所述交易编号数据。
4.根据权利要求1所述属性加密访问控制系统,其特征在于,所述完整的用户属性私钥包括属性验证私钥和解密私钥,且所述区块链系统生成的所述部分属性私钥包括所述属性验证私钥和部分所述解密私钥。
5.根据权利要求4所述属性加密访问控制系统,其特征在于,所述数据访问者将所述属性验证私钥和所述交易编号数据发送至所述云服务器,以进行属性匹配及请求密文数据的操作。
6.根据权利要求5所述属性加密访问控制系统,其特征在于,所述数据访问者对从所述云服务器下载的所述密文数据与从所述区块链系统获取的所述密文哈希值数据进行完整性验证,若完整则对所述密文数据进行解密。
7.根据权利要求1所述属性加密访问控制系统,其特征在于,所述区块链系统在初始化后将所述主密钥数据存储在该区块链系统的各节点中,并在使用时恢复出所述主密钥并参与计算。
8.根据权利要求1所述属性加密访问控制系统,其特征在于,所述区块链系统对接收的所述属性列表数据进行背书签名及审核操作处理,并验证所述属性列表的信息以生成所述部分属性私钥数据,并将生成的所述部分属性私钥数据发送给所述数据访问者。
9.一种基于区块链的属性加密访问控制方法,其特征在于,应用于权利要求1~8任一项所述基于区块链的属性加密访问控制系统,该方法包括:
初始化操作执行Setup(1λ)→(PK,MK),生成公共参数PK和主密钥MK,并将所述公共参数PK发送至物联网设备;
接收数据访问者发送的属性列表数据L,并对该属性列表数据L进行验证处理执行KeyGen(PK,MK,L)→SK1,以生成部分属性私钥数据SK1,并将该部分属性私钥数据SK1返回至所述数据访问者;
其中,数据访问者结合SK1及其私钥生成完整用户属性私钥;
接收所述物联网设备生成密文数据中的哈希值数据,所述密文数据由所述物联网设备执行Encrypt(PK,M,W,K)→CTw完成,并对该密文数据CTw取哈希值进行保存并生成交易编号数据,并将该交易编号数据返回至所述物联网设备;
其中,云服务器接收并保存所述物联网设备生成的所述密文数据及所述交易编号数据;
接收所述数据访问者发送的访问请求数据,并发送与该访问请求数据相匹配的所述哈希值数据和所述交易编号数据至所述数据访问者,所述数据访问者发送所述交易编号数据和所述属性验证私钥至所述云服务器,该云服务器进行属性匹配操作,若匹配成功则所述数据访问者则下载密文,所述数据访问者执行Decrypt(PK,CTw,SKL)→K以便于所述数据访问者进行解密以获得对称密钥,进而解密出明文数据。
10.根据权利要求9所述属性加密访问控制方法,其特征在于,所述数据访问者发送所述交易编号数据和所述属性验证私钥至所述云服务器的步骤,包括:
对所述数据访问者的属性策略进行匹配检测
Figure FDA0002916138580000031
当且仅当等式成立时
Figure FDA0002916138580000033
所述数据访问者通过检测返回密文CTw,若
Figure FDA0002916138580000034
则返回⊥;
所述数据访问者获得密文数据后与从区块链系统中获得的哈希值进行完整性验证,若完整则对属性密文Ck进行解密,通过
Figure FDA0002916138580000032
以得到对称密钥K,通过K对CM进行解密得到明文数据。
CN202110101569.7A 2021-01-26 2021-01-26 基于区块链的属性加密访问控制系统及方法 Active CN112804064B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110101569.7A CN112804064B (zh) 2021-01-26 2021-01-26 基于区块链的属性加密访问控制系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110101569.7A CN112804064B (zh) 2021-01-26 2021-01-26 基于区块链的属性加密访问控制系统及方法

Publications (2)

Publication Number Publication Date
CN112804064A CN112804064A (zh) 2021-05-14
CN112804064B true CN112804064B (zh) 2022-11-04

Family

ID=75811740

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110101569.7A Active CN112804064B (zh) 2021-01-26 2021-01-26 基于区块链的属性加密访问控制系统及方法

Country Status (1)

Country Link
CN (1) CN112804064B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434862B (zh) * 2021-06-24 2022-10-18 国网河南省电力公司 数据黑盒式可信计算方法
CN113783685A (zh) * 2021-08-30 2021-12-10 武汉海昌信息技术有限公司 一种使用区块链保护车联网数据的系统
CN113779612B (zh) * 2021-09-30 2023-06-13 国网湖南省电力有限公司 一种基于区块链与隐藏策略属性加密的数据共享方法与系统
CN114039753B (zh) * 2021-10-27 2024-03-12 中国联合网络通信集团有限公司 一种访问控制方法、装置、存储介质及电子设备
CN114143055B (zh) * 2021-11-24 2023-12-01 国网江苏省电力有限公司营销服务中心 一种基于区块链的数据分发方法和可信溯源方法
CN114143094A (zh) * 2021-12-02 2022-03-04 兰州理工大学 基于区块链的多授权属性基可验证加密方法
CN114567639B (zh) * 2022-03-03 2023-08-18 临沂大学 一种基于区块链的轻量级访问控制系统及方法
CN114500103A (zh) * 2022-03-31 2022-05-13 泰山学院 一种物联网隐私数据切分加密方法及区块链系统
CN115733859A (zh) * 2022-11-08 2023-03-03 昆明理工大学 基于区块链与属性加密的iot数据可信收集共享方法
CN115664685B (zh) * 2022-12-27 2023-03-21 北京邮电大学 一种基于属性加密的链上数据访问控制方法及装置
CN115982746B (zh) * 2023-03-17 2023-06-27 南京信息工程大学 一种基于区块链的数据共享方法
CN117648706B (zh) * 2023-11-30 2024-07-09 云南大学 基于区块链和属性加密的访问控制方法
CN117714211B (zh) * 2024-02-04 2024-04-30 杭州海康威视数字技术股份有限公司 支持数据完整性审计的属性加密方法、系统及装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10856122B2 (en) * 2016-05-31 2020-12-01 Intel Corporation System, apparatus and method for scalable internet of things (IoT) device on-boarding with quarantine capabilities
US20180131511A1 (en) * 2016-08-03 2018-05-10 James Taylor Systems and Methods for Dynamic Cypher Key Management
CN109120639B (zh) * 2018-09-26 2021-03-16 众安信息技术服务有限公司 一种基于区块链的数据云存储加密方法及系统
CN110474893B (zh) * 2019-07-30 2021-10-08 同济大学 一种异构跨信任域密态数据安全分享方法及系统
CN110493347B (zh) * 2019-08-26 2020-07-14 重庆邮电大学 基于区块链的大规模云存储中数据访问控制方法及系统
CN111245837B (zh) * 2020-01-13 2021-08-10 电子科技大学 一种基于区块链的车联网数据共享细粒度访问控制方法
CN111614680B (zh) * 2020-05-25 2021-04-02 华中科技大学 一种基于cp-abe的可追溯云存储访问控制方法和系统

Also Published As

Publication number Publication date
CN112804064A (zh) 2021-05-14

Similar Documents

Publication Publication Date Title
CN112804064B (zh) 基于区块链的属性加密访问控制系统及方法
Liang et al. PDPChain: A consortium blockchain-based privacy protection scheme for personal data
Li et al. Blockchain for large-scale internet of things data storage and protection
Qin et al. LBAC: A lightweight blockchain-based access control scheme for the internet of things
CN109617699A (zh) 一种密钥生成方法、区块链网络服务平台及存储介质
CN112383550B (zh) 一种基于隐私保护的动态权限访问控制方法
Sharma et al. Blockchain-based cloud storage system with CP-ABE-based access control and revocation process
Yan et al. Efficient identity-based public integrity auditing of shared data in cloud storage with user privacy preserving
Bramm et al. Blockchain-based distributed attribute based encryption
Hoang et al. Privacy-preserving blockchain-based data sharing platform for decentralized storage systems
Tseng et al. FGAC-NDN: Fine-grained access control for named data networks
GB2599416A (en) Authentication system and method
Fugkeaw Enabling trust and privacy-preserving e-KYC system using blockchain
Borse et al. Anonymity: A secure identity management using smart contracts
Tiwari et al. SecAuth-SaaS: a hierarchical certificateless aggregate signature for secure collaborative SaaS authentication in cloud computing
Wang et al. Dynamic threshold ECDSA signature and application to asset custody in blockchain
Xiao et al. Blockchain based multi-authority fine-grained access control system with flexible revocation
Zhang et al. Cerberus: Privacy-preserving computation in edge computing
Yin et al. A privacy-preserving and identity-based personalized recommendation scheme for encrypted tasks in crowdsourcing
Li et al. A privacy-preserving lightweight energy data sharing scheme based on blockchain for smart grid
CN115834067A (zh) 一种边云协同场景中密文数据共享方法
Cui et al. Towards Multi-User, Secure, and Verifiable $ k $ NN Query in Cloud Database
Huynh et al. A reliability guaranteed solution for data storing and sharing
Yang et al. A blockchain based data monitoring and sharing approach for smart grids
Zhai et al. Fine-grained and fair identity authentication scheme for mobile networks based on blockchain

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