CN116055051A - 一种基于区块链网络的数据处理方法及相关设备 - Google Patents

一种基于区块链网络的数据处理方法及相关设备 Download PDF

Info

Publication number
CN116055051A
CN116055051A CN202111258815.6A CN202111258815A CN116055051A CN 116055051 A CN116055051 A CN 116055051A CN 202111258815 A CN202111258815 A CN 202111258815A CN 116055051 A CN116055051 A CN 116055051A
Authority
CN
China
Prior art keywords
data
node
identity
blockchain
holding
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
Application number
CN202111258815.6A
Other languages
English (en)
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202111258815.6A priority Critical patent/CN116055051A/zh
Priority to PCT/CN2022/118182 priority patent/WO2023071554A1/zh
Publication of CN116055051A publication Critical patent/CN116055051A/zh
Priority to US18/325,180 priority patent/US20230325521A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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
    • H04L9/3268Cryptographic 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 using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols 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]
    • 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
    • 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/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
    • 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/40Network security protocols
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本申请实施例公开了一种基于区块链网络的数据处理方法及相关设备,其中的方法包括:向区块链网络的共识节点发送第一数据清分请求,并接收共识节点响应于第一数据清分请求而返回的与区块链网络中持有节点相关的声明数据;根据声明数据生成持有节点对应的身份表达数据;设置能够访问身份表达数据的第一可见节点标识;将身份表达数据及可见节点标识存储至区块链网络的区块链。采用本申请实施例能够提高数据的安全性。

Description

一种基于区块链网络的数据处理方法及相关设备
技术领域
本申请涉及计算机技术领域,具体涉及人工智能领域,尤其涉及一种基于区块链网络的数据处理方法、一种基于区块链网络的数据处理装置、一种基于区块链网络的数据处理设备、一种计算机可读存储介质及一种程序产品。
背景技术
随着计算机技术的快速发展,越来越多的用户或企业选择采用数字身份来证明自己的真实身份;数字身份是通过将用户的身份信息(如用户姓名、行为信息等)数字化得到的,数字身份能够在一定程度上提高身份识别效率。
但实践发现,现有的数字身份的流通和存储方式存在数据泄露的风险;例如,在产生数字身份的发行方直接将用户的数字身份发送至持有方的过程中,数字身份很可能被截获而泄露用户的隐私身份信息。因此,如何提高数据的安全性成为研究热点话题。
发明内容
本申请实施例提供一种基于区块链网络的数据处理方法及相关设备,能够提高数据的安全性。
一方面,本申请实施例提供了一种基于区块链网络的数据处理方法,该方法包括:
向区块链网络的共识节点发送第一数据清分请求,并接收共识节点响应于第一数据清分请求而返回的与区块链网络中持有节点相关的声明数据;
根据声明数据生成持有节点对应的身份表达数据,身份表达数据用于表明持有节点的身份;
设置能够访问身份表达数据的第一可见节点标识;
将身份表达数据及可见节点标识存储至区块链网络的区块链。
另一方面,本申请实施例提供了一种基于区块链网络的数据处理方法,该方法包括:
接收区块链网络中持有节点发送的第一数据清分请求,第一数据清分请求用于请求清分与持有节点相关的声明数据;
响应于第一数据清分请求清分得到与持有节点相关的声明数据,并将声明数据返回至持有节点,以使持有节点根据声明数据生成持有节点对应的身份表达数据,身份表达数据用于表明持有节点的身份,以及设置能够访问身份表达数据的第一可见节点标识;
接收持有节点发送的第一存储请求,并响应于第一存储请求,将第一存储请求中包含的身份表达数据和第一可见节点标识,存储至区块链网络的区块链。
另一方面,本申请实施例提供了一种基于区块链网络的数据处理装置,该装置包括:
发送单元,用于向区块链网络的共识节点发送第一数据清分请求,并接收共识节点响应于第一数据清分请求而返回的与区块链网络中持有节点相关的声明数据;
处理单元,用于根据声明数据生成持有节点对应的身份表达数据,身份表达数据用于表明持有节点的身份;
处理单元,还用于设置能够访问身份表达数据的第一可见节点标识;
处理单元,还用于将身份表达数据及可见节点标识存储至区块链网络的区块链。
在一种实现方式中,处理单元用于根据声明数据生成持有节点对应的身份表达数据时,具体用于:
对声明数据进行签名生成持有节点对应的身份表达数据。
在一种实现方式中,处理单元,还用于:
向区块链网络的发行节点发送声明申请请求,使发行节点依据声明申请请求执行响应处理,以将声明数据存储至区块链。
在一种实现方式中,声明申请请求中携带持有节点对应的对象标识以及候选对象数据;响应处理的流程包括:
根据声明申请请求对持有节点进行身份校验处理,得到身份校验结果;
若身份校验结果为身份校验成功,则生成持有节点对应的声明数据,并设置能够访问声明数据的第二可见节点标识;
将声明数据和第二可见节点标识存储至区块链。
在一种实现方式中,身份校验处理的流程,包括:
由发行节点向共识节点发送身份查询请求,身份查询请求中携带持有节点对应的对象标识;
接收共识节点返回的与对象标识关联的参考对象数据;
将参考对象数据与候选对象数据进行比较,得到身份校验结果。
在一种实现方式中,处理单元用于将身份表达数据及第一可见节点标识存储至区块链时,具体用于:
基于身份表达数据和第一可见节点标识生成表达交易数据;
将表达交易数据发送至共识节点,以使共识节点基于表达交易数据生成区块,并将区块添加至区块链中。
另一方面,本申请实施例提供一种基于区块链网络的数据处理装置,该装置包括:
接收单元,用于接收区块链网络中持有节点发送的第一数据清分请求,第一数据清分请求用于请求清分与持有节点相关的声明数据;
处理单元,用于响应于第一数据清分请求清分得到与持有节点相关的声明数据,并将声明数据返回至持有节点,以使持有节点根据声明数据生成持有节点对应的身份表达数据,身份表达数据用于表明持有节点的身份,以及设置能够访问身份表达数据的第一可见节点标识;
处理单元,还用于接收持有节点发送的第一存储请求,并响应于第一存储请求,将第一存储请求中包含的身份表达数据和第一可见节点标识,存储至区块链网络的区块链。
在一种实现方式中,第一数据清分请求中包括持有节点期望同步的待处理区块的待处理区块高度h1,h1为大于零的整数;处理单元用于响应于第一数据清分请求清分得到与持有节点相关的声明数据时,具体用于:
获取区块链的最高区块高度H1,H1为大于1的整数;
根据待处理区块高度h1与最高区块高度H1,对区块链进行数据清分处理,得到与持有节点相关的声明数据。
在一种实现方式中,处理单元用于根据待处理区块高度h1与最高区块高度H1,对区块链进行数据清分处理,得到与持有节点相关的声明数据时,具体用于:
若待处理区块高度h1与最高区块高度H1之间满足高度条件,则获取区块链中待处理区块高度h1对应的待处理区块;其中,待处理区块高度h1与最高区块高度H1之间满足高度条件包括:若共识节点的节点类型为轻节点,则待处理区块高度h1小于等于最高区块高度H1;或者,若共识节点的节点类型为全节点,则待处理区块高度h1小于最高区块高度H1
对待处理区块所包含的第一候选交易数据进行可见性检测,得到第一可见性检测结果;
若第一可见性检测结果满足可见条件,则将第一候选交易数据确定为与持有节点相关的声明数据;其中,第一可见性检测结果满足可见条件包括:持有节点能够访问第一候选交易数据,且第一候选交易数据中包含声明数据;
若第一可见性检测结果不满足可见条件,则令新的待处理区块高度h1=h1+1,并获取区块链网络中更新后的区块链的最高区块高度H2,H2为大于1的整数,若新的待处理区块高度h1与区块高度H2之间满足高度条件,则继续执行根据新的待处理区块高度h1与区块高度H2,进行数据清分处理得到与持有节点相关的声明数据的步骤。
在一种实现方式中,处理单元还用于:
接收区块链网络中的发行节点发送的第二存储请求,第二存储请求中携带持有节点对应的声明数据以及能够访问声明数据的第二可见节点标识;
响应于第二存储请求,将声明数据以及第二可见节点标识存储至区块链。
在一种实现方式中,处理单元还用于:
接收区块链网络中的验证节点发送的第二数据清分请求,第二数据清分请求用于请求与验证节点相关的身份表达数据;
响应于第二数据清分请求清分得到与验证节点相关的身份表达数据;
将身份表达数据返回至验证节点,以使验证节点基于身份表达数据对持有节点进行身份验证处理。
另一方面,本申请实施例提供一种基于区块链网络的数据处理设备,该设备包括:
处理器,适于执行计算机程序;
计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时,实现如上述的基于区块链网络的数据处理方法。
另一方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,计算机程序适于由处理器加载并执行如上述的基于区块链网络的数据处理方法。
另一方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。数据处理设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该数据处理设备执行上述的基于区块链网络的数据处理方法。
本申请实施例中,持有节点可以向共识节点发送第一数据清分请求,使得共识节点响应于第一数据清分请求从区块链中清分并返回与持有节点相关的声明数据;持有节点再基于声明数据生成身份表达数据,并将身份表达数据以及能够访问身份表达数据的第一可见节点标识一同存储至区块链网络的区块链中。上述方案中,持有节点相关的声明数据和身份表达数据均存储于区块链网络的区块链中,实现对声明数据和身份表达数据的去中心化存储,且通过持有节点的数据清分能力在区块链上进行声明数据和身份表达数据的数据流转和可见节点的设置,使得只有指定的可见节点才能对声明数据和身份表达数据进行访问,有效降低数据被泄露的风险,提高数据的安全性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a示出了本申请一个示例性实施例提供的一种数据共享系统的架构示意图;
图1b示出了本申请一个示例性实施例提供的一种区块的结构示意图;
图1c示出了本申请一个示例性实施例提供的一种数据处理系统的架构示意图;
图1d示出了本申请一个示例性实施例提供的一种数据处理系统的结构示意图;
图1e示出了本申请一个示例性实施例提供的一种学历认证场景的场景示意图;
图2示出了本申请一个示例性实施例提供的一种基于区块链网络的数据处理方法的流程示意图;
图3示出了本申请一个示例性实施例提供的一种标识命中处理的示意图;
图4示出了本申请一个示例性实施例提供的一种基于区块链网络的数据处理方法的流程示意图;
图5示出了本申请一个示例性实施例提供的一种数据清分处理的流程示意图;
图6示出了本申请一个示例性实施例提供的一种基于区块链网络的数据处理方法的流程示意图;
图7示出了本申请一个示例性实施例提供的一种基于区块链网络的数据处理装置;
图8示出了本申请一个示例性实施例提供的一种基于区块链网络的数据处理装置;
图9示出了本申请一个示例性实施例提供的一种基于区块链网络的数据处理设备。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例涉及区块链技术,下面对区块链技术的相关术语及概念进行简要介绍:
区块链网络可以理解为一个数据共享系统100,数据共享系统100可是指用于进行节点与节点之间数据共享的系统,该数据共享系统100的一种示例性结构可参见图1a;如图1a所示,该数据共享系统100中可以包括多个节点101,多个节点101可以是指数据共享系统100中各个客户端(或终端设备、服务器等)。为了保证数据共享系统100内的信息互通,数据共享系统100中的每个节点之间可以存在信息连接,以使节点之间可以实现信息传输,进而实现信息共享。其中,节点之间实现信息连接的方式可包括:对于数据共享系统100中的每个节点,均具有与其对应的节点标识,而且数据共享系统100中的每个节点均可以存储有数据共享系统100中其他节点的节点标识,这样任一节点可根据其他节点的节点标识,实现信息共享(如将生成的区块广播至数据共享系统100中的其他节点)。每个节点中可维护一个如下表所示的节点标识列表,将节点名称和节点标识对应存储至该节点标识列表中。其中,节点标识可为IP(Internet Protocol,网络之间互联的协议)地址以及其他任一种能够用于标识该节点的信息,表1中仅以IP地址为例进行说明:
表1节点标识列表
节点名称 节点标识
节点1 117.114.151.174
节点2 117.116.189.145
节点S(S为正整数) xx.xx.xx.xx
数据共享系统100中的每个节点均存储一条相同的区块链。区块链(blockchain或block chain)是分布式数据存储、P2P(Peer to Peer,点对点)传输、共识机制、加密算法等计算机技术的新型应用模式。区块链本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链由多个区块组成,每个区块中包括输入信息,节点通过存储区块链实现存储输入信息。其中,区块的结构示意图可参见图1b,如图1b所示,区块的创始块中包括区块头和区块主体,区块头中存储有输入信息特征值、版本号、时间戳和难度值,区块主体中存储有输入信息;创始块的下一区块以创始块为父区块,下一区块中同样包括区块头和区块主体,区块头中存储有当前区块的输入信息特征值、父区块的区块头特征值、版本号、时间戳和难度值,并以此类推,使得区块链中每个区块中存储的区块数据均与父区块中存储的区块数据存在关联,保证了区块中输入信息的安全性。其中,数据共享系统100中的节点对输入信息进行共识,并在共识成功后将输入信息生成的区块上链(即将区块添加至区块链)的过程可包括:当数据共享系统100中的任意节点接收到输入信息时,数据共享系统100中的其他节点便根据共识算法对该输入信息进行共识,并在共识成功后将该输入信息生成区块,以及将该区块添加至区块链,进而实现对该输入信息的分布式存储,使得数据共享系统100中全部节点上存储的数据均一致。其中,上述提及的根据共识算法对输入信息进行共识的节点,通常被称为共识节点,在此说明。
正如前述对区块链中区块的相关介绍可知,区块链中的区块包括区块头和区块主体,区块主体用于存储输入信息,那么根据节点所包含的区块链中区块是否包含全量的输入信息,具体是区块链中各个区块的区块主体中是否包含全量的输入信息,可以将区块链网络中的节点区分为全节点和轻节点。其中,区分全节点和轻节点是通过判断节点是否包含有区块的全量数据实现的。全节点中的区块链同步有区块的所有数据(即全量的输入信息),包括区块的区块头、区块主体、交易数据等相关信息。而轻节点只同步区块链网络中各个区块的区块头,以及与该轻节点相关的交易数据;一种实现方式中,轻节点中各个区块头未连接成区块链,即轻节点中不包含区块链;在另一种实现方式中,轻节点中各个区块头仍然可以连接形成区块链,且该区块链中部分区块的区块主体为空(如不包含输入信息),部分区块的区块主体不为空(如包含与该轻节点相关的交易数据)。为便于区分包含全量数据的区块链和只包含区块头(以及部分交易数据)的区块链,本申请实施例将包含全量数据的区块链称为区块链,将只包含区块头(或部分输入信息)的区块链称为子区块链,在此说明。
另外,轻节点可包括SPV(Special Purpose Vehicle,载体)节点,该SPV节点具有数据清分能力,所谓数据清分能力可以简单理解为:从全节点(具体是全节点所包含的区块链)中同步与自己(即SPV节点)相关的交易数据,且支持设置能够访问上传至区块链中的交易数据的可见节点标识的能力,这样只有设置的可见节点标识对应的节点可以从区块链中获取到该交易数据,这在一定程序上提高数据的安全性。在本申请实施例中以轻节点中包含子区块链,且该子区块链中部分区块的区块主体包含与该轻节点相关的交易数据为例进行介绍,特在此说明。
基于上述对区块链技术的相关介绍,本申请实施例提出一种基于区块链网络的数据处理系统,该数据处理系统可称为去中心化身份认证系统(Decentrali zed ID,DID);在不同身份认证场景下,该数据处理系统可实现不同身份认证场景涉及的数据的链上流通和去中心化存储(即数据分布式存储在区块链网络所包含的共识节点中)。例如:在身份认证场景为学历认证场景中,该数据处理系统可实现去中心化存储用户的学历证书(如用于证明用户的学历的信息或凭证),以及在链上实现学历证书的流通;这在一定程度上提高学历证书的安全性。
其中,该数据处理系统的整体结构的示意图可参见图1c,如图1c所示,该数据处理系统自顶向下包括:应用层、服务接口层、持久化层;其中,应用层提供基于区块链的应用服务给用户使用,服务接口层包括分解器,用于对外提供去中心化服务以及数据获取等功能,持久化层包括服务接口(如API接口、SQL接口等),为上层应用场景提供区块链基础服务的功能。进一步地,图1c所示的数据处理系统还可以表示为图1d所示的结构示意图;如图1d所示,该数据处理系统包括:共识节点102、发行节点103、持有节点104以及验证节点105。其中,数据处理系统所包含的各个节点(如共识节点102、发行节点103、持有节点104以及验证节点105)可以是指:计算机设备或运行于计算机设备中的应用程序(可简称为应用)。其中:计算机设备可包括但不限于:智能手机、平板电脑、便携式个人计算机、移动互联网设备、智能电视、车载设备、头戴设备等智能设备;计算机设备中运行的应用程序可是指为完成某项或多项特定功能的计算机程序,可包括但不限于:安装在计算机设备中的客户端、无需下载安装即可使用的小程序、通过浏览器打开的web应用程序等等。需要说明的是,本申请实施例对数据处理系统所包含的节点的数量和种类不作限定;例如,在图1a中共识节点102的数量为1个,验证节点105的数量为1个,但实际应用中,共识节点102的数量可能大于1个(如100个),验证节点105的数量可能大于1个(如50个)。
基于图1d所示的数据处理系统,本申请实施例提出一种基于区块链网络的数据处理方案,在该数据处理方案中,数据在各个轻节点(如发行节点101、持有节点102以及验证节点105)之间的流通过程是通过区块链实现的,且数据存储在全节点包含的区块链中,避免数据被泄露的风险,提高数据的安全性。下面结合图1d所示的数据处理系统所包含的各个节点,以及以图1e所示的学历证书认证场景为例,给出数据处理方案的大致流程,其中:
(1)持有节点104。
持有节点104是具有申请声明数据(如学历证书)的需求的目标用户(如任一用户)所使用的节点。例如:若学生“小明”具有向XX学校申请学历证书的需求,那么学生“小明”可通过持有节点104向发行节点103(如XX学校所使用的节点)发送声明申请请求;发行节点103响应该声明申请请求生成学生“小明”的学历证书。其中,持有节点104的节点类型是轻节点,即持有节点104所包含的区块链中只存在部分区块包括有与持有节点104相关的交易数据(如学生“小明”的入学信息、学历信息等)
(2)发行节点103。
发行节点103是用于签发声明数据的用户所使用的节点。在学历认证场景中,发行节点103可以是XX学校所使用的节点,这样当发行节点103接收到持有节点104发送的声明申请请求时,发行节点103可利用声明申请请求所携带的持有节点104对象的对象标识(如使用持有节点的对象学生“小明”的身份标识(如用户姓名、用户编号、用户ID等)签发学生“小明”的学历证书;并设置能够访问学生“小明”的学历证书的第二可见节点标识,如区块链网络中节点X的节点标识被设置为第二可见节点标识,则节点X可从区块链中获取(如下载、缓存)学生“小明”的学历证书;发行节点103再将学生“小明”的学历证书和能够访问学历证书的第二可见节点标识发送至共识节点102,以便于共识节点102在对学历证书共识成功后上传至区块链中进行存储。其中,发行节点103的节点类型为轻节点,如发行节点103中只包含与自己相关的数据,如包含历史签发的一个或多个学生的学历证书。
(3)共识节点102。
共识节点102是能够采用共识算法对接收到的数据进行共识处理,并在共识成功后将数据生成区块存储至区块链的节点;其中,共识算法可包括但不限于:工作量证明、权益证明、委托权益证明等等,在不同业务场景下所采用的共识算法并不相同,本申请实施例对共识算法的类型不作限定。基于上述描述不难得知,共识节点102的节点类型为全节点,即共识节点102所包含的区块链中包含区块链网络中的全量数据。具体地,当共识节点102接收到发行节点103发送的学历证书和能够访问学历证书的第二可见节点标识后,可以对学历证书和第二可见节点标识进行共识,并在共识成功后基于学历证书和第二可见节点标识生成区块,并将该区块存储至区块链,实现在区块链网络中对区块(即学历证书和第二可见节点标识)的广播,这样区块链网络中的其他节点(全节点和/或轻节点)可从该共识节点的区块链中同步包含学历证书和第二可见节点标识的区块。例如,如果设置持有节点104的节点标识是能够访问学历证书的第二节点可见标识,那么持有节点104可以向共识节点发送第一数据清分请求,以便于共识节点在区块链中清分与持有节点104相关的声明数据,并将声明数据返回至持有节点104;以便于持有节点104对声明数据进行签名处理,并将身份表达数据(如签名后的学历证书)和能够访问身份表达数据的第一可见节点标识存储至区块链中。
(4)验证节点105。
验证节点105是具有验证身份表达数据(如学历证书)的用户所使用的节点;在学历认证场景中,该验证节点105可以是招聘单位(如具有招聘员工需求的企业X)所使用的节点,这样验证节点105可以从区块链网络中的区块链中去同步与自己相关的交易数据,并在获取到交易数据后,对交易数据所包含的身份表达数据进行身份验证。例如,区块链网络中的区块链中包含学生“小明”通过持有节点104上传的签名后的学历证书,且在上传该签名后的学历证书时,将验证节点X的节点标识设置为能够访问签名后的学历证书的第一可见节点标识,则验证节点X可从区块链中同步到该签名后的学历证书,并对该签名后的学历证书进行身份校验,此处的身份校验可是校验签名后的学历证书的真实性等,本申请实施例对身份校验的实现方式不作限定,在此说明。
基于上述描述可知,本申请实施例提及的基于区块链网络的数据处理方案,结合区块链的不可篡改性,将数据(如上述提及的声明数据或身份表达数据)进行上链,实现数据的去中心化存储;并且,通过持有节点的数据清分能力在区块链上进行数据的数据流转和可见节点标识(如上述提及的第一可见节点标识和第二可见节点标识)的设置,有效保护数据在发行节点、持有节点和验证节点三方之间的安全流转,使得只有指定的节点才能对数据进行访问,有效降低数据被泄露的风险,提高数据的安全性。
基于上述描述的基于区块链网络的数据处理方案,本申请实施例提出更为详细的基于区块链网络的数据处理方法,下面将结合附图对本申请实施例提出的基于区块链网络的数据处理方法进行详细介绍。
请参见图2,图2示出了本申请一个示例性实施例提供的一种基于区块链网络的数据处理方法的流程示意图;该数据处理方法可以由图1d所示系统中的持有节点104来执行,该数据处理方法包括但不限于步骤S201-S204:
S201:向区块链网络的共识节点发送第一数据清分请求,并接收共识节点响应于第一数据清分请求而返回的与区块链网络中持有节点相关的声明数据。
第一数据清分请求用于请求从共识节点中清分与持有节点相关的声明数据;所谓与持有节点相关的声明数据是指可验证声明(Verifiable Claims,VC),是由发行节点根据持有节点对应的对象标识对持有节点的属性背书形成的声明文件;例如,在学历认证场景中,发行节点可是指学校所使用的节点,声明数据是指学校根据学生的身份标识DID(如学生ID、编号等)所签发的学历证书。具体地,第一数据清分请求中可携带持有节点对应的对象标识,这样共识节点响应于第一数据清分请求,可根据第一数据清分请求所携带的身份标识DID从区块链中清分与持有节点相关的声明数据;其中,持有节点对应的对象标识可是指使用持有节点进行声明申请的目标用户的身份标识DID,是一种身份标识符,用于代表目标用户的身份;身份标识符可是由多个字符组成的字符串,字符可包括以下至少一种:中文字符(即汉字)、英文字符(即字母)、数字和标点符号(如逗号“,”、句号“。”、方括号“【】”)。
S202:根据声明数据生成持有节点对应的身份表达数据。
S203:设置能够访问身份表达数据的第一可见节点标识。
步骤S202-S203中,身份表达数据可是指可验证表达(Verifiable Presentation,VP),是由持有节点根据声明数据生成的,用于表示持有节点的身份的一种数据。具体地,持有节点在从共识节点中清分得到声明数据后,可对该声明数据进行签名以生成持有节点对应的身份表达数据。其中,对声明数据进行签名可是指对声明数据进行数字签名,所谓数字签名是只有信息发送者(如持有节点)才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息发送者发送的信息的真实性的一个有效证明。数字签名的方法可包括但不限于:HASH算法(如信息摘要(Message-Digest,MD)、安全散列算法(SecureHashAlgorithm,SHA)、Digital Signature Algorithm(DSA)、ECDSA(Elliptic Cur veDigital Signature Algorithm)、椭圆曲线数字签名算法等;本申请实施例对具体采用哪种数字签名算法对声明数据进行签名不作限定,在此说明。
举例来说,在学历认证场景中对声明数据(如学生“小明”的学历证书)进行签名可包括:学生“小明”通过持有节点对学历证书进行签名,生成签名后的学历证书(即身份表达数据);由于签名后的学历证书中包含学生“小明”的数字签名,因此基于该签名后的学历证书可以有效证明该签名后的学历证书的真实性。
本申请实施例还支持持有节点对身份表达数据进行可见性设置,所谓可见性设置可简单理解为持有节点设置能够访问身份表达数据的节点标识的过程。在身份认证场景中,持有节点(具体是使用持有节点的目标用户)能够设置不同的节点具有访问身份表达数据的权限;例如,在学历认证场景中,如果学生“小明”希望招聘单位A、招聘单位B能够访问自己签名后的学历证书,而希望招聘单位C不能访问自己签名后的学历证书,则学生“小明”可以设置能够访问签名后的学历证书的第一可见节点标识为招聘单位A和招聘单位B对应的节点标识。通过对身份表达数据的可见性设置,使得只有指定的节点才能访问到身份表达数据,较大程度的减小身份表达数据的泄露风险,提高数据的安全性。
S204:将身份表达数据及第一可见节点标识存储至区块链网络的区块链。
具体地,可以基于身份表达数据和第一可见节点标识生成表达交易数据,再将表达交易数据发送至区块链网络中的共识节点,以使共识节点基于表达交易数据生成区块,并将该区块添加至区块链中,实现将身份表达数据和第一可见节点标识存储至区块链网络的区块链中。需要说明的是,本申请实施例支持设置多个能够访问身份表达数据的第一可见节点标识,这样本申请实施例提供的表达交易数据中可包括可见列表,可见列表中包含能够访问身份表达数据的一个或多个第一可见节点标识;当存在访问身份表达数据的访问请求时,共识节点可以根据表达交易数据中包含的可见列表来对可见列表进行标识命中处理,以检测发送该访问请求的访问节点是否具有访问身份表达数据的权限,如果可见列表中包含发送该访问请求的访问节点的节点标识,则确定访问节点具有访问身份表达数据的权限,并将包含身份表达数据的表达交易数据发送至访问节点;反之,如果可见列表中不包含发送该访问请求的访问节点的节点标识,则确定访问节点不具有访问身份表达数据的权限。
一种示例性的通过从可见列表中判断是否包含访问节点的节点标识来判断访问节点是否访问身份表达数据的示例性过程可参见图3,如图3所示,可见列表301中包含第一可见节点标识1、第一可见节点标识2、……、第一可见节点标识N,N为大于2的整数;共识节点102接收到访问节点302发送的访问身份表达数据的访问请求,则共识节点102可根据访问节点302的节点标识对可见列表301进行标识命中处理,具体地可遍历可见列表301;如果在遍历可见列表301中过程中存在访问节点302的节点标识,则确定访问节点302的节点标识为第一可见节点标识,表示访问节点302能够访问身份表达数据,并返回表达交易数据至访问节点302;反之,如果遍历完可见列表301未检测到任一第一可见节点标识与访问节点301的节点标识相同,则确定访问节点302不能访问身份表达数据。
本申请实施例中,持有节点可以向共识节点发送第一数据清分请求,使得共识节点响应于第一数据清分请求从区块链中清分并返回与持有节点相关的声明数据;持有节点再基于声明数据生成身份表达数据,并将身份表达数据以及能够访问身份表达数据的第一可见节点标识一同存储至区块链网络的区块链中。上述方案中,持有节点相关的声明数据和身份表达数据均存储于区块链网络的区块链中,实现对声明数据和身份表达数据的去中心化存储,且通过持有节点的数据清分能力在区块链上进行声明数据和身份表达数据的数据流转过程和可见节点的设置,使得只有指定的节点才能对声明数据和身份表达数据进行访问,有效降低数据被泄露的风险,提高数据的安全性。
请参见图4,图4示出了本申请一个示例性实施例提供的一种基于区块链网络的数据处理方法的流程示意图;该数据处理方法可以由图1d所示系统中的共识节点102来执行,该数据处理方法包括但不限于步骤S401-S403:
S401:接收区块链网络中持有节点发送的第一数据清分请求。
S402:响应于第一数据清分请求清分得到与持有节点相关的声明数据,并将声明数据返回至持有节点。
正如前述所描述的,持有节点的节点类型为轻节点,则持有节点具有从共识网络中清分与自己相关的声明数据的数据清分能力;那么当使用持有节点的目标用户具有从区块链中获取声明数据的需求时,目标用户可通过持有节点向区块链网络中的共识节点发送第一数据清分请求,以便于共识节点响应第一数据清分请求清分并返回与持有节点相关的声明数据。需要说明的是,接收第一数据清分请求的共识节点可是指:区块链网络中与持有节点之间的距离最近的共识节点,这样可提高数据传输效率。或者,共识节点还可以是指:区块链网络中网络信号最高的节点,确保数据传输的快速性和稳定性。或者,共识节点还可以连接一个或多个轻节点,共识节点可以与连接的一个或多个轻节点之间进行直接或间接的信息通信,实现数据传输;在这种实现方式下,持有节点可以将第一数据清分请求发送至与共识节点连接的一个轻节点,进而通过该轻节点从共识节点中清分到与持有节点相关的声明数据;例如,共识节点连接有轻节点1,轻节点1连接有轻节点2,持有节点可以将第一数据清分请求发送至轻节点2,这样通过轻节点2以及轻节点1间接从共识节点中清分与持有节点相关的声明数据。本申请实施例对接收第一数据清分请求的共识节点具体为上述哪种情况不作限定,在此说明。
下面结合图5所示的数据清分处理的流程示意图,对从共识节点中清分得到与持有节点相关的声明数据的实现方式进行说明,如图5所示的下级节点为持有节点(或验证节点),上级节点为共识节点或与共识节点连接的轻节点;其中,数据清分处理的流程可包括:
①接收持有节点发送的第一数据清分请求,该第一数据清分请求用于请求清分与持有节点相关的声明数据,该第一数据清分请求中包括持有节点期望同步的待处理区块的待处理区块高度h1,h1为大于零的整数;该待处理区块高度h1,是持有节点当前所包含的区块链的最高区块高度h0加1得到的。在具体实现中,持有节点中包含的子区块链与共识节点所包含的区块链并不相同,持有节点所包含的区块链中只存储有与持有节点相关的部分数据,而共识节点所包含的区块链中存储有区块链网络中的全量数据,这样持有节点期望同步的待处理区块往往是持有节点所包含的子区块链中未同步的下一个区块;例如,持有节点所包含的子区块链的当前最高区块高度为5,则持有节点所期望同步的待处理区块的待处理区块高度h1=6。
②共识节点接收第一数据清分请求,响应于第一数据清分请求,获取区块链的最高区块高度H1,H1为大于1的整数;根据待处理区块高度h1与获取得到的最高区块高度H1,对区块链进行数据清分处理,得到与持有节点相关的声明数据。详细地,共识节点比较待处理区块高度h1与获取得到的最高区块高度H1之间是否满足高度条件;其中,待处理区块高度h1与最高区块高度H1之间满足高度条件是指:若共识节点的节点类型为轻节点,即与共识节点连接的轻节点接收了第一数据清分请求,则待处理区块高度h1小于等于最高区块高度H1;或者,若共识节点的节点类型为全节点,即共识节点本身接收到第一数据清分请求,则待处理区块高度h1小于最高区块高度H1
其中,若待处理区块高度h1与获取得到的最高区块高度H1之间不满足高度条件,表示持有节点请求的待处理区块的待处理区块高度太高,即共识节点所包含的区块链中还未同步到待处理区块高度对应的待处理区块,则返回通知消息至持有节点,以提示持有节点未同步到待处理区块高度对应的待处理区块。若待处理区块高度h1与获取得到的最高区块高度H1之间满足高度条件,表示共识节点所包含的区块链中已经同步待处理区块高度对应的待处理区块,则从区块链中获取待处理区块高度对应的待处理区块,并对待处理区块所包含的第一候选交易数据进行可见性检测,得到第一可见性检测结果。其中,对待处理区块所包含的第一候选交易数据进行可见性检测可包括:查询与第一候选交易数据对应的智能合约,该智能合约中包含IsReadable函数,用于对第一候选交易数据进行可见性检测;调用IsReadable函数在第一候选交易数据所包含的可见列表中进行标识命中处理,以检测可见列表中是否包含持有节点的节点标识;并根据标识命中处理的命中结果以及该第一候选交易数据所包含的数据,生成第一可见性检测结果。
③判断第一可见性检测结果是否满足可见条件。其中,第一可见性检测结果满足可见条件包括:持有节点能够访问第一候选交易数据,即第一候选交易数据中的可见列表中包含持有节点的节点标识,且第一候选交易数据中包含的数据为声明数据。第一可见性检测结果不满足可见条件包括:持有节点不能够访问第一候选交易数据,即第一候选交易数据中的可见列表中不包含持有节点的节点标识;或者,持有节点能够访问第一候选交易数据,且第一候选交易数据中不包含声明数据;或者,智能合约中不包含IsReadable函数;或者,调用IsReadable函数的过程中出现异常;等等;本申请实施例对第一可见性检测结果不满足可见条件的具体情况不作限定。
其中,若第一可见性检测结果满足可见条件,则将第一候选交易数据确定为与持有节点相关的声明数据,并将第一候选交易数据返回至持有节点。反之,若第一可见性检测结果不满足可见条件,则查询第一候选交易数据不能被持有节点访问的不可见原因,当不可见原因为:所述第一候选交易数据中不包含持有节点的节点标识时,表示持有节点未被设置为能够访问第一候选交易数据的节点,或者,不可见原因为:持有节点能够访问第一候选交易数据,且第一候选交易数据中不包含声明数据时,或者,不可见原因为:智能合约中不包含IsReadable函数;则令新的待处理区块高度h1=h1+1,并获取区块链网络中更新后的区块链的最高区块高度H2,H2为大于1的整数,若新的待处理区块高度h1与区块高度H2之间满足高度条件,则继续执行根据新的待处理区块高度h1与区块高度H2,进行数据清分处理得到与持有节点相关的声明数据的步骤。当不可见原因为:调用IsReadable函数的过程中出现异常;或其他原因时,终止数据清分处理,并向持有节点发送报错通知,该报错通知用于通知持有节点当前数据清分处理出现异常,需修复后重试。
通过上述步骤①-③所示的具体实现过程,持有节点可从共识节点中清分得到与持有节点相关的声明数据;这种利用轻节点SPV(如持有节点)的数据清分能力从共识节点中只清分与持有节点相关的数据(如声明数据)的方式,在一定程度上确保不能被持有节点访问的数据的安全性,且减少持有节点对不相关的数据的存储,降低存储压力。
S403:接收持有节点发送的第一存储请求,并响应于第一存储请求将第一存储请求中包含的身份表达数据和第一可见节点标识,存储至区块链网络的区块链。
具体地,第一存储请求中携带持有节点产生的身份表达数据和设置的能够访问身份表达数据的第一可见节点标识,并对身份表达数据和第一可见节点标识进行共识,此处的共识可是对身份表达数据的正确性进行校验,如校验身份表达数据是否是持有节点签名生成的、校验身份表达数据是否满足法律道德要求等等;并在共识成功后生成新的区块,并将该新的区块添加至区块链中,实现将身份表达数据和第一可见节点标识存储至区块链网络的区块链中,提高身份表达数据和第一可见节点标识的存储和流转的安全性。
本申请实施例中,共识节点可接收持有节点发送的第一数据清分请求,并响应第一数据清分请求从区块链中清分与持有节点相关的声明数据,这避免将与持有节点不相关的数据清分至持有节点,维护区块链中存储的数据的安全性,也减少持有节点的存储压力;共识节点还可以接收持有节点发送的第一存储请求,并在对第一存储请求中携带的身份表达数据共识成功后,将身份表达数据和第一可见节点标识生成区块,添加至区块链中,这种将身份表达数据和第一可见节点标识存储区块链的方式可提高身份表达数据和第一可见节点标识的安全性。
请参见图6,图6示出了本申请一个示例性实施例提供的一种基于区块链网络的数据处理方法的流程示意图;该数据处理方法可以由图1d所示系统中的共识节点102、发行节点103、持有节点104以及验证节点105共同执行,该数据处理方法包括但不限于步骤S601-S613:
S601:持有节点向区块链网络中的发行节点发送声明申请请求。
S602:发行节点响应声明申请请求执行响应处理。
S603:发行节点向共识节点发送第二存储请求。
步骤S601-S603中,当使用持有节点的目标用户具有申请声明数据的需求时,目标用户可通过持有节点向发行节点发送声明申请请求,以便于发行节点依据声明申请请求执行响应处理,以生成持有节点对应的声明数据,并将声明数据存储至区块链。其中,声明申请请求中包含待申请声明数据的持有节点对应的对象标识和候选对象数据,此处的候选对象数据可是指使用持有节点进行声明申请的目标用户的身份信息,如用户姓名、用户性别、用户年龄等相关信息。
具体地,发行节点响应声明申请请求的响应处理流程可包括:首先,根据声明申请请求对持有节点进行身份校验处理,得到身份校验结果;此处的身份校验处理的过程可简单包括:由发行节点向共识节点发送身份查询请求,该身份查询请求中携带持有节点对应的对象标识,共识节点响应身份查询请求查询并返回与对象标识关联的参考对象数据,这样发行节点可接收共识节点返回的与对象标识关联的参考对象数据,再将参考对象数据与候选对象数据进行比较,得到身份校验结果;若参考对象数据与候选对象数据相匹配,则确定身份校验结果为身份校验成功,反之,若参考对象数据与候选对象数据不匹配,则确定身份校验结果为身份校验失败。其次,若身份校验结果为身份校验成功,表明发行节点对持有节点的身份校验成功,则生成持有节点对应的声明数据,并设置能够访问声明数据的第二可见节点标识;其中,发行节点包含公钥基础设施(Public Key Infrastructure,PKI),能够将相关秘钥对和证书持有者的身份相互绑定,以为用户提供方便的相关证书管理的功能,基于此,发行节点可采用PKI为持有节点签发声明数据。最后,发行节点将声明数据和第二可见节点标识存储至区块链;具体地,在发行节点为持有节点签发声明数据和设置能够访问声明数据的第二可见节点标识后,发行节点可以基于声明数据和第二可见节点标识生成第二存储请求,并将该第二存储请求发送至共识节点,以便于共识节点对声明数据和第二可见节点标识存储至区块链中。
S604:共识节点响应于第二存储请求将声明数据和第二可见节点标识存储至区块链。
共识节点在接收到发行节点发送的第二存储请求后,响应于第二存储请求对第二存储请求中携带的声明数据和第二可见节点标识进行共识,并在共识成功后基于声明数据和第二可见节点标识生成新的区块,并将新的区块添加至区块链中,实现对声明数据和第二可见节点标识的上链存储,提高声明数据和第二可见节点标识的存储和流转的安全性。其中,共识节点对声明数据和第二可见节点标识进行共识是为了校验声明数据和第二可见节点标识的正确性,本申请实施例对具体的共识校验过程不作限定,在此说明。
S605:持有节点向共识节点发送第一数据清分请求。
S606:共识节点响应于第一数据清分请求清分与持有节点相关的声明数据。
S607:共识节点将清分得到的与持有节点相关的声明数据返回至持有节点。
S608:持有节点根据声明数据生成持有节点对应的身份表达数据,并设置能够访问身份表达数据的第一可见节点标识。
S609:持有节点向共识节点发送第一存储请求。
S610:共识节点响应于第一存储请求将身份表达数据和第一可见节点标识存储至区块链。
需要说明的是,步骤S65-S610所示的具体实施过程可参见图2以及图4所示实施例中的具体实施过程的相关描述,在此不做赘述。
S611:验证节点向共识节点发送第二数据清分请求。
S612:共识节点响应于第二数据清分请求清分与验证节点相关的身份表达数据。
S613:共识节点将清分得到的身份表达数据返回至验证节点,以使验证节点根据身份表达数据对持有节点进行身份验证。
步骤S611-S613中,当验证节点就有获取持有节点的身份表达数据的需求时,如在学历认证场景中招聘单位往往具有获取学生“小明”的签名后的学历证书的需求,那么验证节点可以向共识节点发送第二数据清分请求,该第二数据清分请求用于请求与验证节点相关的身份表达数据。共识节点接收到验证节点发送的第二数据清分请求,并响应第二数据清分请求清分与验证节点相关的身份表达数据,并将身份表达数据返回至验证节点,具体是将身份表达数据和能够访问身份表达数据的第一可见节点标识(或基于身份表达数据和能够访问身份表达数据的第一可见节点标识生成的表达交易数据)返回至验证节点,这样验证节点可基于身份表达数据和能够访问身份表达数据的第一可见节点标识对持有节点进行身份验证。其中,共识节点依据第二数据清分请求进行数据清分处理的具体实现方式可参见图5所示数据清分处理的流程示意图,在此不做赘述。
举例来说,在学历认证场景中,假设验证节点为招聘单位X,当招聘单位X具有邀请学生“小明”进行简历投递的需求时,招聘单位X可向共识节点发送第二数据清分请求,该第二数据清分请求中可携带学生“小明”的身份标识DID,这样共识节点可响应第二数据清分请求清分到学生“小明”签名后的学历证书(如身份表达数据),并将学历证书返回至招聘单位X,以便于招聘单位X校验学历证书的真实性。
需要说明的是,当验证节点欲获取区块链中与自己相关的所有用户的身份表达数据时,验证节点发送的第二数据清分请求也可以携带全部用户的身份标识DID,或者第二数据清分请求中不携带任一用户的身份标识DID,而只携带验证节点的节点标识,这样共识节点可以返回区块链中存储的与验证节点相关的所有身份表达数据;具体第二数据清分请求中携带哪种或多种内容,本申请实施例对此不作限定。另外,验证节点具体根据身份表达数据进行身份验证的过程是与具体的身份认证场景相关的,本申请实施例对验证节点进行身份验证的过程不作限制,特在此说明。另外,验证节点是具有验证身份表达数据的需求的节点,这样区块链网络中的发行节点以及持有节点等均可以作为验证节点,本申请实施例对验证节点不作限定。
本申请实施例中,发行节点在签发持有节点的声明数据后,可将声明数据上链至区块链中,这样持有节点可从区块链中去获取声明数据,并在对声明数据进去签名后将签名得到的身份表达数据上链至区块链,以便于验证节点从区块链中获取身份表达数据。上述方案中,持有节点相关的声明数据和身份表达数据均存储于区块链网络的区块链中,实现对声明数据和身份表达数据的去中心化存储,且通过持有节点的数据清分能力在区块链上进行声明数据和身份表达数据的数据流转过程和可见节点的设置,使得只有指定的节点才能对声明数据和身份表达数据进行访问,有效降低数据被泄露的风险,提高数据的安全性。
上述详细阐述了本申请实施例的方法,为了便于更好地实施本申请实施例的上述方法,相应地,下面提供了本申请实施例的装置。
图7示出了本申请一个示例性实施例提供的一种基于区块链网络的数据处理装置的结构示意图,该基于区块链网络的数据处理装置可以是运行于持有节点中的一个计算机程序(包括程序代码);该基于区块链网络的数据处理装置可以用于执行图2、图6所示的方法实施例中的部分或全部步骤,该基于区块链网络的数据处理装置包括如下单元:
发送单元701,用于向区块链网络的共识节点发送第一数据清分请求,并接收共识节点响应于第一数据清分请求而返回的与区块链网络中持有节点相关的声明数据;
处理单元702,用于根据声明数据生成持有节点对应的身份表达数据,身份表达数据用于表明持有节点的身份;
处理单元702,还用于设置能够访问身份表达数据的第一可见节点标识;
处理单元702,还用于将身份表达数据及可见节点标识存储至区块链网络的区块链。
在一种实现方式中,处理单元702用于根据声明数据生成持有节点对应的身份表达数据时,具体用于:
对声明数据进行签名生成持有节点对应的身份表达数据。
在一种实现方式中,处理单元702,还用于:
向区块链网络的发行节点发送声明申请请求,使发行节点依据声明申请请求执行响应处理,以将声明数据存储至区块链。
在一种实现方式中,声明申请请求中携带持有节点对应的对象标识以及候选对象数据;响应处理的流程包括:
根据声明申请请求对持有节点进行身份校验处理,得到身份校验结果;
若身份校验结果为身份校验成功,则生成持有节点对应的声明数据,并设置能够访问声明数据的第二可见节点标识;
将声明数据和第二可见节点标识存储至区块链。
在一种实现方式中,身份校验处理的流程,包括:
由发行节点向共识节点发送身份查询请求,身份查询请求中携带持有节点对应的对象标识;
接收共识节点返回的与对象标识关联的参考对象数据;
将参考对象数据与候选对象数据进行比较,得到身份校验结果。
在一种实现方式中,处理单元702用于将身份表达数据及第一可见节点标识存储至区块链时,具体用于:
基于身份表达数据和第一可见节点标识生成表达交易数据;
将表达交易数据发送至共识节点,以使共识节点基于表达交易数据生成区块,并将区块添加至区块链中。
根据本申请的一个实施例,图7所示的基于区块链网络的数据处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,该基于区块链网络的数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2、图6所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图7中所示的基于区块链网络的数据处理装置,以及来实现本申请实施例的基于区块链网络的数据处理方法。计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本申请实施例中,发送单元701用于可以向共识节点发送第一数据清分请求,使得共识节点响应于第一数据清分请求从区块链中清分并返回与持有节点相关的声明数据;处理单元702再基于声明数据生成身份表达数据,并将身份表达数据以及能够访问身份表达数据的第一可见节点标识一同存储至区块链网络的区块链中。上述方案中,持有节点相关的声明数据和身份表达数据均存储于区块链网络的区块链中,实现对声明数据和身份表达数据的去中心化存储,且通过持有节点的数据清分能力在区块链上进行声明数据和身份表达数据的数据流转和可见节点的设置,使得只有指定的可见节点才能对声明数据和身份表达数据进行访问,有效降低数据被泄露的风险,提高数据的安全性。
图8示出了本申请一个示例性实施例提供的一种基于区块链网络的数据处理装置的结构示意图,该基于区块链网络的数据处理装置可以是运行于持有节点中的一个计算机程序(包括程序代码);该基于区块链网络的数据处理装置可以用于执行图4、图6所示的方法实施例中的部分或全部步骤,该基于区块链网络的数据处理装置包括如下单元:
接收单元801,用于接收区块链网络中持有节点发送的第一数据清分请求,第一数据清分请求用于请求清分与持有节点相关的声明数据;
处理单元802,用于响应于第一数据清分请求清分得到与持有节点相关的声明数据,并将声明数据返回至持有节点,以使持有节点根据声明数据生成持有节点对应的身份表达数据,身份表达数据用于表明持有节点的身份,以及设置能够访问身份表达数据的第一可见节点标识;
处理单元802,还用于接收持有节点发送的第一存储请求,并响应于第一存储请求,将第一存储请求中包含的身份表达数据和第一可见节点标识,存储至区块链网络的区块链。
在一种实现方式中,第一数据清分请求中包括持有节点期望同步的待处理区块的待处理区块高度h1,h1为大于零的整数;处理单元802用于响应于第一数据清分请求清分得到与持有节点相关的声明数据时,具体用于:
获取区块链的最高区块高度H1,H1为大于1的整数;
根据待处理区块高度h1与最高区块高度H1,对区块链进行数据清分处理,得到与持有节点相关的声明数据。
在一种实现方式中,处理单元802用于根据待处理区块高度h1与最高区块高度H1,对区块链进行数据清分处理,得到与持有节点相关的声明数据时,具体用于:
若待处理区块高度h1与最高区块高度H1之间满足高度条件,则获取区块链中待处理区块高度h1对应的待处理区块;其中,待处理区块高度h1与最高区块高度H1之间满足高度条件包括:若共识节点的节点类型为轻节点,则待处理区块高度h1小于等于最高区块高度H1;或者,若共识节点的节点类型为全节点,则待处理区块高度h1小于最高区块高度H1
对待处理区块所包含的第一候选交易数据进行可见性检测,得到第一可见性检测结果;
若第一可见性检测结果满足可见条件,则将第一候选交易数据确定为与持有节点相关的声明数据;其中,第一可见性检测结果满足可见条件包括:持有节点能够访问第一候选交易数据,且第一候选交易数据中包含声明数据;
若第一可见性检测结果不满足可见条件,则令新的待处理区块高度h1=h1+1,并获取区块链网络中更新后的区块链的最高区块高度H2,H2为大于1的整数,若新的待处理区块高度h1与区块高度H2之间满足高度条件,则继续执行根据新的待处理区块高度h1与区块高度H2,进行数据清分处理得到与持有节点相关的声明数据的步骤。
在一种实现方式中,处理单元802还用于:
接收区块链网络中的发行节点发送的第二存储请求,第二存储请求中携带持有节点对应的声明数据以及能够访问声明数据的第二可见节点标识;
响应于第二存储请求,将声明数据以及第二可见节点标识存储至区块链。
在一种实现方式中,处理单元802还用于:
接收区块链网络中的验证节点发送的第二数据清分请求,第二数据清分请求用于请求与验证节点相关的身份表达数据;
响应于第二数据清分请求清分得到与验证节点相关的身份表达数据;
将身份表达数据返回至验证节点,以使验证节点基于身份表达数据对持有节点进行身份验证处理。
根据本申请的一个实施例,图8所示的基于区块链网络的数据处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,该基于区块链网络的数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图4、图6所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图8中所示的基于区块链网络的数据处理装置,以及来实现本申请实施例的基于区块链网络的数据处理方法。计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本申请实施例中,接收单元801可接收持有节点发送的第一数据清分请求,处理单元802可响应第一数据清分请求从区块链中清分与持有节点相关的声明数据,这避免将与持有节点不相关的数据清分至持有节点,维护区块链中存储的数据的安全性,也减少持有节点的存储压力;共识节点还可以接收持有节点发送的第一存储请求,并在对第一存储请求中携带的身份表达数据共识成功后,将身份表达数据和第一可见节点标识生成区块,添加至区块链中,这种将身份表达数据和第一可见节点标识存储区块链的方式可提高身份表达数据和第一可见节点标识的安全性。
图9示出了本申请一个示例性实施例提供的一种基于区块链网络的数据处理设备的结构示意图。请参见图9,该终端包括处理器901、通信接口902以及计算机可读存储介质903。其中,处理器901、通信接口902以及计算机可读存储介质903可通过总线或者其它方式连接。其中,通信接口902用于接收和发送数据。计算机可读存储介质903可以存储在终端的存储器中,计算机可读存储介质903用于存储计算机程序,计算机程序包括程序指令,处理器901用于执行计算机可读存储介质903存储的程序指令。处理器901(或称CPU(CentralProcessing Unit,中央处理器))是终端的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能。
本申请实施例还提供了一种计算机可读存储介质(Memory),计算机可读存储介质是终端中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括终端中的内置存储介质,当然也可以包括终端所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了终端的处理系统。并且,在该存储空间中还存放了适于被处理器901加载并执行的一条或多条的指令,这些指令可以是一个或多个的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的,还可以是至少一个位于远离前述处理器的计算机可读存储介质。
在一个实施例中,该计算机可读存储介质中存储有一条或多条指令;由处理器901加载并执行计算机可读存储介质中存放的一条或多条指令,以实现上述基于区块链网络的数据处理方法实施例中的相应步骤;具体实现中,计算机可读存储介质中的一条或多条指令由处理器901加载并执行如下步骤:
向区块链网络的共识节点发送第一数据清分请求,并接收共识节点响应于第一数据清分请求而返回的与区块链网络中持有节点相关的声明数据;
根据声明数据生成持有节点对应的身份表达数据,身份表达数据用于表明持有节点的身份;
设置能够访问身份表达数据的第一可见节点标识;
将身份表达数据及可见节点标识存储至区块链网络的区块链。
在一种实现方式中,计算机可读存储介质中的一条或多条指令由处理器901加载并在执行根据声明数据生成持有节点对应的身份表达数据时,具体执行如下步骤:
对声明数据进行签名生成持有节点对应的身份表达数据。
在一种实现方式中,计算机可读存储介质中的一条或多条指令由处理器901加载并还执行如下步骤:
向区块链网络的发行节点发送声明申请请求,使发行节点依据声明申请请求执行响应处理,以将声明数据存储至区块链。
在一种实现方式中,声明申请请求中携带持有节点对应的对象标识以及候选对象数据;响应处理的流程包括:
根据声明申请请求对持有节点进行身份校验处理,得到身份校验结果;
若身份校验结果为身份校验成功,则生成持有节点对应的声明数据,并设置能够访问声明数据的第二可见节点标识;
将声明数据和第二可见节点标识存储至区块链。
在一种实现方式中,身份校验处理的流程,包括:
由发行节点向共识节点发送身份查询请求,身份查询请求中携带持有节点对应的对象标识;
接收共识节点返回的与对象标识关联的参考对象数据;
将参考对象数据与候选对象数据进行比较,得到身份校验结果。
在一种实现方式中,计算机可读存储介质中的一条或多条指令由处理器901加载并在执行将身份表达数据及第一可见节点标识存储至区块链时,具体执行如下步骤:
基于身份表达数据和第一可见节点标识生成表达交易数据;
将表达交易数据发送至共识节点,以使共识节点基于表达交易数据生成区块,并将区块添加至区块链中。
在另一个实施例中,该计算机可读存储介质中存储有一条或多条指令;由处理器901加载并执行计算机可读存储介质中存放的一条或多条指令,以实现上述基于区块链网络的数据处理方法实施例中的相应步骤;具体实现中,计算机可读存储介质中的一条或多条指令由处理器901加载并执行如下步骤:
接收区块链网络中持有节点发送的第一数据清分请求,第一数据清分请求用于请求清分与持有节点相关的声明数据;
响应于第一数据清分请求清分得到与持有节点相关的声明数据,并将声明数据返回至持有节点,以使持有节点根据声明数据生成持有节点对应的身份表达数据,身份表达数据用于表明持有节点的身份,以及设置能够访问身份表达数据的第一可见节点标识;
接收持有节点发送的第一存储请求,并响应于第一存储请求,将第一存储请求中包含的身份表达数据和第一可见节点标识,存储至区块链网络的区块链。
在一种实现方式中,第一数据清分请求中包括持有节点期望同步的待处理区块的待处理区块高度h1,h1为大于零的整数;计算机可读存储介质中的一条或多条指令由处理器901加载并在执行响应于第一数据清分请求清分得到与持有节点相关的声明数据时,具体执行如下步骤:
获取区块链的最高区块高度H1,H1为大于1的整数;
根据待处理区块高度h1与最高区块高度H1,对区块链进行数据清分处理,得到与持有节点相关的声明数据。
在一种实现方式中,计算机可读存储介质中的一条或多条指令由处理器901加载并在执行根据待处理区块高度h1与最高区块高度H1,对区块链进行数据清分处理,得到与持有节点相关的声明数据时,具体执行如下步骤:
若待处理区块高度h1与最高区块高度H1之间满足高度条件,则获取区块链中待处理区块高度h1对应的待处理区块;其中,待处理区块高度h1与最高区块高度H1之间满足高度条件包括:若共识节点的节点类型为轻节点,则待处理区块高度h1小于等于最高区块高度H1;或者,若共识节点的节点类型为全节点,则待处理区块高度h1小于最高区块高度H1
对待处理区块所包含的第一候选交易数据进行可见性检测,得到第一可见性检测结果;
若第一可见性检测结果满足可见条件,则将第一候选交易数据确定为与持有节点相关的声明数据;其中,第一可见性检测结果满足可见条件包括:持有节点能够访问第一候选交易数据,且第一候选交易数据中包含声明数据;
若第一可见性检测结果不满足可见条件,则令新的待处理区块高度h1=h1+1,并获取区块链网络中更新后的区块链的最高区块高度H2,H2为大于1的整数,若新的待处理区块高度h1与区块高度H2之间满足高度条件,则继续执行根据新的待处理区块高度h1与区块高度H2,进行数据清分处理得到与持有节点相关的声明数据的步骤。
在一种实现方式中,计算机可读存储介质中的一条或多条指令由处理器901加载并还执行如下步骤:
接收区块链网络中的发行节点发送的第二存储请求,第二存储请求中携带持有节点对应的声明数据以及能够访问声明数据的第二可见节点标识;
响应于第二存储请求,将声明数据以及第二可见节点标识存储至区块链。
在一种实现方式中,计算机可读存储介质中的一条或多条指令由处理器901加载并还执行如下步骤:
接收区块链网络中的验证节点发送的第二数据清分请求,第二数据清分请求用于请求与验证节点相关的身份表达数据;
响应于第二数据清分请求清分得到与验证节点相关的身份表达数据;
将身份表达数据返回至验证节点,以使验证节点基于身份表达数据对持有节点进行身份验证处理。
本申请实施例中,持有节点可以向共识节点发送第一数据清分请求,使得共识节点响应于第一数据清分请求从区块链中清分并返回与持有节点相关的声明数据;持有节点再基于声明数据生成身份表达数据,并将身份表达数据以及能够访问身份表达数据的第一可见节点标识一同存储至区块链网络的区块链中。上述方案中,持有节点相关的声明数据和身份表达数据均存储于区块链网络的区块链中,实现对声明数据和身份表达数据的去中心化存储,且通过持有节点的数据清分能力在区块链上进行声明数据和身份表达数据的数据流转和可见节点的设置,使得只有指定的可见节点才能对声明数据和身份表达数据进行访问,有效降低数据被泄露的风险,提高数据的安全性。
本申请实施例还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。数据处理设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该数据处理设备执行上述基于区块链网络的数据处理方法。
本领域普通技术人员可以意识到,结合本申请中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用,使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程设备。计算机指令可以存储在计算机可读存储介质中,或者通过计算机可读存储介质进行传输。计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如,同轴电缆、光纤、数字用户线(DSL))或无线(例如,红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据处理设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(Solid State Disk,SSD))等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (16)

1.一种基于区块链网络的数据处理方法,其特征在于,包括:
向所述区块链网络的共识节点发送第一数据清分请求,并接收所述共识节点响应于所述第一数据清分请求而返回的与所述区块链网络中持有节点相关的声明数据;
根据所述声明数据生成所述持有节点对应的身份表达数据,所述身份表达数据用于表明所述持有节点的身份;
设置能够访问所述身份表达数据的第一可见节点标识;
将所述身份表达数据及所述可见节点标识存储至所述区块链网络的区块链。
2.如权利要求1所述的方法,其特征在于,所述根据所述声明数据生成所述持有节点对应的身份表达数据,包括:
对所述声明数据进行签名生成所述持有节点对应的身份表达数据。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:
向所述区块链网络的发行节点发送声明申请请求,使所述发行节点依据所述声明申请请求执行响应处理,以将所述声明数据存储至所述区块链。
4.如权利要求3所述的方法,其特征在于,所述声明申请请求中携带所述持有节点对应的对象标识以及候选对象数据;所述响应处理的流程包括:
根据所述声明申请请求对所述持有节点进行身份校验处理,得到身份校验结果;
若所述身份校验结果为身份校验成功,则生成所述持有节点对应的声明数据,并设置能够访问所述声明数据的第二可见节点标识;
将所述声明数据和所述第二可见节点标识存储至所述区块链。
5.如权利要求4所述的方法,其特征在于,所述身份校验处理的流程,包括:
由所述发行节点向所述共识节点发送身份查询请求,所述身份查询请求中携带所述持有节点对应的对象标识;
接收所述共识节点返回的与所述对象标识关联的参考对象数据;
将所述参考对象数据与所述候选对象数据进行比较,得到身份校验结果。
6.如权利要求1所述的方法,其特征在于,所述将所述身份表达数据及所述第一可见节点标识存储至所述区块链,包括:
基于所述身份表达数据和所述第一可见节点标识生成表达交易数据;
将所述表达交易数据发送至所述共识节点,以使所述共识节点基于所述表达交易数据生成区块,并将所述区块添加至所述区块链中。
7.一种基于区块链网络的数据处理方法,其特征在于,包括:
接收所述区块链网络中持有节点发送的第一数据清分请求,所述第一数据清分请求用于请求清分与所述持有节点相关的声明数据;
响应于所述第一数据清分请求清分得到与所述持有节点相关的声明数据,并将所述声明数据返回至所述持有节点,以使所述持有节点根据所述声明数据生成所述持有节点对应的身份表达数据,所述身份表达数据用于表明所述持有节点的身份,以及设置能够访问所述身份表达数据的第一可见节点标识;
接收所述持有节点发送的第一存储请求,并响应于所述第一存储请求将所述第一存储请求中包含的所述身份表达数据和所述第一可见节点标识,存储至所述区块链网络的区块链。
8.如权利要求7所述的方法,其特征在于,所述第一数据清分请求中包括所述持有节点期望同步的待处理区块的待处理区块高度h1,h1为大于零的整数;所述响应于所述第一数据清分请求清分得到与所述持有节点相关的声明数据,包括:
获取所述区块链的最高区块高度H1,H1为大于1的整数;
根据所述待处理区块高度h1与所述最高区块高度H1,对所述区块链进行数据清分处理,得到与所述持有节点相关的声明数据。
9.如权利要求8所述的方法,其特征在于,所述根据所述待处理区块高度h1与所述最高区块高度H1,对所述区块链进行数据清分处理,得到与所述持有节点相关的声明数据,包括:
若所述待处理区块高度h1与所述最高区块高度H1之间满足高度条件,则获取所述区块链中所述待处理区块高度h1对应的待处理区块;其中,所述待处理区块高度h1与所述最高区块高度H1之间满足高度条件包括:若共识节点的节点类型为轻节点,则所述待处理区块高度h1小于等于所述最高区块高度H1;或者,若所述共识节点的节点类型为全节点,则所述待处理区块高度h1小于所述最高区块高度H1
对所述待处理区块所包含的第一候选交易数据进行可见性检测,得到第一可见性检测结果;
若所述第一可见性检测结果满足可见条件,则将所述第一候选交易数据确定为与所述持有节点相关的声明数据;其中,所述第一可见性检测结果满足可见条件包括:所述持有节点能够访问所述第一候选交易数据,且所述第一候选交易数据中包含所述声明数据;
若所述第一可见性检测结果不满足可见条件,则令新的待处理区块高度h1=h1+1,并获取所述区块链网络中更新后的区块链的最高区块高度H2,H2为大于1的整数,若所述新的待处理区块高度h1与区块高度H2之间满足高度条件,则继续执行根据所述新的待处理区块高度h1与区块高度H2,进行数据清分处理得到与所述持有节点相关的声明数据的步骤。
10.如权利要求7所述的方法,其特征在于,所述方法还包括:
接收所述区块链网络中的发行节点发送的第二存储请求,所述第二存储请求中携带所述持有节点对应的声明数据以及能够访问所述声明数据的第二可见节点标识;
响应于所述第二存储请求,将所述声明数据以及所述第二可见节点标识存储至所述区块链。
11.如权利要求7所述的方法,其特征在于,所述方法还包括:
接收所述区块链网络中的验证节点发送的第二数据清分请求,所述第二数据清分请求用于请求与所述验证节点相关的身份表达数据;
响应于所述第二数据清分请求清分得到与所述验证节点相关的身份表达数据;
将所述身份表达数据返回至所述验证节点,以使所述验证节点基于所述身份表达数据对所述持有节点进行身份验证处理。
12.一种基于区块链网络的数据处理装置,其特征在于,包括:
发送单元,用于向所述区块链网络的共识节点发送第一数据清分请求,并接收所述共识节点响应于所述第一数据清分请求而返回的与所述区块链网络中持有节点相关的声明数据;
处理单元,用于根据所述声明数据生成所述持有节点对应的身份表达数据,所述身份表达数据用于表明所述持有节点的身份;
所述处理单元,还用于设置能够访问所述身份表达数据的第一可见节点标识;
所述处理单元,还用于将所述身份表达数据及所述可见节点标识存储至所述区块链网络的区块链。
13.一种基于区块链网络的数据处理装置,其特征在于,包括:
接收单元,用于接收所述区块链网络中持有节点发送的第一数据清分请求,所述第一数据清分请求用于请求清分与所述持有节点相关的声明数据;
处理单元,用于响应于所述第一数据清分请求清分得到与所述持有节点相关的声明数据,并将所述声明数据返回至所述持有节点,以使所述持有节点根据所述声明数据生成所述持有节点对应的身份表达数据,所述身份表达数据用于表明所述持有节点的身份,以及设置能够访问所述身份表达数据的第一可见节点标识;
所述处理单元,还用于接收所述持有节点发送的第一存储请求,并响应于所述第一存储请求,将所述第一存储请求中包含的所述身份表达数据和所述第一可见节点标识,存储至所述区块链网络的区块链。
14.一种基于区块链网络的数据处理设备,其特征在于,包括:
处理器,适于执行计算机程序;
计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被所述处理器执行时,实现如权利要求1-6任一项所述的基于区块链网络的数据处理方法,或者实现如权利要求7-11任一项所述的基于区块链网络的数据处理方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于被处理器加载并执行如权利要求1-6任一项所述的基于区块链网络的数据处理方法,或者实现如权利要求7-11任一项所述的基于区块链网络的数据处理方法。
16.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,所述计算机指令被处理器执行时实现如权利要求1-6任一项所述的基于区块链网络的数据处理方法,或者实现如权利要求7-11任一项所述的基于区块链网络的数据处理方法。
CN202111258815.6A 2021-10-27 2021-10-27 一种基于区块链网络的数据处理方法及相关设备 Pending CN116055051A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202111258815.6A CN116055051A (zh) 2021-10-27 2021-10-27 一种基于区块链网络的数据处理方法及相关设备
PCT/CN2022/118182 WO2023071554A1 (zh) 2021-10-27 2022-09-09 基于区块链网络的数据处理方法、装置、设备和存储介质
US18/325,180 US20230325521A1 (en) 2021-10-27 2023-05-30 Data processing method and apparatus based on blockchain network, device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111258815.6A CN116055051A (zh) 2021-10-27 2021-10-27 一种基于区块链网络的数据处理方法及相关设备

Publications (1)

Publication Number Publication Date
CN116055051A true CN116055051A (zh) 2023-05-02

Family

ID=86129992

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111258815.6A Pending CN116055051A (zh) 2021-10-27 2021-10-27 一种基于区块链网络的数据处理方法及相关设备

Country Status (3)

Country Link
US (1) US20230325521A1 (zh)
CN (1) CN116055051A (zh)
WO (1) WO2023071554A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116760615B (zh) * 2023-07-04 2023-11-24 山东云天安全技术有限公司 一种数据上链校验方法、电子设备及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107257341B (zh) * 2017-06-21 2019-08-16 浪潮集团有限公司 一种基于区块链的学籍追溯认证方法
CN111429322A (zh) * 2020-04-23 2020-07-17 重庆邮电大学 基于联盟链的学历学位证书可信管理系统
CN112307455B (zh) * 2020-12-28 2021-10-22 支付宝(杭州)信息技术有限公司 基于区块链的身份认证方法及装置、电子设备
CN113010871B (zh) * 2021-03-16 2023-04-28 中南大学 基于联盟区块链平台的电子学历证书验证方法
CN113065849A (zh) * 2021-04-02 2021-07-02 上海日羲科技有限公司 一种基于区块链的履历管理方法

Also Published As

Publication number Publication date
US20230325521A1 (en) 2023-10-12
WO2023071554A1 (zh) 2023-05-04

Similar Documents

Publication Publication Date Title
US11651109B2 (en) Permission management method, permission verification method, and related apparatus
CN108810006B (zh) 资源访问方法、装置、设备及存储介质
CN109522735B (zh) 一种基于智能合约的数据权限验证方法及装置
US10461939B2 (en) Secure device registration for multi-factor authentication
US11423475B2 (en) Distributed electronic record and transaction history
KR101130405B1 (ko) 아이덴티티 인식 방법 및 시스템
EP1698993A2 (en) Method and system for integrating multiple identities, identity mechanisms and identity providers in a single user paradigm
US11405207B2 (en) Dynamic implementation and management of hash-based consent and permissioning protocols
AU2017313687A1 (en) Dynamic cryptocurrency aliasing
CN113271311B (zh) 一种跨链网络中的数字身份管理方法及系统
US20190141048A1 (en) Blockchain identification system
CN108449348B (zh) 一种支持用户身份隐私保护的在线认证系统及方法
KR20200097773A (ko) 블록체인 기반 신원 시스템
US20230325521A1 (en) Data processing method and apparatus based on blockchain network, device, and storage medium
CN113129008B (zh) 数据处理方法、装置、计算机可读介质及电子设备
KR20210039190A (ko) 블록체인을 이용한 개인정보 관리 방법 및 그 방법이 적용된 블록체인 네트워크 관리자
CN113746630A (zh) 区块链证书管理方法、装置、联盟链及存储介质
US20240143730A1 (en) Multi-factor authentication using blockchain
CN112202734B (zh) 业务处理方法、电子设备及可读存储介质
US20230298015A1 (en) Systems and methods for verification of protected private information
Mayrhofer et al. Towards Threat Modeling for Private Digital Authentication in the Physical World
CN116091063A (zh) 交易处理方法、电子设备及可读存储介质
CN116707822A (zh) 一种用户身份识别设备、分布式用户身份识别系统及方法
CN117407907A (zh) 数据查询方法、装置、设备、存储介质及计算机产品
CN117421774A (zh) 基于区块链的数据存证方法、装置、设备、介质及产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40086064

Country of ref document: HK