CN113438205B - 区块链数据访问控制方法、节点以及系统 - Google Patents

区块链数据访问控制方法、节点以及系统 Download PDF

Info

Publication number
CN113438205B
CN113438205B CN202110601557.0A CN202110601557A CN113438205B CN 113438205 B CN113438205 B CN 113438205B CN 202110601557 A CN202110601557 A CN 202110601557A CN 113438205 B CN113438205 B CN 113438205B
Authority
CN
China
Prior art keywords
data
node
key
request
source
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
CN202110601557.0A
Other languages
English (en)
Other versions
CN113438205A (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.)
Neusoft Corp
Original Assignee
Neusoft Corp
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 Neusoft Corp filed Critical Neusoft Corp
Priority to CN202110601557.0A priority Critical patent/CN113438205B/zh
Publication of CN113438205A publication Critical patent/CN113438205A/zh
Application granted granted Critical
Publication of CN113438205B publication Critical patent/CN113438205B/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/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/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/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/108Network architectures or network communication protocols for network security for controlling access to devices or network resources when the policy decisions are valid for a limited amount of time
    • 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)
    • 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/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
    • H04L9/3239Cryptographic 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 involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/3263Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

本公开涉及一种区块链数据访问控制方法、节点以及系统,应用于区块链网络中的目标节点的方法包括:响应于接收到数据请求节点发送的合约调用请求,基于数据访问控制合约执行如下操作:接收数据请求节点发送的数据请求,数据请求包括数据请求节点的身份信息以及用于解密加密源数据的部分密钥分片,所述加密源数据由数据源节点基于加密密钥对源数据加密得到,数据源节点将对应于所述加密密钥的解密密钥分割为多个密钥分片;向数据源节点发送密钥获取请求,以获得数据源节点发送的至少一个密钥分片;基于数据请求节点发送的密钥分片和所述数据源节点发送的密钥分片对所述加密源数据进行解密;向数据请求节点发送解密得到的源数据。

Description

区块链数据访问控制方法、节点以及系统
技术领域
本公开涉及区块链技术领域,具体地,涉及一种区块链数据访问控制方法、节点以及系统。
背景技术
区块链是一种能够通过去中心化和去信任的方式集体维护一个可靠数据库的技术。其能够把一段时间内发生的事务以区块为单位进行存储,并以密码学算法将区块按时间先后顺序连接,形成类似链条的一种数据结构。
相关场景中,区块链网络中的各节点之间可以进行数据交互。例如,节点A可以将相关数据加密,并上传至区块链中。相应的,节点B向节点A请求所述数据时,可以基于节点A获取到对应的解密密钥,从而通过对加密数据进行解密的方式获取到相应的数据。但是,这样的方式在授予节点B解密密钥之后便难以对节点B的数据访问过程进行管理和控制,可能影响数据安全性。
发明内容
本公开的目的是提供一种区块链数据访问控制方法、节点以及系统,以解决上述相关技术问题。
为了实现上述目的,根据本公开实施例的第一方面,提供一种区块链数据访问控制方法,应用于区块链网络中的目标节点,所述目标节点部署有数据访问控制合约,且所述数据访问控制合约的执行环境与所述目标节点之间系统隔离,所述方法包括:
响应于接收到数据请求节点发送的合约调用请求,基于所述数据访问控制合约执行如下操作:
接收所述数据请求节点发送的数据请求,所述数据请求包括所述数据请求节点的身份信息以及用于解密加密源数据的部分密钥分片,其中,所述加密源数据由数据源节点基于加密密钥对源数据加密得到,所述数据源节点将对应于所述加密密钥的解密密钥分割为多个密钥分片;
向所述数据源节点发送密钥获取请求,以获得所述数据源节点发送的至少一个密钥分片;
基于所述数据请求节点发送的密钥分片和所述数据源节点发送的密钥分片对所述加密源数据进行解密;
向所述数据请求节点发送解密得到的源数据。
可选地,所述方法还包括:
接收所述数据请求节点的数据访问授权请求,所述数据访问授权请求包括所述数据请求节点的身份信息以及所述数据请求节点请求访问的数据类型信息;
根据所述数据访问授权请求确定所述数据请求节点的数据访问授权信息,所述数据访问授权信息包括授权所述数据请求节点的密钥分片信息,所述数据访问授权信息用于所述数据请求节点向所述数据源节点请求与所述密钥分片信息相对应的密钥分片。
可选地,所述数据访问授权信息还包括授权时间信息,所述对所述加密源数据进行解密之前,还包括:确定所述数据请求节点发送所述数据请求的时间信息与所述授权时间信息相匹配;和/或,
所述数据访问授权信息还包括数据访问次数阈值,所述对所述加密源数据进行解密之前,还包括:确定所述数据请求节点访问所述类型的数据的次数小于所述数据访问次数阈值。
可选地,所述数据源节点通过shamir算法将解密密钥分割为多个密钥分片,所述向所述数据源节点发送密钥获取请求之前,还包括:
响应于接收到数据源节点的密钥切分请求,获取区块链网络的执行效率信息;
在所述执行效率信息表征所述区块链网络的执行效率低于第一效率阈值的情况下,减小解密所述加密源数据所需的密钥分片的数量值;或者,在所述执行效率信息表征所述区块链网络的执行效率高于第二效率阈值的情况下,增大解密所述加密源数据所需的密钥分片的数量值,所述第二效率阈值大于或等于所述第一效率阈值;
向所述数据源节点发送密钥分片策略信息,所述密钥分片策略信息包括解密所述加密源数据所需的密钥分片的数量值;
其中,所述密钥分片由所述数据源节点基于接收到的密钥分片策略信息对解密密钥分割得到。
可选的,所述向所述数据请求节点发送解密得到的源数据之后,所述操作还包括:
获取所述数据请求节点计算得到的第一哈希值,所述第一哈希值由所述数据请求节点基于获取到的解密后的源数据计算得到;
获取区块链中保存的与所述加密源数据相关联的第二哈希值,所述第二哈希值由所述数据源节点对所述加密源数据所对应的源数据计算得到;
确定所述第一哈希值与所述第二哈希值一致。
根据本公开实施例的第二方面,提供一种区块链数据访问控制方法,应用于区块链网络中的数据请求节点,所述方法包括:
向所述区块链网络中的目标节点发送合约调用请求,所述目标节点部署有数据访问控制合约,且所述数据访问控制合约的执行环境与所述目标节点之间系统隔离;
向所述数据访问控制合约发送数据请求,所述数据请求包括所述数据请求节点的身份信息以及用于解密加密源数据的部分密钥分片;
接收所述数据访问控制合约发送的解密得到的源数据;
其中,所述数据访问控制合约能够向数据源节点发送密钥获取请求,以获得所述数据源节点发送的至少一个密钥分片,并基于所述部分密钥分片和所述数据源节点发送的密钥分片对所述加密源数据进行解密。
可选地,所述方法还包括:
向所述目标节点发送数据访问授权请求,所述数据访问授权请求包括所述数据请求节点的身份信息以及所述数据请求节点请求访问的数据类型信息;
接收所述目标节点发送的数据访问授权信息,所述数据访问授权信息包括授权所述数据请求节点的密钥分片信息;
向所述数据源节点发送密钥分片获取请求,所述密钥分片获取请求包括所述目标节点授权所述数据请求节点的密钥分片信息;
接收所述数据源节点发送的与所述密钥分片信息相对应的密钥分片。
可选地,所述数据访问授权信息还包括授权时间信息和/或数据访问次数阈值。
可选地,还包括:
计算所述数据访问控制合约发送的源数据的第一哈希值;
获取区块链中保存的与所述加密源数据相关联的第二哈希值,所述第二哈希值由所述数据源节点对所述加密源数据所对应的源数据计算得到;
确定所述第一哈希值与所述第二哈希值一致。
根据本公开实施例的第三方面,提供一种区块链数据访问控制方法,应用于区块链网络中的数据源节点,所述方法包括:
基于加密密钥对源数据进行加密,得到加密源数据;
将所述加密密钥所对应的解密密钥分割为多个密钥分片;
接收所述区块链网络中的数据访问控制合约发送的密钥获取请求,所述数据访问控制合约部署在所述区块链网络中的目标节点,且所述数据访问控制合约的执行环境与所述目标节点之间系统隔离;
向所述数据访问控制合约发送对应于所述密钥获取请求的密钥分片;
其中,所述数据访问控制智能合约能够接收数据请求节点发送的用于解密所述加密源数据的部分密钥分片,并基于所述部分密钥分片和所述数据源节点发送的密钥分片对所述加密源数据进行解密。
可选地,所述将所述加密密钥所对应的解密密钥分割为多个密钥分片,包括:
向所述目标节点发送密钥切分请求;
接收所述目标节点发送的密钥分片策略信息,所述密钥分片策略信息包括解密所述加密源数据所需的密钥分片的数量值,所述解密所述加密源数据所需的密钥分片的数量值是所述目标节点基于区块链网络的执行效率信息确定的。
可选地,所述方法还包括:
接收所述数据请求节点发送的密钥分片获取请求,所述密钥分片获取请求包括所述数据请求节点已获取到授权的密钥分片的信息;
向所述数据请求节点发送与所述授权的密钥分片的信息相对应的密钥分片。
可选地,还包括:
计算所述源数据的第二哈希值;
将所述加密源数据和所述第二哈希值上传至区块链。
根据本公开实施例的第四方面,提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面中任一项所述方法的步骤。
根据本公开实施例的第五方面,提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第二方面中任一项所述方法的步骤。
根据本公开实施例的第六方面,提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第三方面中任一项所述方法的步骤。
根据本公开实施例的第七方面,提供一种目标节点,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述第一方面中任一项所述方法的步骤。
根据本公开实施例的第八方面,提供一种数据请求节点,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述第二方面中任一项所述方法的步骤。
根据本公开实施例的第九方面,提供一种数据源节点,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述第三方面中任一项所述方法的步骤。
根据本公开实施例的第十方面,提供一种区块链数据访问控制系统,包括上述第七方面所述的目标节点、上述第八方面所述的数据请求节点以及上述第九方面所述的数据源节点。
上述技术方案至少具备如下有益效果:
数据源节点通过加密密钥对源数据进行加密,可以得到加密源数据。此外,所述数据源节点还可以将对应的解密密钥进行分割,从而获得多个密钥分片。这样,在数据授权时,可以将部分密钥分片授权给数据请求节点,从而避免了数据请求节点获取到完整密钥,进而对所述数据源节点的其他数据进行解密的问题,有助于提升数据安全性。
此外,还可以通过在目标节点上设置数据访问控制合约的方式对所述加密源数据进行解密。例如,数据访问控制合约可以接收所述数据源节点的部分密钥分片,并通过向数据源节点发送请求的方式获取数据源节点的部分密钥分片,进而获得完整解密密钥。这样,数据访问控制合约可以基于完整密钥对所述加密源数据进行解密,从而将解密得到的源数据发送至所述数据请求节点,实现数据的秘密共享。并且,由于所述数据访问控制合约的执行环境与所述目标节点之间系统隔离,因此在加密源数据解密的过程中,所述目标节点也无法获知密钥的信息以及解密得到的源数据的内容。通过这样的方式,能够提升数据解密过程中的安全性。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是本公开一示例性实施例所示出的一种区块链数据访问控制方法的流程图。
图2是本公开一示例性实施例所示出的一种区块链数据访问控制方法的流程图。
图3是本公开一示例性实施例所示出的一种解密结果的验证流程图。
图4是本公开一示例性实施例所示出的一种区块链数据访问控制方法的流程图。
图5是本公开一示例性实施例所示出的一种区块链数据访问控制方法的流程图。
图6是本公开一示例性实施例所示出的一种目标节点的框图。
图7是本公开一示例性实施例所示出的一种数据请求节点的框图。
图8是本公开一示例性实施例所示出的一种数据源节点的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
在介绍本公开的区块链数据访问控制方法、节点以及系统之前,首先对本公开的应用场景进行介绍。本公开所提供的各实施例可以应用于区块链网络中的数据交互场景,从而可以对区块链节点之间的数据交互过程进行管理和控制。其中,所述区块链例如可以是公链、联盟链等等。
相关场景中,区块链网络中的各节点之间可以进行数据交互。例如,节点A可以将相关数据加密,并将加密数据上传至区块链中。相应的,节点B向节点A请求所述数据时,可以基于节点A获取到对应的解密密钥,从而通过对加密数据进行解密的方式获取到相应的数据。但是,节点B在获取到解密密钥之后也可以根据获取到的解密密钥对节点A的其他加密数据进行解密。或者,节点B可以无限制的访问所述加密数据,最终导致节点B的数据访问过程难以被管理和控制,甚至影响数据安全性。
为此,本公开提供一种区块链数据访问控制方法,应用于区块链网络中的目标节点,所述目标节点部署有数据访问控制合约,且所述数据访问控制合约的执行环境与所述目标节点之间系统隔离。其中,根据区块链网络类型的差异,所述目标节点例如可以是记账节点、背书节点等等。相应的,所述数据访问控制合约(即智能合约,本公开在后续的实施例中将智能合约简称为合约)的执行环境也可以存在着差异。例如,在以太坊中,所述执行环境可以是以太坊虚拟机,而在相关联盟链场景中,所述执行环境可以为合约容器。应当理解,所述数据访问控制合约的执行环境与所述目标节点之间是系统隔离的。
进一步的,参照图1所示出的一种区块链数据访问控制方法的流程图,所述方法包括:
所述目标节点响应于接收到数据请求节点发送的合约调用请求,基于所述数据访问控制合约执行如下操作:
在步骤S11中,接收数据请求节点发送的数据请求,所述数据请求包括所述数据请求节点的身份信息以及用于解密加密源数据的部分密钥分片。
其中,所述合约调用请求例如可以以交易的方式实现。当所述执行环境为合约容器时,本实施例可以是指在合约容器中执行所述数据访问控制合约,以实现步骤S11至步骤S14所描述的内容。
针对所述加密源数据,所述加密源数据由数据源节点基于加密密钥对源数据加密得到,所述数据源节点将对应于所述加密密钥的解密密钥分割为多个密钥分片。
举例来讲,在一些实施场景中,考虑到数据源节点的公钥是公开的,因此所述数据源节点可以基于自身的公钥对所述源数据进行加密,并对自身的私钥进行分割,从而得到多个密钥分片。在另一些实施场景中,所述数据源节点也可以向CA(CertificateAuthority,认证中心)申请一对用于对源数据进行加密解密的非对称密钥证书对。在这种情况下,所述数据源节点可以基于所述证书对中的任一密钥证书对所述源数据进行加密,并对所述证书对中的另一密钥证书进行密钥分割。
这样,在接收到所述数据请求节点发送的数据请求之后,可以基于所述数据请求中的数据请求节点的身份信息对所述数据请求节点进行验证。例如,可以基于所述身份信息判断所述数据请求节点是否具备数据请求权限,并在所述数据请求节点不具备数据请求权限的情况下拒绝响应所述数据请求。
若所述数据请求节点具备数据请求权限,则在步骤S12中,向数据源节点发送密钥获取请求,以获得所述数据源节点发送的至少一个密钥分片。
举例来讲,所述数据源节点例如可以将解密密钥分割为密钥分片1-10,所述数据请求节点在发送所述数据请求之前已经获得了密钥分片1-3。在这种情况下,所述数据访问控制合约可以向所述数据源节点请求剩余的密钥分片4-10。
此外,在一些实施场景中,基于密钥分片的生成方式的差异,在解密所述加密源数据时可能无需获取全部密钥分片。
例如,所述数据源节点可以通过shamir算法将解密密钥分割为多个密钥分片。首先选择有限域Fq,q≥n。设定数据请求节点集合P={P1,P2,……,Pn},(n为数据请求节点的数量)、门限值k(即解密所需要的密钥分片的数量值)以及秘密信息s。这样,可以选择Fq上的n个互不相同的非零元素x1,x2,…,xn,并公开这些元素。此外,还可以随机选择Fq上的k-1次多项式f(x)=a0+a1x+…+ak-1x(k-1)。其中a0=s,即解密密钥,其余的ai可以从Fq中随机选择。进一步的,可以分别计算si=f(xi),i=1,2,…,n,并将(xi,si)作为密钥分片分发给数据请求节点Pi。这样,数据源节点可以拥有全部的密钥分片,而数据请求节点则可以被授权拥有部分密钥分片。并且,这样的密钥分片方式也使得密钥恢复过程不依赖于密钥分片的顺序,在k值设定合理的情况下,个别密钥分片的损坏也不会影响解密效果,从而能够避免因网络波动等原因造成个别密钥分片传输错误导致的加密数据再也无法被正确解密的问题。
进一步地,在这种情况下,所述操作还可以包括:
响应于接收到数据源节点的密钥切分请求,获取区块链网络的执行效率信息。其中,区块链网络的执行效率信息例如可以以出块时间、合约的平均执行时长等方式进行描述。在具体应用时,可以通过区块链网络中的相关监测服务获取到所述执行效率信息。例如,所述数据访问控制合约可以通过区块链浏览器等方式获取到区块链网络的运行状态,从而确定所述执行效率信息。
这样,在所述执行效率信息表征所述区块链网络的执行效率低于第一效率阈值的情况下,所述数据访问控制合约可以减小解密所述加密源数据所需的密钥分片的数量值。例如,在解密所述加密源数据所需的密钥分片的初始数量值为10、且监测到当前区块链网络的执行效率较低或网络负载较高的情况下,可以将该数量值减小至7。
或者,在所述执行效率信息表征所述区块链网络的执行效率高于第二效率阈值的情况下,增大解密所述加密源数据所需的密钥分片的数量值。其中,所述第一阈值和所述第二阈值可以基于应用需求进行设置,所述第二效率阈值大于或等于所述第一效率阈值。
进一步的,在确定解密所述加密源数据所需的密钥分片的数量值之后,所述数据访问控制合约可以向所述数据源节点发送密钥分片策略信息,所述密钥分片策略信息包括解密所述加密源数据所需的密钥分片的数量值。相应的,所述数据源节点可以基于接收到的密钥分片策略信息对解密密钥进行分割,具体分割方式请参照上述关于shamir算法的说明,其中K即为解密所述加密源数据所需的密钥分片的数量值,本公开在此不做赘述。
采用上述技术方案,能够结合区块链网络的运行状态对解密所需的密钥分片的数量值进行动态调整。例如,在网络负载较高时可以降低解密所需的密钥分片的数量值,从而获得更高的执行效率;在网络负载较低时可以增大解密所需的密钥分片的数量值,从而获得更高的安全性。
当然,在一些可能的实施方式中,也可以制定与所述数据访问控制合约相互解耦的密钥分片合约。这样,可以通过该密钥分片合约实现上述从接收到数据源节点的密钥切分请求至向所述数据源节点发送密钥分片策略信息的过程。在另一些实施场景中,也可以不基于合约的方式实现上述过程。例如,可以由所述目标节点实现上述从接收到数据源节点的密钥切分请求至向所述数据源节点发送密钥分片策略信息的过程,本公开对此不做限制。
此外值得说明的是,在一些实施场景中,所述数据请求中包括的密钥分片也可以是所述数据请求节点所拥有的密钥分片中的一部分。举例来讲,可以通过shamir算法将解密密钥分割为10个密钥分片,并设定解密所需的密钥分片的数量值为7。这样,在数据请求节点获得密钥分片1-3的情况下,所述数据请求节点可以在第一次请求数据时,向数据访问控制合约发送包括密钥分片1的数据请求。相应的,所述数据访问控制合约可以向所述数据源节点请求解密所需的剩余密钥分片。这里,解密所需的剩余密钥分片可以是指密钥分片2-10中的任意6个密钥分片,例如密钥分片2-7。此外,所述数据请求节点可以在第二次请求数据时,向数据访问控制合约发送包括密钥分片3的数据请求,并由数据访问控制合约向所述数据源节点请求解密所需的剩余密钥分片,例如密钥分片5-10。也就是说,所述数据请求节点和所述数据源节点在多次解密的过程中可以使用不同的密钥分片,从而有助于降低解密密钥的泄露风险。
在步骤S13中,基于所述数据请求节点发送的密钥分片和所述数据源节点发送的密钥分片对所述加密源数据进行解密。
其中,所述加密源数据可以是所述数据请求节点发送得到的,也可以是所述数据访问控制合约从区块链中获取得到的,本公开对此不做限制。
针对所述解密密钥,在一些实施场景中,数据访问控制合约可以基于获取到的密钥分片进行组合,从而获得完整解密密钥。在另一些实施场景中,所述密钥分片基于shamir算法生成,在这种情况下则可以基于拉格朗日插值公式恢复解密密钥。其中,拉格朗日插值公式请参照相关技术的说明,本公开在此不做赘述。
在步骤S14中,向所述数据请求节点发送解密得到的源数据。例如,参照图2所示出的一种区块链数据访问控制方法的流程图,所述数据访问控制合约在解密得到所述源数据之后,无需经过所述目标节点,便可以将所述源数据写入至所述数据请求节点的私有数据容器中。此外,还可以将所述数据访问控制合约的每一次执行记录(例如数据请求节点的信息、数据请求的时间等等)上传至区块链中进行保存,以满足相关的执行记录追溯需求。
采用上述技术方案,数据源节点可以通过加密密钥对源数据进行加密,得到加密源数据。此外,所述数据源节点还可以将对应的解密密钥进行分割,从而获得多个密钥分片。这样,在数据授权时,可以将部分密钥分片授权给数据请求节点,从而避免了数据请求节点获取到完整密钥,进而对所述数据源节点的其他数据进行解密的问题,有助于提升数据安全性。
此外,还可以通过在目标节点上设置数据访问控制合约的方式对所述加密源数据进行解密。例如,数据访问控制合约可以接收所述数据源节点的部分密钥分片,并通过向数据源节点发送请求的方式获取数据源节点的部分密钥分片,进而获得完整解密密钥。这样,数据访问控制合约可以基于完整密钥对所述加密源数据进行解密,从而将解密得到的源数据发送至所述数据请求节点,实现数据的秘密共享。并且,由于所述数据访问控制合约的执行环境与所述目标节点之间系统隔离,因此在加密源数据解密的过程中,所述目标节点也无法获知密钥的信息以及解密得到的源数据的内容。通过这样的方式,能够提升数据解密过程中的安全性。
在一种可能的实施方式中,所述方法还包括:
接收所述数据请求节点的数据访问授权请求。其中,所述数据访问授权请求包括所述数据请求节点的身份信息以及所述数据请求节点请求访问的数据类型信息。所述身份信息可以用于对所述数据请求节点进行身份验证,所述数据类型信息在具体实施时例如可以与所述数据请求节点所涉及的业务类型相关联。
这样,所述目标节点可以根据所述数据访问授权请求确定所述数据请求节点的数据访问授权信息。所述数据访问授权信息包括授权所述数据请求节点的密钥分片信息。所述数据访问授权信息用于所述数据请求节点向所述数据源节点请求与所述密钥分片信息相对应的密钥分片。
例如,所述目标节点在接收到所述数据访问授权请求之后,可以根据所述身份信息对所述数据请求节点进行身份验证,以确定所述数据请求节点是否满足对应类型的数据的访问授权条件。在所述数据请求节点满足授权条件的情况下,则可以根据对应类型数据的解密密钥的分片情况确定授权给所述数据请求节点的密钥分片的信息。示例地,在解密密钥包括密钥分片1-8的情况下,可以将密钥分片2、4、6授权至所述数据请求节点。相应的,所述数据请求节点可以基于所述数据访问授权信息向对应的数据源节点请求获得所述密钥分片2、4、6。
当然,上述数据请求节点获得数据访问授权信息的过程也可以基于访问授权合约实现。例如,节点可以基于访问授权合约执行上述对数据请求节点授权密钥分片的步骤。其中,所述访问授权合约可以与所述数据访问控制合约属于同一合约。所述访问授权合约也可以是与所述数据访问控制合约不同的合约,在这种情况下可以通过合约调用的方式结合所述数据访问控制合约对节点间的数据访问过程进行控制。
在一些可能的实施方式中,所述数据访问授权信息还包括授权时间信息,所述对所述加密源数据进行解密之前,还包括:确定所述数据请求节点发送所述数据请求的时间信息与所述授权时间信息相匹配。
例如,所述授权时间信息为5月1日至5月7日,当所述数据请求节点在5月1日至5月7日期间发送数据请求时,所述数据访问控制合约可以对所述数据请求进行响应。当所述数据请求节点在5月8日发送数据请求时,所述数据访问控制合约可以判断所述数据请求的发送时间与授权时间信息不匹配,从而拒绝对所述数据请求进行响应。
在一些可能的实施方式中,所述数据访问授权信息还包括数据访问次数阈值,所述对所述加密源数据进行解密之前,还包括:确定所述数据请求节点访问所述类型的数据的次数小于所述数据访问次数阈值。
例如,所述数据访问次数阈值为20,当所述数据请求节点发送数据请求时,所述数据访问控制合约可以在区块链中查询该数据请求节点已访问对应类型数据的次数。当所述数据请求节点访问所述类型的数据的次数大于20次时,所述数据访问控制合约可以拒绝对所述数据请求进行响应。
也就是说,可以通过设定不同的次数阈值,从而对数据请求节点的访问次数进行不同程度的限制。因此,上述技术方案有助于提升数据访问控制的灵活性。
此外值得说明的是,上述实施例中分别以数据访问授权信息包括授权时间信息以及数据访问授权信息包括数据访问次数阈值为例对本申请的区块链数据访问控制方法进行了说明。但本领域技术人员知晓,在具体实施时,也可以将上述技术方案结合应用,即数据访问授权信息同时包括授权时间信息以及数据访问次数阈值,本公开对此不做限制。
在一种可能的实施方式中,所述向所述数据请求节点发送解密得到的源数据之后,所述操作还包括:
获取所述数据请求节点计算得到的第一哈希值,所述第一哈希值由所述数据请求节点基于获取到的解密后的源数据计算得到;
获取区块链中保存的与所述加密源数据相关联的第二哈希值,所述第二哈希值由所述数据源节点对所述加密源数据所对应的源数据计算得到;
确定所述第一哈希值与所述第二哈希值一致。
参照图3所示出的一种解密结果的验证流程图,所述数据源节点可以计算源数据的第二哈希值,并将所述第二哈希值与加密源数据上传至区块链账本中。所述数据请求节点在获取到解密得到的源数据之后,也可以计算获得的源数据的第一哈希值,并将所述第一哈希值上传至区块链账本中。这样,所述数据访问控制合约可以获取所述第一哈希值以及第二哈希值。在所述第一哈希值与所述第二哈希值相同时,则可以确定解密数据正确。相应的,在所述第一哈希值与所述第二哈希值不同时,则可以确定解密数据错误。在这种情况下,所述数据访问控制合约还可以向所述数据请求节点发送解密数据异常信息,并将解密数据异常信息记录至区块链账本中。
当然,除了图3的示例,在一些实施场景中,所述数据访问控制合约也可以通过直接向数据请求节点以及数据源节点发送请求的方式获取到所述第一哈希值与所述第二哈希值,本公开对此不做限制。
通过这样的方式,在解密完成后还能够在不泄密解密结果的情况下对解密数据进行验证,从而保证解密结果的正确性。
基于同样的发明构思,本公开还提供一种区块链数据访问控制方法,应用于区块链网络中的数据请求节点,所述数据请求节点可以是上述任一实施例中所述的数据请求节点。参照图4所示出的一种区块链数据访问控制方法的流程图,所述方法包括:
在步骤S41中,向区块链网络中的目标节点发送合约调用请求。其中,所述合约调用请求例如可以以交易的方式实现。所述目标节点部署有数据访问控制合约,且所述数据访问控制合约的执行环境与所述目标节点之间系统隔离。
在步骤S42中,向所述数据访问控制合约发送数据请求,所述数据请求包括所述数据请求节点的身份信息以及用于解密加密源数据的部分密钥分片。
其中,所述加密源数据由数据源节点基于加密密钥对源数据加密得到,所述数据源节点将对应于所述加密密钥的解密密钥分割为多个密钥分片。
举例来讲,所述数据源节点例如可以将解密密钥分割为密钥分片1-10,所述数据请求节点可以被授权所述密钥分片1-10中的部分密钥分片。例如,在所述数据请求节点获得密钥分片1-3的情况下,所述数据请求节点可以向所述数据访问控制合约发送数据请求,所述数据请求包括所述数据请求节点的身份信息以及所述密钥分片1-3。
当然,所述数据请求节点在多次解密的过程中也可以发送自身所拥有的一部分密钥分片(例如密钥分片1或密钥分片2),以降低密钥泄露的风险。此外,在一些实施场景中,所述数据请求节点也可以将加密源数据发送至所述数据访问控制合约,以便于所述数据访问控制合约进行解密。
在步骤S43中,接收所述数据访问控制合约发送的解密得到的源数据。
其中,所述数据访问控制合约能够向数据源节点发送密钥获取请求,以获得所述数据源节点发送的至少一个密钥分片,并基于所述部分密钥分片和所述数据源节点发送的密钥分片对所述加密源数据进行解密。例如,在数据源节点将解密密钥分割为密钥分片1-10,且所述数据请求节点发送的数据请求包括密钥分片1-3的情况下,所述数据访问控制合约可以向所述数据源节点请求剩余的密钥分片4-10。从而根据密钥分片1-10获得完整解密密钥,进而对加密源数据进行解密。例如,参照图2所示出的一种区块链数据访问控制方法的流程图,所述数据访问控制合约在解密得到所述源数据之后,无需经过所述目标节点,便可以将所述源数据写入至所述数据请求节点的私有数据容器中,从而保证源数据的安全性。
在一种可能的实施方式中,所述方法还包括:
向所述目标节点发送数据访问授权请求,所述数据访问授权请求包括所述数据请求节点的身份信息以及所述数据请求节点请求访问的数据类型信息。所述身份信息可以用于对所述数据请求节点进行身份验证,所述数据类型信息在具体实施时可以与所述数据请求节点所涉及的业务类型相关联。
接收所述目标节点发送的数据访问授权信息,所述数据访问授权信息包括授权所述数据请求节点的密钥分片信息。例如,所述目标节点在接收到所述数据访问授权请求之后,可以根据所述身份信息对所述数据请求节点进行身份验证,以确定所述数据请求节点是否满足对应类型的数据的访问授权条件。在所述数据请求节点满足授权条件的情况下,则可以根据对应类型数据的解密密钥的分片情况确定授权给所述数据请求节点的密钥分片的信息。示例地,在解密密钥包括密钥分片1-8的情况下,可以将密钥分片2、4、6授权至所述数据请求节点,即所述数据访问授权信息包括已授权的密钥分片为密钥分片2、4、6。
这样,所述数据请求节点可以向所述数据源节点发送密钥分片获取请求,所述密钥分片获取请求包括所述目标节点授权所述数据请求节点的密钥分片信息,并接收所述数据源节点发送的与所述密钥分片信息相对应的密钥分片。
沿用上述例子,所述数据请求节点可以基于所述数据访问授权信息向对应的数据源节点请求获得所述密钥分片2、4、6。
值得注意的是,上述数据请求节点获得数据访问授权信息的过程也可以基于访问授权合约实现。例如,节点可以基于访问授权合约执行上述对数据请求节点授权密钥分片的步骤。在这种情况下,所述数据请求节点可以向部署所述访问授权合约的节点发送合约调用请求,从而进行上述的数据访问授权过程。
其中,所述访问授权合约可以与所述数据访问控制合约属于同一合约。所述访问授权合约也可以是与所述数据访问控制合约不同的合约,在这种情况下可以通过合约调用的方式实现上述功能。
在一种可能的实施方式中,所述数据访问授权信息还包括授权时间信息和/或数据访问次数阈值,从而提升数据访问控制的灵活性。
在一种可能的实施方式中,所述方法还包括:
计算所述数据访问控制合约发送的源数据的第一哈希值;
获取区块链中保存的与所述加密源数据相关联的第二哈希值,所述第二哈希值由所述数据源节点对所述加密源数据所对应的源数据计算得到;
确定所述第一哈希值与所述第二哈希值一致。
通过这样的方式,在解密完成后还能够在不泄密解密结果的情况下对解密数据进行验证,从而保证解密结果的真实性。
参照图3所示出的一种解密结果的验证流程图,在一些可能的实施场景中,所述数据源节点可以计算源数据的第二哈希值,并将所述第二哈希值与加密源数据上传至区块链账本中。所述数据请求节点在获取到解密得到的源数据之后,也可以计算获得的源数据的第一哈希值,并将所述第一哈希值上传至区块链账本中。这样,所述数据访问控制合约可以获取所述第一哈希值以及第二哈希值。在所述第一哈希值与所述第二哈希值相同时,则可以确定解密数据正确。在这种情况下,所述数据访问控制合约还可以向所述数据请求节点发送表征解密数据验证通过的响应消息。相应的,在所述第一哈希值与所述第二哈希值不同时,则可以确定解密数据错误,所述数据访问控制合约还可以向所述数据请求节点发送解密数据异常信息,并将解密数据异常信息记录至区块链账本中。
这样,当所述数据请求节点接收到所述确定所述数据访问控制合约发送的表征解密数据验证通过的响应消息时,即可确定所述第一哈希值与所述第二哈希值一致,本公开对此不做限制。
基于同一发明构思,本公开还提供一种区块链数据访问控制方法,应用于区块链网络中的数据源节点,所述数据源节点可以是上述任一实施例中所述的数据源节点。参照图5所示出的一种区块链数据访问控制方法的流程图,所述方法包括:
在步骤S51中,基于加密密钥对源数据进行加密,得到加密源数据。
在步骤S52中,将所述加密密钥所对应的解密密钥分割为多个密钥分片。
举例来讲,在一些实施场景中,考虑到数据源节点的公钥是公开的,因此所述数据源节点可以基于自身的公钥对所述源数据进行加密,并对自身的私钥进行分割,从而得到多个密钥分片。
在另一些实施场景中,所述数据源节点也可以向CA申请一对用于对源数据进行加密解密的证书对。在这种情况下,所述数据源节点可以基于所述证书对中的任一密钥证书对所述源数据进行加密,并对所述证书对中的另一密钥证书进行密钥分割,从而得到多个密钥分片。
在另一些实施场景中,所述数据源节点可以通过shamir算法将解密密钥分割为多个密钥分片。
例如,所述数据源节点可以向所述数据访问控制合约发送密钥切分请求。相应的,所述数据访问控制合约可以响应所述密钥切分请求,获取区块链网络的执行效率信息。其中,区块链网络的执行效率信息例如可以以出块时间、合约的平均执行时长等方式进行描述。在具体应用时,可以通过区块链网络中的相关监测服务获取到所述执行效率信息。例如,所述数据访问控制合约可以通过区块链浏览器等方式获取到区块链网络的运行状态,从而确定所述执行效率信息。
这样,在所述执行效率信息表征所述区块链网络的执行效率低于第一效率阈值的情况下,所述数据访问控制合约可以减小解密所述加密源数据所需的密钥分片的数量值。例如,在解密所述加密源数据所需的密钥分片的初始数量值为10、且监测到当前区块链网络的执行效率较低或网络负载较高的情况下,可以将该数量值减小至7。
或者,在所述执行效率信息表征所述区块链网络的执行效率高于第二效率阈值的情况下,增大解密所述加密源数据所需的密钥分片的数量值。其中,所述第一阈值和所述第二阈值可以基于应用需求进行设置,所述第二效率阈值大于或等于所述第一效率阈值。
进一步的,在确定解密所述加密源数据所需的密钥分片的数量值之后,所述数据访问控制合约可以向所述数据源节点发送密钥分片策略信息,所述密钥分片策略信息包括解密所述加密源数据所需的密钥分片的数量值。相应的,所述数据源节点可以基于接收到的密钥分片策略信息对解密密钥进行分割。
例如,可以首先选择有限域Fq,q≥n。设定数据请求节点集合P={P1,P2,……,Pn},门限值k(即解密所述加密源数据所需要的密钥分片的数量值)以及秘密信息s。这样,可以选择Fq上的n个互不相同的非零元素x1,x2,…,xn,并公开这些元素。此外,还可以随机选择Fq上的k-1次多项式f(x)=a0+a1x+…+ak-1x(k-1)。其中a0=s,也就是解密密钥,其余的ai可以从Fq中随机选择。进一步的,可以分别计算si=f(xi),i=1,2,…,n,并将(xi,si)作为密钥分片分发给数据请求节点Pi。这样,数据源节点可以拥有全部的密钥分片,而数据请求节点则可以被授权拥有部分密钥分片。并且,这样的密钥分片方式也使得密钥恢复过程不依赖于密钥分片的顺序,在k值设定合理的情况下,个别密钥分片的损坏也不会影响解密效果,从而能够避免因网络波动等原因造成个别密钥分片传输错误导致的加密数据再也无法被正确解密的问题。
此外,上述技术方案还能够结合区块链网络的运行状态对解密所需的密钥分片的数量值进行动态调整。例如,在网络负载较高时可以降低解密所需的密钥分片的数量值,从而获得更高的执行效率;在网络负载较低时可以增大解密所需的密钥分片的数量值,从而获得更高的安全性。
当然,在一些可能的实施方式中,也可以制定与所述数据访问控制合约相互解耦的密钥分片合约。这样,可以通过该密钥分片合约实现上述从接收到数据源节点的密钥切分请求至向所述数据源节点发送密钥分片策略信息的过程。在另一些实施场景中,也可以不基于合约的方式实现上述过程。例如,可以由所述目标节点实现上述从接收到数据源节点的密钥切分请求至向所述数据源节点发送密钥分片策略信息的过程,本公开对此不做限制。
在步骤S53中,接收区块链网络中的数据访问控制合约发送的密钥获取请求,所述数据访问控制合约部署在所述区块链网络中的目标节点,且所述数据访问控制合约的执行环境与所述目标节点之间系统隔离。
在步骤S54中,向所述数据访问控制合约发送对应于所述密钥获取请求的密钥分片。
其中,所述数据访问控制智能合约能够接收数据请求节点发送的用于解密所述加密源数据的部分密钥分片,并基于所述部分密钥分片和所述数据源节点发送的密钥分片对所述加密源数据进行解密。
举例来讲,所述数据源节点例如可以将解密密钥分割为密钥分片1-10,所述数据请求节点发送的数据请求包括密钥分片1-3。在这种情况下,所述数据访问控制合约可以向所述数据源节点请求剩余的密钥分片4-10。
此外,在所述密钥分片基于shamir算法生成的情况下,所述数据访问控制合约则可以基于拉格朗日插值公式恢复解密密钥。并且,由于这种情况下在解密时可能不需要全部的密钥分片,因此,所述数据源节点在多次解密的过程中也可以发送自身所拥有的不同的密钥分片。例如在数据请求节点发送的数据请求包括密钥分片1-3,解密所需要的密钥分片的数量为5时,所述数据源节点在第一次解密过程中可以发送密钥分片4和密钥分片5,在第二次解密过程中则可以发送密钥分片4和密钥分片6,从而降低密钥泄露的风险。
采用上述技术方案,数据源节点可以通过加密密钥对源数据进行加密,得到加密源数据。此外,所述数据源节点还可以将对应的解密密钥进行分割,从而获得多个密钥分片。这样,在数据授权时,可以将部分密钥分片授权给数据请求节点,从而避免了数据请求节点获取到完整密钥,进而对所述数据源节点的其他数据进行解密的问题,有助于提升数据安全性。
在一种可能的实施方式中,所述方法还包括:
接收所述数据请求节点发送的密钥分片获取请求,所述密钥分片获取请求包括所述数据请求节点已获取到授权的密钥分片的信息;
向所述数据请求节点发送与所述授权的密钥分片的信息相对应的密钥分片。
例如,所述数据请求节点可以向所述目标节点发送数据访问授权请求,所述数据访问授权请求包括所述数据请求节点的身份信息以及所述数据请求节点请求访问的数据类型信息。所述身份信息可以用于对所述数据请求节点进行身份验证,所述数据类型信息在具体实施时例如可以与所述数据请求节点所涉及的业务类型相关联。
所述数据请求节点还可以接收所述目标节点发送的数据访问授权信息,所述数据访问授权信息包括授权所述数据请求节点的密钥分片信息。例如,所述目标节点在接收到所述数据访问授权请求之后,可以根据所述身份信息对所述数据请求节点进行身份验证,以确定所述数据请求节点是否满足对应类型的数据的访问授权条件。在所述数据请求节点满足授权条件的情况下,则可以根据对应类型数据的解密密钥的分片情况确定授权给所述数据请求节点的密钥分片的信息。示例地,在解密密钥包括密钥分片1-8的情况下,可以将密钥分片2、4、6授权至所述数据请求节点,即所述数据访问授权信息包括已授权的密钥分片为密钥分片2、4、6。
这样,所述数据请求节点可以向所述数据源节点发送密钥分片获取请求,所述密钥分片获取请求包括所述目标节点授权所述数据请求节点的密钥分片信息。相应的,所述数据源节点可以向所述数据请求节点发送与所述授权的密钥分片的信息相对应的密钥分片。
沿用上述例子,所述数据源节点可以基于所述数据访问授权信息向对应的数据请求节点发送所述密钥分片2、4、6。
在一种可能的实施方式中,所述方法还包括:
计算所述源数据的第二哈希值;
将所述加密源数据和所述第二哈希值上传至区块链。
参照图3所示出的一种解密结果的验证流程图,在一些可能的实施场景中,所述数据源节点可以计算源数据的第二哈希值,并将所述第二哈希值与加密源数据上传至区块链账本中,以便于对解密后的源数据进行验证。其中具体验证方式请参照上述实施例中的说明,为了说明书的简洁,本公开在此不做赘述。
本公开还提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述用于目标节点的区块链数据访问控制方法的步骤。
本公开还提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述用于数据请求节点的区块链数据访问控制方法的步骤。
本公开还提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述用于数据源节点的区块链数据访问控制方法的步骤。
本公开还提供一种目标节点,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述用于目标节点的区块链数据访问控制方法的步骤。
本公开还提供一种数据请求节点,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述用于数据请求节点的区块链数据访问控制方法的步骤。
本公开还提供一种数据源节点,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述用于数据源节点的区块链数据访问控制方法的步骤。
图6是根据一示例性实施例示出的一种目标节点600的框图。如图6所示,该目标节点600可以包括:处理器601,存储器602。该目标节点600还可以包括多媒体组件603,输入/输出(I/O)接口604,以及通信组件605中的一者或多者。
其中,处理器601用于控制该目标节点600的整体操作,以完成上述的用于目标节点的区块链数据访问控制方法中的全部或部分步骤。存储器602用于存储各种类型的数据以支持在该目标节点600的操作,这些数据例如可以包括用于在该目标节点600上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如区块账本数据、收发的消息、图片等等。该存储器602可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件603可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器602或通过通信组件605发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口604为处理器601和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件605用于该目标节点600与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件605可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,目标节点600可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的用于目标节点的区块链数据访问控制方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的用于目标节点的区块链数据访问控制方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器602,上述程序指令可由目标节点600的处理器601执行以完成上述的用于目标节点的区块链数据访问控制方法。
图7是根据一示例性实施例示出的一种数据请求节点700的框图。如图7所示,该数据请求节点700可以包括:处理器701,存储器702。该数据请求节点700还可以包括多媒体组件703,输入/输出(I/O)接口704,以及通信组件705中的一者或多者。
其中,处理器701用于控制该数据请求节点700的整体操作,以完成上述的用于数据请求节点的区块链数据访问控制方法中的全部或部分步骤。存储器702用于存储各种类型的数据以支持在该数据请求节点700的操作,这些数据例如可以包括用于在该数据请求节点700上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如区块账本数据、收发的消息、图片等等。该存储器702可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-OnlyMemory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-OnlyMemory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件703可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器702或通过通信组件705发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口704为处理器701和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件705用于该数据请求节点700与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件705可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,数据请求节点700可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的用于数据请求节点的区块链数据访问控制方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的用于数据请求节点的区块链数据访问控制方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器702,上述程序指令可由数据请求节点700的处理器701执行以完成上述的用于数据请求节点的区块链数据访问控制方法。
图8是根据一示例性实施例示出的一种数据源节点800的框图。如图8所示,该数据源节点800可以包括:处理器801,存储器802。该数据源节点800还可以包括多媒体组件803,输入/输出(I/O)接口804,以及通信组件805中的一者或多者。
其中,处理器801用于控制该数据源节点800的整体操作,以完成上述的用于数据源节点的区块链数据访问控制方法中的全部或部分步骤。存储器802用于存储各种类型的数据以支持在该数据源节点800的操作,这些数据例如可以包括用于在该数据源节点800上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如区块账本数据、收发的消息、图片等等。该存储器802可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件803可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器802或通过通信组件805发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口804为处理器801和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件805用于该数据源节点800与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件805可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,数据源节点800可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的用于数据源节点的区块链数据访问控制方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的用于数据源节点的区块链数据访问控制方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器802,上述程序指令可由数据源节点800的处理器801执行以完成上述的用于数据源节点的区块链数据访问控制方法。
本公开还提供一种区块链数据访问控制系统,包括上述实施例中所述的目标节点、上述实施例中所述的数据请求节点以及上述实施例中所述的数据源节点。
采用上述技术方案,数据源节点可以通过加密密钥对源数据进行加密,从而得到加密源数据。此外,所述数据源节点还可以将对应的解密密钥进行分割,从而获得多个密钥分片。这样,在数据授权时,可以将部分密钥分片授权给数据请求节点,从而避免了数据请求节点获取到完整密钥,进而对所述数据源节点的其他数据进行解密的问题,有助于提升数据安全性。
此外,还可以通过在目标节点上设置数据访问控制合约的方式对所述加密源数据进行解密。例如,数据访问控制合约可以接收所述数据源节点的部分密钥分片,并通过向数据源节点发送请求的方式获取数据源节点的部分密钥分片,进而获得完整解密密钥。这样,数据访问控制合约可以基于完整密钥对所述加密源数据进行解密,从而将解密得到的源数据发送至所述数据请求节点,实现数据的秘密共享。并且,由于所述数据访问控制合约的执行环境与所述目标节点之间系统隔离,因此在加密源数据解密的过程中,所述目标节点也无法获知密钥的信息以及解密得到的源数据的内容。通过这样的方式,能够提升数据解密过程中的安全性。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的用于目标节点的区块链数据访问控制方法的代码部分。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的用于数据请求节点的区块链数据访问控制方法的代码部分。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的用于数据源节点的区块链数据访问控制方法的代码部分。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

Claims (20)

1.一种区块链数据访问控制方法,其特征在于,应用于区块链网络中的目标节点,所述目标节点部署有数据访问控制合约,且所述数据访问控制合约的执行环境与所述目标节点之间系统隔离,所述方法包括:
响应于接收到数据请求节点发送的合约调用请求,基于所述数据访问控制合约执行如下操作:
接收所述数据请求节点发送的数据请求,所述数据请求包括所述数据请求节点的身份信息以及用于解密加密源数据的部分密钥分片,其中,所述加密源数据由数据源节点基于加密密钥对源数据加密得到,所述数据源节点将对应于所述加密密钥的解密密钥分割为多个密钥分片;
向所述数据源节点发送密钥获取请求,以获得所述数据源节点发送的至少一个密钥分片;
基于所述数据请求节点发送的密钥分片和所述数据源节点发送的密钥分片对所述加密源数据进行解密;
向所述数据请求节点发送解密得到的源数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述数据请求节点的数据访问授权请求,所述数据访问授权请求包括所述数据请求节点的身份信息以及所述数据请求节点请求访问的数据类型信息;
根据所述数据访问授权请求确定所述数据请求节点的数据访问授权信息,所述数据访问授权信息包括授权所述数据请求节点的密钥分片信息,所述数据访问授权信息用于所述数据请求节点向所述数据源节点请求与所述密钥分片信息相对应的密钥分片。
3.根据权利要求2所述的方法,其特征在于,
所述数据访问授权信息还包括授权时间信息,所述对所述加密源数据进行解密之前,还包括:确定所述数据请求节点发送所述数据请求的时间信息与所述授权时间信息相匹配;和/或,
所述数据访问授权信息还包括数据访问次数阈值,所述对所述加密源数据进行解密之前,还包括:确定所述数据请求节点访问所述类型的数据的次数小于所述数据访问次数阈值。
4.根据权利要求1所述的方法,其特征在于,所述数据源节点通过shamir算法将解密密钥分割为多个密钥分片,所述方法还包括:
响应于接收到数据源节点的密钥切分请求,获取区块链网络的执行效率信息;
在所述执行效率信息表征所述区块链网络的执行效率低于第一效率阈值的情况下,减小解密所述加密源数据所需的密钥分片的数量值;或者,在所述执行效率信息表征所述区块链网络的执行效率高于第二效率阈值的情况下,增大解密所述加密源数据所需的密钥分片的数量值,所述第二效率阈值大于或等于所述第一效率阈值;
向所述数据源节点发送密钥分片策略信息,所述密钥分片策略信息包括解密所述加密源数据所需的密钥分片的数量值;
其中,所述密钥分片由所述数据源节点基于接收到的密钥分片策略信息对解密密钥分割得到。
5.根据权利要求1所述的方法,其特征在于,所述向所述数据请求节点发送解密得到的源数据之后,所述操作还包括:
获取所述数据请求节点计算得到的第一哈希值,所述第一哈希值由所述数据请求节点基于获取到的解密后的源数据计算得到;
获取区块链中保存的与所述加密源数据相关联的第二哈希值,所述第二哈希值由所述数据源节点对所述加密源数据所对应的源数据计算得到;
确定所述第一哈希值与所述第二哈希值一致。
6.一种区块链数据访问控制方法,其特征在于,应用于区块链网络中的数据请求节点,所述方法包括:
向所述区块链网络中的目标节点发送合约调用请求,所述目标节点部署有数据访问控制合约,且所述数据访问控制合约的执行环境与所述目标节点之间系统隔离;
向所述数据访问控制合约发送数据请求,所述数据请求包括所述数据请求节点的身份信息以及用于解密加密源数据的部分密钥分片;
接收所述数据访问控制合约发送的解密得到的源数据;
其中,所述数据访问控制合约能够向数据源节点发送密钥获取请求,以获得所述数据源节点发送的至少一个密钥分片,并基于所述部分密钥分片和所述数据源节点发送的密钥分片对所述加密源数据进行解密。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
向所述目标节点发送数据访问授权请求,所述数据访问授权请求包括所述数据请求节点的身份信息以及所述数据请求节点请求访问的数据类型信息;
接收所述目标节点发送的数据访问授权信息,所述数据访问授权信息包括授权所述数据请求节点的密钥分片信息;
向所述数据源节点发送密钥分片获取请求,所述密钥分片获取请求包括所述目标节点授权所述数据请求节点的密钥分片信息;
接收所述数据源节点发送的与所述密钥分片信息相对应的密钥分片。
8.根据权利要求6所述的方法,其特征在于,所述数据访问授权信息还包括授权时间信息和/或数据访问次数阈值。
9.根据权利要求6所述的方法,其特征在于,还包括:
计算所述数据访问控制合约发送的源数据的第一哈希值;
获取区块链中保存的与所述加密源数据相关联的第二哈希值,所述第二哈希值由所述数据源节点对所述加密源数据所对应的源数据计算得到;
确定所述第一哈希值与所述第二哈希值一致。
10.一种区块链数据访问控制方法,其特征在于,应用于区块链网络中的数据源节点,所述方法包括:
基于加密密钥对源数据进行加密,得到加密源数据;
将所述加密密钥所对应的解密密钥分割为多个密钥分片;
接收所述区块链网络中的数据访问控制合约发送的密钥获取请求,所述数据访问控制合约部署在所述区块链网络中的目标节点,且所述数据访问控制合约的执行环境与所述目标节点之间系统隔离;
向所述数据访问控制合约发送对应于所述密钥获取请求的密钥分片;
其中,所述数据访问控制智能合约能够接收数据请求节点发送的用于解密所述加密源数据的部分密钥分片,并基于所述部分密钥分片和所述数据源节点发送的密钥分片对所述加密源数据进行解密。
11.根据权利要求10所述的方法,其特征在于,所述将所述加密密钥所对应的解密密钥分割为多个密钥分片,包括:
向所述目标节点发送密钥切分请求;
接收所述目标节点发送的密钥分片策略信息,所述密钥分片策略信息包括解密所述加密源数据所需的密钥分片的数量值,所述解密所述加密源数据所需的密钥分片的数量值是所述目标节点基于区块链网络的执行效率信息确定的。
12.根据权利要求10所述的方法,其特征在于,所述方法还包括:
接收所述数据请求节点发送的密钥分片获取请求,所述密钥分片获取请求包括所述数据请求节点已获取到授权的密钥分片的信息;
向所述数据请求节点发送与所述授权的密钥分片的信息相对应的密钥分片。
13.根据权利要求10所述的方法,其特征在于,还包括:
计算所述源数据的第二哈希值;
将所述加密源数据和所述第二哈希值上传至区块链。
14.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-5中任一项所述方法的步骤。
15.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求6-9中任一项所述方法的步骤。
16.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求10-13中任一项所述方法的步骤。
17.一种目标节点,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-5中任一项所述方法的步骤。
18.一种数据请求节点,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求6-9中任一项所述方法的步骤。
19.一种数据源节点,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求10-13中任一项所述方法的步骤。
20.一种区块链数据访问控制系统,其特征在于,包括权利要求17所述的目标节点、权利要求18所述的数据请求节点以及权利要求19所述的数据源节点。
CN202110601557.0A 2021-05-31 2021-05-31 区块链数据访问控制方法、节点以及系统 Active CN113438205B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110601557.0A CN113438205B (zh) 2021-05-31 2021-05-31 区块链数据访问控制方法、节点以及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110601557.0A CN113438205B (zh) 2021-05-31 2021-05-31 区块链数据访问控制方法、节点以及系统

Publications (2)

Publication Number Publication Date
CN113438205A CN113438205A (zh) 2021-09-24
CN113438205B true CN113438205B (zh) 2022-12-20

Family

ID=77804203

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110601557.0A Active CN113438205B (zh) 2021-05-31 2021-05-31 区块链数据访问控制方法、节点以及系统

Country Status (1)

Country Link
CN (1) CN113438205B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114510734B (zh) * 2022-02-22 2023-10-20 光大科技有限公司 数据访问控制方法、装置及计算机可读存储介质
CN115567247B (zh) * 2022-08-31 2024-03-19 西安电子科技大学 一种去中心化的多权威隐私保护数据访问控制方法及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106548345B (zh) * 2016-12-07 2020-08-21 北京信任度科技有限公司 基于密钥分割实现区块链私钥保护的方法及系统
CN110290094B (zh) * 2018-03-19 2022-03-11 华为技术有限公司 一种数据访问权限的控制方法和装置
CN108809652B (zh) * 2018-05-21 2021-07-23 安徽航天信息有限公司 一种基于秘密共享的区块链加密账本
CN109672529A (zh) * 2019-01-07 2019-04-23 苏宁易购集团股份有限公司 一种结合区块链和秘密共享的去匿名化的方法及系统
CN110060162B (zh) * 2019-03-29 2023-10-27 创新先进技术有限公司 基于区块链的数据授权、查询方法和装置
CN112487100A (zh) * 2020-04-02 2021-03-12 支付宝(杭州)信息技术有限公司 一种基于区块链的信息发布方法、装置及计算机设备
CN112631836A (zh) * 2020-12-29 2021-04-09 东软集团股份有限公司 用于区块链的方法、装置、存储介质及电子设备

Also Published As

Publication number Publication date
CN113438205A (zh) 2021-09-24

Similar Documents

Publication Publication Date Title
CN108235806B (zh) 安全访问区块链的方法、装置、系统、存储介质及电子设备
CN110378139B (zh) 一种数据密钥保护方法、系统及电子设备和存储介质
US9912485B2 (en) Method and apparatus for embedding secret information in digital certificates
TW201914254A (zh) 資料加密和解密的方法、裝置和系統
US10880100B2 (en) Apparatus and method for certificate enrollment
US20210143986A1 (en) Method for securely sharing data under certain conditions on a distributed ledger
CN111031047B (zh) 设备通信方法、装置、计算机设备及存储介质
US10680805B2 (en) Data encryption control using multiple controlling authorities
CN110611657A (zh) 一种基于区块链的文件流处理的方法、装置及系统
CN112202612B (zh) 区块链节点管理方法、存储介质、节点以及区块链系统
CN113438205B (zh) 区块链数据访问控制方法、节点以及系统
CN112003697B (zh) 密码模块加解密方法、装置、电子设备及计算机存储介质
CN110740038B (zh) 区块链及其通信方法、网关、通信系统和存储介质
CN109815747A (zh) 基于区块链的离线审计方法、电子装置及可读存储介质
CN111193755B (zh) 数据访问、数据加密方法及数据加密与访问系统
CN111400728A (zh) 应用于区块链的数据加密解密方法及装置
CN111181944B (zh) 通信系统及信息发布方法、装置、介质、设备
CN114218548B (zh) 身份验证证书生成方法、认证方法、装置、设备及介质
CN116633522A (zh) 一种基于区块链的两方隐私求交方法及系统
CN112134911A (zh) 一种远程程序升级方法、装置和介质
CN112583588A (zh) 一种通信方法及装置、可读存储介质
CN116881936A (zh) 可信计算方法及相关设备
CN110602075A (zh) 一种加密访问控制的文件流处理的方法、装置及系统
CN113452519B (zh) 密钥同步方法、装置、计算机设备及存储介质
US11570008B2 (en) Pseudonym credential configuration method and apparatus

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