CN116962403A - 数据管理系统、方法及设备 - Google Patents

数据管理系统、方法及设备 Download PDF

Info

Publication number
CN116962403A
CN116962403A CN202310918736.6A CN202310918736A CN116962403A CN 116962403 A CN116962403 A CN 116962403A CN 202310918736 A CN202310918736 A CN 202310918736A CN 116962403 A CN116962403 A CN 116962403A
Authority
CN
China
Prior art keywords
data
mapping information
terminal
service data
blockchain
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
CN202310918736.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.)
China Mobile Communications Group Co Ltd
China Mobile Hangzhou Information Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Hangzhou Information Technology 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 China Mobile Communications Group Co Ltd, China Mobile Hangzhou Information Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202310918736.6A priority Critical patent/CN116962403A/zh
Publication of CN116962403A publication Critical patent/CN116962403A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • 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/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 Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种数据管理系统、方法及设备,该系统包括中心服务器和区块链终端集合,区块链终端集合中包括多个终端,其中:多个终端中的任意第一终端,用于向中心服务器发送数据管理请求;中心服务器,用于根据数据管理请求,生成原始业务数据的数据映射信息;向第一终端发送数据管理请求对应的数据管理响应,数据管理响应中包括数据映射信息;第一终端,用于对原始业务数据和数据映射信息进行关联关系检测,得到检测结果,检测结果用于指示原始业务数据和数据映射信息之间是否存在关联关系;根据检测结果,确定是否广播数据映射信息。本申请的方案能够解决数据管理方式无法确认数据被篡改的问题。

Description

数据管理系统、方法及设备
技术领域
本申请涉及数据处理技术领域,尤其涉及一种数据管理系统、方法及设备。
背景技术
数据管理,也就是指的对存储的数据进行管理的过程,数据管理包括数据的新增、数据的修改、数据的查询、数据的校验等不同的类型。
目前的数据管理的方案,主要是中心化数据管理。中心化数据管理的模式下,数据管理基于中心数据库,数据由服务管理方全权负责,终端基于特定协议的网络请求申请数据变更、查看等功能,数据管理高效统一,支持实时处理。
然而,上述数据管理方式,用户对服务提供方的数据管理可信度较低,无法确认数据是否被篡改。
发明内容
本申请提供一种数据管理系统、方法及设备,以解决目前的数据管理方式无法确认数据是否被篡改的技术问题。
第一方面,本申请提供一种数据管理系统,包括中心服务器和区块链终端集合,所述区块链终端集合中包括多个终端,其中:
所述多个终端中的任意第一终端,用于向所述中心服务器发送数据管理请求;
所述中心服务器,用于根据所述数据管理请求,生成原始业务数据的数据映射信息;向所述第一终端发送所述数据管理请求对应的数据管理响应,所述数据管理响应中包括所述数据映射信息;
所述第一终端,用于对所述原始业务数据和所述数据映射信息进行关联关系检测,得到检测结果,所述检测结果用于指示所述原始业务数据和所述数据映射信息之间是否存在关联关系;根据所述检测结果,确定是否广播所述数据映射信息。
在一种可能的实施方式中,所述数据管理请求中包括所述原始业务数据的权限校验数据;
所述中心服务器根据所述数据管理请求,生成原始业务数据的数据映射信息的步骤,包括:
根据所述原始业务数据的权限校验数据对所述第一终端进行校验,确定所述第一终端是否具有对所述原始业务数据进行管理的权限;
在确定所述第一终端具有对所述原始业务数据进行管理的权限的情况下,确定所述原始业务数据;
根据消息摘要算法对所述原始业务数据进行处理,生成所述数据映射信息。
在一种可能的实施方式中,所述系统还包括第三方服务器;所述第一终端根据所述检测结果,确定是否广播所述数据映射信息的步骤,包括:
在基于所述检测结果确定所述原始业务数据和所述数据映射信息之间不存在关联关系的情况下,不向所述多个终端中除所述第一终端以外其他终端和所述第三方服务器广播所述数据映射信息;
在基于所述检测结果确定所述原始业务数据和所述数据映射信息之间存在关联关系的情况下,向所述其他终端和所述第三方服务器广播所述数据映射信息。
在一种可能的实施方式中,所述数据管理请求为数据新增请求,所述原始业务数据为第一业务数据;其中:
所述第一终端,用于向所述中心服务器发送所述数据新增请求,所述数据新增请求中包括所述第一业务数据和所述第一业务数据的权限校验数据;
所述中心服务器,在根据所述第一业务数据的权限校验数据,确定所述第一终端具有对所述第一业务数据进行管理的权限的情况下,生成所述第一业务数据的第一数据映射信息;向所述第一终端发送数据新增响应,所述数据新增响应中包括所述第一数据映射信息;
所述第一终端,用于在确定所述第一业务数据和所述第一数据映射信息之间存在关联关系的情况下,向所述其他终端和所述第三方服务器广播所述第一数据映射信息;
所述其他终端,用于对所述第一数据映射信息进行映射处理,得到第一区块链映射信息;向所述中心服务器发送所述第一数据映射信息和所述第一区块链映射信息;向所述第一终端发送所述第一区块链映射信息;
所述第一终端,还用于将接收到的所述第一数据映射信息和所述第一区块链映射信息发送给所述中心服务器;
所述中心服务器,还用于将所述其他终端发送的所述第一数据映射信息和所述第一区块链映射信息,与所述第一终端发送的所述第一数据映射信息和所述第一区块链映射信息进行比对,得到第一比对结果;根据所述第一比对结果,确定是否新增所述第一业务数据。
在一种可能的实施方式中,所述数据管理请求为数据修改请求,所述原始业务数据为第二业务数据;其中:
所述第一终端,用于向所述中心服务器发送所述数据修改请求,所述数据修改请求中包括所述第二业务数据和所述第二业务数据的权限校验数据;
所述中心服务器,在根据所述第二业务数据的权限校验数据,确定所述第一终端具有对所述第二业务数据进行管理的权限的情况下,生成所述第二业务数据的第二数据映射信息;向所述第一终端发送数据修改响应,所述数据修改响应中包括所述第二数据映射信息;
所述第一终端,用于在确定所述第二业务数据和所述第二数据映射信息之间存在关联关系的情况下,向所述其他终端和所述第三方服务器广播所述第二数据映射信息;
所述其他终端,用于对所述第二数据映射信息进行映射处理,得到第二区块链映射信息;向所述中心服务器发送所述第二数据映射信息和所述第二区块链映射信息;向所述第一终端发送所述第二区块链映射信息;
所述第一终端,还用于将接收到的所述第二数据映射信息和所述第二区块链映射信息发送给所述中心服务器;
所述中心服务器,还用于将所述其他终端发送的所述第二数据映射信息和所述第二区块链映射信息,与所述第一终端发送的所述第二数据映射信息和所述第二区块链映射信息进行比对,得到第二比对结果;根据所述第二比对结果,确定是否修改所述第二业务数据。
在一种可能的实施方式中,所述数据管理请求为数据查询请求,所述原始业务数据为第三业务数据;其中:
所述第一终端,用于向所述中心服务器发送所述数据查询请求,所述数据查询请求中包括所述第三业务数据的关联信息和所述第三业务数据的权限校验数据,所述第三业务数据的关联信息用于指示所述第三业务数据;
所述中心服务器,在根据所述第三业务数据的权限校验数据,确定所述第一终端具有对所述第三业务数据进行管理的权限的情况下,生成所述第三业务数据的第三数据映射信息和所述第三数据映射信息的第三区块链映射信息;向所述第一终端发送数据修改响应,所述数据修改响应中包括所述第三数据映射信息和所述第三区块链映射信息;
所述第一终端,用于在确定所述第三业务数据和所述第三数据映射信息之间存在关联关系的情况下,向所述其他终端和所述第三方服务器广播所述第三数据映射信息和所述第三区块链映射信息;
所述其他终端,用于根据所述第三数据映射信息,确定所述其他终端中存储的区块链映射信息是否准确;
所述第一终端,还用于在所述其他终端中存储的区块链映射信息准确的情况下,确定所述第三数据映射信息和所述第三区块链映射信息之间是否存在关联关系;根据所述第三数据映射信息和所述第三区块链映射信息之间是否存在关联关系,确定是否查询所述第三业务数据。
在一种可能的实施方式中,所述数据管理请求为数据校验请求,所述原始业务数据为第四业务数据;其中:
所述第一终端,用于向所述中心服务器发送所述数据校验请求,所述数据校验请求中包括所述第四业务数据的关联信息和所述第四业务数据的权限校验数据,所述第四业务数据的关联信息用于指示所述第四业务数据;
所述中心服务器,在根据所述第四业务数据的权限校验数据,确定所述第一终端具有对所述第四业务数据进行管理的权限的情况下,生成所述第四业务数据的第四数据映射信息和所述第四数据映射信息的第四区块链映射信息;向所述第一终端发送数据校验响应,所述数据校验响应中包括所述第四数据映射信息和所述第四区块链映射信息;
所述第一终端,用于在确定所述第四业务数据和所述第四数据映射信息之间存在关联关系的情况下,向所述其他终端和所述第三方服务器广播区块链链数据请求,所述区块链链数据请求用于请求区块链节点变更数据;
所述其他终端,用于根据所述区块链链数据请求,向所述第一终端发送所述区块链节点变更数据;
所述第一终端,还用于根据所述所述区块链节点变更数据,对所述第四业务数据进行校验,得到校验结果。
第二方面,本申请提供一种数据管理方法,应用于中心服务器,所述方法包括:
接收第一终端发送的数据管理请求,所述第一终端为区块链终端集合包括的多个终端中的任意一个;
根据所述数据管理请求,生成原始业务数据的数据映射信息;
向所述第一终端发送所述数据管理请求对应的数据管理响应,所述数据管理响应中包括所述数据映射信息。
在一种可能的实施方式中,所述数据管理请求中包括所述原始业务数据的权限校验数据;
所述根据所述数据管理请求,生成原始业务数据的数据映射信息,包括:
根据所述原始业务数据的权限校验数据对所述第一终端进行校验,确定所述第一终端是否具有对所述原始业务数据进行管理的权限;
在确定所述第一终端具有对所述原始业务数据进行管理的权限的情况下,确定所述原始业务数据;
根据消息摘要算法对所述原始业务数据进行处理,生成所述数据映射信息。
在一种可能的实施方式中,所述数据管理请求为数据新增请求,所述原始业务数据为第一业务数据;所述根据所述数据管理请求,生成原始业务数据的数据映射信息,包括:
在根据所述第一业务数据的权限校验数据,确定所述第一终端具有对所述第一业务数据进行管理的权限的情况下,生成所述第一业务数据的第一数据映射信息;
向所述第一终端发送数据新增响应,所述数据新增响应中包括所述第一数据映射信息。
在一种可能的实施方式中,所述数据管理请求为数据修改请求,所述原始业务数据为第二业务数据;所述根据所述数据管理请求,生成原始业务数据的数据映射信息,包括:
在根据所述第二业务数据的权限校验数据,确定所述第一终端具有对所述第二业务数据进行管理的权限的情况下,生成所述第二业务数据的第二数据映射信息;
向所述第一终端发送数据修改响应,所述数据修改响应中包括所述第二数据映射信息。
在一种可能的实施方式中,所述数据管理请求为数据查询请求,所述原始业务数据为第三业务数据;所述根据所述数据管理请求,生成原始业务数据的数据映射信息,包括:
在根据所述第三业务数据的权限校验数据,确定所述第一终端具有对所述第三业务数据进行管理的权限的情况下,生成所述第三业务数据的第三数据映射信息和所述第三数据映射信息的第三区块链映射信息;
向所述第一终端发送数据修改响应,所述数据修改响应中包括所述第三数据映射信息和所述第三区块链映射信息。
在一种可能的实施方式中,所述数据管理请求为数据校验请求,所述原始业务数据为第四业务数据;所述根据所述数据管理请求,生成原始业务数据的数据映射信息,包括:
在根据所述第四业务数据的权限校验数据,确定所述第一终端具有对所述第四业务数据进行管理的权限的情况下,生成所述第四业务数据的第四数据映射信息和所述第四数据映射信息的第四区块链映射信息;
向所述第一终端发送数据校验响应,所述数据校验响应中包括所述第四数据映射信息和所述第四区块链映射信息。
第三方面,本申请提供一种数据管理方法,应用于区块链终端集合包括的多个终端中的任意第一终端,所述方法包括:
向中心服务器发送数据管理请求;
接收所述中心服务器发送的数据管理响应,所述数据管理响应中包括原始业务数据的数据映射信息;
对所述原始业务数据和所述数据映射信息进行关联关系检测,得到检测结果,所述检测结果用于指示所述原始业务数据和所述数据映射信息之间是否存在关联关系;
根据所述检测结果,确定是否广播所述数据映射信息。
在一种可能的实施方式中,所述根据所述检测结果,确定是否广播所述数据映射信息,包括:
在基于所述检测结果确定所述原始业务数据和所述数据映射信息之间不存在关联关系的情况下,不向所述多个终端中除所述第一终端以外其他终端和所述第三方服务器广播所述数据映射信息;
在基于所述检测结果确定所述原始业务数据和所述数据映射信息之间存在关联关系的情况下,向所述其他终端和所述第三方服务器广播所述数据映射信息。
第四方面,本申请提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如第二方面或第三方面所述的数据管理方法。
第五方面,本申请提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第二方面或第三方面所述的数据管理方法。
第六方面,本申请提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如第二方面或第三方面所述的数据管理方法。
本申请实施例提供的数据管理系统,包括中心服务器和区块链终端集合,区块链终端集合中包括多个终端,其中:多个终端中的任意第一终端,用于向中心服务器发送数据管理请求;中心服务器,用于根据数据管理请求,生成原始业务数据的数据映射信息;向第一终端发送数据管理请求对应的数据管理响应,数据管理响应中包括数据映射信息;第一终端,用于对原始业务数据和数据映射信息进行关联关系检测,得到检测结果,检测结果用于指示原始业务数据和数据映射信息之间是否存在关联关系;根据检测结果,确定是否广播数据映射信息。本申请实施例的方案,将原始业务数据存储于中心服务器,实现了业务数据管理的去中心化,保障了原始业务数据的隐私和安全性,同时,还通过对原始业务数据和数据映射信息进行关联关系检测,从而能够判断原始业务数据是否被中心服务器篡改,从而根据检测结果来决定是否广播数据映射信息,在原始业务数据被篡改后能够及时的辨别,提高了原始业务数据的可信性。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的数据管理系统的结构示意图;
图2为本申请实施例提供的区块链数据结构与关联关系示意图;
图3为本申请实施例提供的中心数据库的数据结构示意图;
图4为本申请实施例提供的数据新增业务场景的数据管理示意图;
图5为本申请实施例提供的数据修改业务场景的数据管理示意图;
图6为本申请实施例提供的数据查询业务场景的数据管理示意图;
图7为本申请实施例提供的数据校验业务场景的数据管理示意图;
图8为本申请实施例提供的数据管理方法的流程示意图一;
图9为本申请实施例提供的数据管理方法的流程示意图二;
图10为本申请实施例提供的一种电子设备的实体结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
数据管理,指的是对存储的数据进行管理的过程,数据管理包括数据的新增、数据的修改、数据的查询、数据的校验等不同的类型。
目前的数据管理的方案,主要分为两大类,一类是中心化数据管理,另一类是去中心化数据管理。
中心化数据管理的模式下,数据管理基于中心数据库,数据由服务管理方全权负责,终端基于特定协议的网络请求申请数据变更、查看等功能,数据管理高效统一,支持实时处理。
在家庭业务、社区管理、区域业务等私有数据管理场景中,过往技术多基于中心化数据管理模式,相关用户数据管理明显缺乏可信性。这些场景的突出特点是:数据交互基于C/S或B/S交互模式,依然是用户与服务提供方的双向关系,用户在交互中对实时性要求较高,且“数据查询”处理远大于其他数据变更需求,特别的,存在较多场景频率须面向“大体量数据”处理;同时,虽然用户数据对丢失与恢复能力要求不同,但用户群体不同个体间对数据权限也有差异,换言之,业务数据具有一定范围的私密性;但是,由于数据的中心化管理,用户对服务提供方的数据管理可信度依然较低,无法确认数据是否被篡改。因此,前述场景带来了私有数据如何交由服务方提供“可信管理”、“实时管理”及用户侧如何“验证数据”等问题。即,中心化数据管理的方式,对于终端而言可信性极低。
去中心化数据管理,又分为两类:一类是业务数据上链,多用于同质化业务数据,无法处理前述私有业务数据场景;另一类是业务数据存储于线下,通过复杂数据校验与加解密机制将业务数据的部分数据上链,多用于非同质化业务数据。
然而,两类去中心化数据管理多为公开数据管理,且具有复杂的数据加解密管理机制,不适用小范围轻量化系统,特别的,其对大体量业务数据的实时管理能力较差。
去中心化数据管理又现有的去中心化数据管理技术方案在数据存储、验证两个方向上主要有数据存储和数据验证两个方面的缺陷。
在数据存储方面,当前数据存储大多数直接依赖区块链,数据本身直接存于区块链节点,每个节点都包含局部(轻节点)或全量数据(全节点),节点数据包含业务数据,当业务数据体量较大,数据节点将会迅速膨胀,且数据计算时长大幅增加,影响节点数据存储性能、管理性能。同时,现有数据存储基于公共数据网络,数据无论是否加密,都存在一定的网络公开性,对私有数据的隐藏保护能力不足。
在数据验证方面,当前数据验证主要基于区块链节点中的区块链码与业务数据,由区块链节点根据现有区块链理论与算法,在每一个数据传输环节进行加解密、映射运算等关联数据处理,数据处理各步骤均验证数据有效性。可见,“数据校验”内嵌于“数据处理”(包括数据变更、数据查询)过程中,且“处理”依赖于“校验”,二者同步发生,“校验”流程“拖慢”了“处理”流程。同时,由于数据验证有赖于“共识机制”,因此数据校验难以实现“实时性”。对于“以包为单位”进行计算的数据处理,一个包中包括多个需要处理的数据,因此对于前面待处理的数据而言,需要结合后面待处理的数据组成一个包,才能进行处理,因此前面待处理的数据需要等待一定的时间才能被测量,因而对于“以包为单位”进行计算的数据处理的效率尤为缓慢。
综上,目前的中心化数据管理技术,基本没有可信性。目前的基于区块链的去中心化数据管理技术,其区块链节点大多包含完整或大部分业务数据,在数据涉及较复杂、大量或私有数据时,链上数据管理方案,区块链上单一逻辑节点数据会随业务数据变大,区块链终端节点存储数据也会大幅膨胀,数据计算时长大幅增加,影响新的计算端点加入,也影响实时处理效率。而其他链下数据管理方案,即使数据加密,也依然对网络公开,存在安全风险,不适合私密数据管理;且加密与计算流程复杂,如果以“包”为单位计算则还需“等待”时间,大幅拖延处理速率,而很多业务数据面向大体量数据时将花费更多时间运算,更加难以实现实时性。特别的,现有方案将数据校验嵌入数据处理流程,而数据校验依赖共识机制等,不具实时性,因此数据处理也无法实现实时性。
基于此,本申请实施例提供一种数据管理系统,以解决上述技术问题。下面结合附图对本申请实施例的方案进行介绍。
图1为本申请实施例提供的数据管理系统的结构示意图,如图1所示,包括中心服务器11和区块链终端集合12,区块链终端集合12中包括多个终端,其中:
多个终端中的任意第一终端,用于向中心服务器11发送数据管理请求;
中心服务器11,用于根据数据管理请求,生成原始业务数据的数据映射信息;向第一终端发送数据管理请求对应的数据管理响应,数据管理响应中包括数据映射信息;
第一终端,用于对原始业务数据和数据映射信息进行关联关系检测,得到检测结果,检测结果用于指示原始业务数据和数据映射信息之间是否存在关联关系;根据检测结果,确定是否广播数据映射信息。
本申请实施例中,涉及到的设备包括中心服务器11和区块链终端集合12,区块链终端集合12中包括了多个终端,第一终端为多个终端中的任意一个,以任意的第一终端进行数据管理为例来进行介绍。
第一终端向中心服务器11发送数据管理请求,数据管理请求用于对原始业务数据进行管理。本申请实施例中,将原始业务数据存储在中心服务器11中,而校验数据以及原始业务数据的相关数据存储在区块链终端集合中,实现去中心化。
中心服务器11接收到数据管理请求后,根据数据管理请求能够获知第一终端此次需要管理的原始业务数据,并生成原始业务数据的数据映射信息。其中,原始业务数据的数据映射信息是原始业务数据的映射,用于指示原始业务数据,即根据原始业务数据的数据映射信息,可以找到原始业务数据。
然后,中心服务器11向第一终端发送数据管理响应,数据管理响应中包括原始业务数据的数据映射信息。第一终端接收到数据管理响应后,可以获取到数据管理响应中的数据映射信息。然后,第一终端对原始业务数据和数据映射信息进行关联关系检测,得到检测结果。关联关系检测的过程,就是根据接收到的数据映射信息来寻找原始业务数据的过程。如果根据接收到的数据映射信息能够成功的寻找到原始业务数据,则检测结果指示原始业务数据和数据映射信息之间存在关联关系;如果根据接收到的数据映射信息不能够成功的寻找到原始业务数据,则检测结果指示原始业务数据和数据映射信息之间不存在关联关系。
由于中心服务器是根据数据管理请求来生成的原始业务数据的数据映射信息的,因此在正常情况下,是可以根据数据映射信息找到原始业务数据的。若第一终端根据接收到的数据映射信息不能够成功的寻找到原始业务数据,则表明中心服务器对原始业务数据进行了篡改。因此,根据检测结果,第一终端就可以确定中心服务器是否对原始业务数据进行了篡改。然后,第一终端根据检测结果,确定是否广播数据映射信息。
若检测结果指示原始业务数据和数据映射信息之间存在关联关系,则表示中心服务器未对原始业务数据进行篡改,第一终端广播数据映射信息;若检测结果指示原始业务数据和数据映射信息之间不存在关联关系,则表示中心服务器对原始业务数据进行了篡改,第一终端不广播数据映射信息。
本申请实施例提供的数据管理系统,包括中心服务器和区块链终端集合,区块链终端集合中包括多个终端,其中:多个终端中的任意第一终端,用于向中心服务器发送数据管理请求;中心服务器,用于根据数据管理请求,生成原始业务数据的数据映射信息;向第一终端发送数据管理请求对应的数据管理响应,数据管理响应中包括数据映射信息;第一终端,用于对原始业务数据和数据映射信息进行关联关系检测,得到检测结果,检测结果用于指示原始业务数据和数据映射信息之间是否存在关联关系;根据检测结果,确定是否广播数据映射信息。本申请实施例的方案,将原始业务数据存储于中心服务器,实现了业务数据管理的去中心化,保障了原始业务数据的隐私和安全性,同时,还通过对原始业务数据和数据映射信息进行关联关系检测,从而能够判断原始业务数据是否被中心服务器篡改,从而根据检测结果来决定是否广播数据映射信息,在原始业务数据被篡改后能够及时的辨别,提高了原始业务数据的可信性。
在上述任一实施例的基础上,下面结合附图对本申请实施例的方案进行详细介绍。
图2为本申请实施例提供的区块链数据结构与关联关系示意图,如图2所示,本申请实施例的区块链中包括多个链节点,如图2中示意的链节点1、链节点2、...、链节点n,每个链节点中包括区块链映射和业务数据映射,业务数据映射也即原始业务数据的数据映射信息,区块链映射也即数据映射信息的区块链映射信息。
图3为本申请实施例提供的中心数据库的数据结构示意图,如图3所示,中心数据库为处于中心服务器的数据库,中心数据库中包括多个原始业务数据,其中,每个原始业务数据还包括相应的数据映射信息、区块链映射信息以及历史区块链映射信息,等等。
中心数据库底层存储中,其数据结构包括“原始业务数据、数据映射信息、区块链映射信息、前一次区块链映射信息”四类数据。每行数据对应“某业务数据的变更”,因此同一业务数据的多次变更产生多次区块链数据,因此对每次数据变更操作均可验证。
在一种可能的实现方式中,第一终端发送的数据管理请求中,包括原始业务数据的权限校验数据。中心服务器在接收到数据管理请求后,可以获取原始业务数据的权限校验数据,并根据原始业务数据的权限校验数据对第一终端进行校验,确定第一终端是否具有对原始业务数据进行管理的权限。
在确定第一终端具有对原始业务数据进行管理的权限的情况下,确定待管理的原始业务数据,并根据消息摘要算法对该原始业务数据进行处理,生成数据映射信息。可选的,消息摘要算法可以是任意的算法。
可选的,数据管理系统中还包括第三方服务器。区块链终端集合中包括多个终端,终端具有相关业务数据处理功能,且基于区块链技术具备相关数据处理能力,去中心化,将每个终端视为一个链端点,记录逻辑节点数据,具备业务数据请求与部分校验能力。中心服务器中包括中心数据库,中心数据库不仅记录原始业务数据,而且记录业务数据映射、区块链映射等数据,藉此与区块链终端集合产生关联。第三方服务器与区块链终端集合中的终端平齐,用于协助终端提供共识机制与区块链基础校验能力,协助实时数据查询。
第一终端广播数据映射信息的过程,可以是向区块链终端集合中除第一终端以外的其他终端广播,还可以向第三方服务器广播。具体的,在第一终端基于检测结果确定原始业务数据和数据映射信息之间不存在关联关系的情况下,第一终端不向多个终端中除第一终端以外其他终端和第三方服务器广播数据映射信息;在第一终端基于检测结果确定原始业务数据和数据映射信息之间存在关联关系的情况下,第一终端向其他终端和第三方服务器广播数据映射信息。
在本申请实施例中,数据管理包括多类不同的业务场景,分别包括数据新增、数据修改、数据查询和数据校验,下面针对这几种不同的业务场景对本申请实施例的方案进行介绍。
图4为本申请实施例提供的数据新增业务场景的数据管理示意图,如图4所示,数据管理请求为数据新增请求,原始业务数据为第一业务数据,涉及的设备包括区块链终端集合、中心服务器以及第三方服务器。
第一终端,用于向中心服务器发送数据新增请求,数据新增请求中包括第一业务数据和第一业务数据的权限校验数据。
如图4中所示,区块链终端集合中包括多个终端,在图4中示例了终端1、终端2、...、终端N,其中,终端m即为第一终端。
终端m需新增第一业务数据A(即图4中的某私有业务数据),则终端m基于C/S或B/S等网络请求模式,向中心服务器发送数据新增请求,数据新增请求中包括第一业务数据A,以及第一业务数据A的权限校验数据(即第一业务数据的权限校验数据)。
中心服务器,在根据第一业务数据的权限校验数据,确定第一终端具有对第一业务数据进行管理的权限的情况下,生成第一业务数据的第一数据映射信息;向第一终端发送数据新增响应,数据新增响应中包括第一数据映射信息。
如图4所示,在中心服务器接收到数据新增请求后,根据第一业务数据A的权限校验数据对终端m进行校验,以判断终端m是否有对第一业务数据A进行管理的权限。若否,则不执行后续操作;若是,则中心服务器获取第一业务数据A,根据任意约定的消息摘要算法,生成第一业务数据A的第一数据映射信息a,并在中心服务器的中心数据库中存储第一业务数据A和第一数据映射信息a。
然后,中心服务器将第一数据映射信息a、通话标记flagA在数据新增响应中返还给终端m。特别的,本次数据在中心服务器端只做记录,相关数据并未生效。通话标记flagA仅用于标识此次操作。
第一终端,用于在确定第一业务数据和第一数据映射信息之间存在关联关系的情况下,向其他终端和第三方服务器广播第一数据映射信息。
终端m通过联盟区块链内部网络机制,将新增操作需求及相应第一数据映射信息a、通话标记flagA一同广播至区块链终端集合和第三方服务器。
其他终端,用于对第一数据映射信息进行映射处理,得到第一区块链映射信息;向中心服务器发送第一数据映射信息和第一区块链映射信息;向第一终端发送第一区块链映射信息。
如图4所示,区块链终端集合中的其他终端基于区块链共识机制获得计算权,并基于当前最新链映射与前述第一数据映射信息a,计算得到第一区块链映射信息,产生新的区块链数据节点。可选的,第一区块链映射信息可以是第一数据映射信息a的哈希值hash(a)。
其他终端将新产生的第一区块链映射信息hash(a)、通话标记flagA发送至中心服务器,后者基于第一数据映射信息a找到关联数据并记录hash(a),等待终端m的有效性确认请求。同时,其他终端将第一区块链映射信息hash(a)发送至第三方服务器,保证后者对区块链数据及时同步。
其他终端将新产生的第一区块链映射信息hash(a)通过区块链机制广播发送至本次变更申请的终端m。
第一终端,还用于将接收到的第一数据映射信息和第一区块链映射信息发送给中心服务器。
中心服务器,还用于将其他终端发送的第一数据映射信息和第一区块链映射信息,与第一终端发送的第一数据映射信息和第一区块链映射信息进行比对,得到第一比对结果;根据第一比对结果,确定是否新增第一业务数据。
终端m将第一数据映射信息a、第一区块链映射信息hash(a)、通话标记flagA再次发送给中心服务器。
中心服务器基于数据关联对比中心数据库中已记录数据,进行核对。具体的,将其他终端发送的第一数据映射信息和第一终端发送的第一数据映射信息进行比对,将其他终端发送的第一区块链映射信息和第一终端发送的第一区块链映射信息进行比对,得到第一比对结果。若其他终端发送的第一数据映射信息和第一终端发送的第一数据映射信息相同,且其他终端发送的第一区块链映射信息和第一终端发送的第一区块链映射信息相同,则第一比对结果为通过,此时新增第一业务数据至中心服务器,使第一业务数据在中心服务器持久化;否则,第一比对结果为不通过,此时不新增第一业务数据至中心服务器,不使第一业务数据在中心服务器持久化。然后,将生效的结果反馈给第一终端。
前述流程中,可抽象化为终端m、区块链终端集合中的其他终端[1……n]、中心服务器中心数据,三者互为验证者(此流程中,第三方服务器仅作数据同步,无额外校验)。中心服务器通过基础数据验证终端m的权限,并基于第一数据映射信息向终端m提供证明;终端m与区块链终端集合中其他终端则基于区块链实现数据可信,相关数据为第一数据映射信息、第一区块链映射信息;中心服务器对于其他终端最终数据的信任则基于终端m在前期与中心服务器的通话标记flagA,基于该数据认可第一区块链映射信息hash(a),中心服务器对于终端m最终数据的信任则基于通话标记flagA、第一区块链映射信息hash(a)。最终,每一环节数据的可信具基于前一步的数据校验。
图5为本申请实施例提供的数据修改业务场景的数据管理示意图,如图5所示,数据管理请求为数据修改请求,原始业务数据为第二业务数据,涉及的设备包括区块链终端集合、中心服务器以及第三方服务器。
第一终端,用于向中心服务器发送数据修改请求,数据修改请求中包括第二业务数据和第二业务数据的权限校验数据。
如图5中所示,区块链终端集合中包括多个终端,在图5中示例了终端1、终端2、...、终端N,其中,终端m即为第一终端。
终端m需修改第二业务数据B(即图5中的某私有业务数据),则终端m基于C/S或B/S等网络请求模式,向中心服务器发送数据修改请求,数据修改请求中包括第二业务数据B,以及第二业务数据B的权限校验数据(即第二业务数据的权限校验数据)。
中心服务器,在根据第二业务数据的权限校验数据,确定第一终端具有对第二业务数据进行管理的权限的情况下,生成第二业务数据的第二数据映射信息;向第一终端发送数据修改响应,数据修改响应中包括第二数据映射信息。
如图5所示,在中心服务器接收到数据修改请求后,根据第二业务数据B的权限校验数据对终端m进行校验,以判断终端m是否有对第二业务数据B进行管理的权限。若否,则不执行后续操作;若是,则中心服务器获取第二业务数据B,根据任意约定的消息摘要算法,生成第二业务数据B的第二数据映射信息b,并在中心服务器的中心数据库中存储第二业务数据B和第二数据映射信息b。
然后,中心服务器将第二数据映射信息b、通话标记flagB在数据修改响应中返还给终端m。特别的,本次数据在中心服务器端只做记录,相关数据并未生效。其中,通话标记flagB仅用于标识此次操作。
第一终端,用于在确定第二业务数据和第二数据映射信息之间存在关联关系的情况下,向其他终端和第三方服务器广播第二数据映射信息。
终端m通过联盟区块链内部网络机制,将修改操作需求及相应第二数据映射信息b、通话标记flagB一同广播至区块链终端集合和第三方服务器。
其他终端,用于对第二数据映射信息进行映射处理,得到第二区块链映射信息;向中心服务器发送第二数据映射信息和第二区块链映射信息;向第一终端发送第二区块链映射信息。
如图5所示,区块链终端集合中的其他终端基于区块链共识机制获得计算权,并基于当前最新链映射与前述第二数据映射信息b,计算得到第二区块链映射信息,产生新的区块链数据节点。可选的,第二区块链映射信息可以是第二数据映射信息b的哈希值hash(b)。
其他终端将新产生的第二区块链映射信息hash(b)、通话标记flagB发送至中心服务器,后者基于第二数据映射信息b找到关联数据并记录第二区块链映射信息hash(b),等待终端m的有效性确认请求。同时,其他终端将第二区块链映射信息hash(b)发送至第三方服务器,保证后者对区块链数据及时同步。
其他终端将新产生的第二区块链映射信息hash(b)通过区块链机制广播发送至本次变更申请的终端m。
第一终端,还用于将接收到的第二数据映射信息和第二区块链映射信息发送给中心服务器。
中心服务器,还用于将其他终端发送的第二数据映射信息和第二区块链映射信息,与第一终端发送的第二数据映射信息和第二区块链映射信息进行比对,得到第二比对结果;根据第二比对结果,确定是否修改第二业务数据。
终端m将第二数据映射信息b、第二区块链映射信息hash(b)、通话标记flagB再次发送给中心服务器。
中心服务器基于数据关联对比中心数据库中已记录数据,进行核对。具体的,将其他终端发送的第二数据映射信息和第一终端发送的第二数据映射信息进行比对,将其他终端发送的第二区块链映射信息和第一终端发送的第二区块链映射信息进行比对,得到第二比对结果。若其他终端发送的第二数据映射信息和第一终端发送的第二数据映射信息相同,且其他终端发送的第二区块链映射信息和第一终端发送的第二区块链映射信息相同,则第二比对结果为通过,此时修改第二业务数据至中心服务器,使第二业务数据在中心服务器持久化;否则,第二比对结果为不通过,此时不修改第二业务数据至中心服务器,不使第二业务数据在中心服务器持久化。然后,将生效的结果反馈给第一终端。
前述流程中,可抽象化为终端m、区块链终端集合中的其他终端[1……n]、中心服务器中心数据,三者互为验证者(此流程中,第三方服务器仅作数据同步,无额外校验)。中心服务器通过基础数据验证终端m的权限,并基于第二数据映射信息向终端m提供证明;终端m与区块链终端集合中其他终端则基于区块链实现数据可信,相关数据为第二数据映射信息、第二区块链映射信息;中心服务器对于其他终端最终数据的信任则基于终端m在前期与中心服务器的通话标记flagB,基于该数据认可第二区块链映射信息hash(b),中心服务器对于终端m最终数据的信任则基于通话标记flagB、第二区块链映射信息hash(b)。最终,每一环节数据的可信具基于前一步的数据校验。
图6为本申请实施例提供的数据查询业务场景的数据管理示意图,如图6所示,数据管理请求为数据查询请求,原始业务数据为第三业务数据,涉及的设备包括区块链终端集合、中心服务器以及第三方服务器。
第一终端,用于向中心服务器发送数据查询请求,数据查询请求中包括第三业务数据的关联信息和第三业务数据的权限校验数据,第三业务数据的关联信息用于指示第三业务数据。
如图6中所示,区块链终端集合中包括多个终端,在图6中示例了终端1、终端2、...、终端N,其中,终端m即为第一终端。
终端m需查询第三业务数据C(即图6中的某私有业务数据),终端m基于C/S或B/S等网络请求模式,向中心服务器发送数据查询请求,数据查询请求中包括第三业务数据C的关联信息,以及第三业务数据C的权限校验数据。
中心服务器,在根据第三业务数据的权限校验数据,确定第一终端具有对第三业务数据进行管理的权限的情况下,生成第三业务数据的第三数据映射信息和第三数据映射信息的第三区块链映射信息;向第一终端发送数据修改响应,数据修改响应中包括第三数据映射信息和第三区块链映射信息。
如图6所示,在中心服务器接收到数据查询请求后,根据第三业务数据C的权限校验数据对终端m进行校验,以判断终端m是否有对第三业务数据C进行管理的权限。若否,则不执行后续操作;若是,则中心服务器获取第三业务数据C,根据任意约定的消息摘要算法,生成第三业务数据C的第三数据映射信息c,并生成第三数据映射信息c的第三区块链映射信息hash(c),并在中心服务器的中心数据库中存储第三业务数据C、第三数据映射信息c和第三区块链映射信息hash(c)。
然后,中心服务器通过数据查询响应,向终端m返回第三数据映射信息c和第三区块链映射信息hash(c)。
第一终端,用于在确定第三业务数据和第三数据映射信息之间存在关联关系的情况下,向其他终端和第三方服务器广播第三数据映射信息和第三区块链映射信息。
终端m基于约定消息摘要算法(该算法任意,但应与中心服务器、第三方服务器的消息摘要算法约定一致)校验第三数据映射信息c,判定第三业务数据C与第三数据映射信息c的关联性。
在确定第三业务数据C和第三数据映射信息c之间存在关联关系的情况下,校验成功,基于区块链机制将第三数据映射信息c和第三区块链映射信息hash(c)广播至其他终端和第三方服务器。其中由于区块链群落有可能参与端点(即其他终端)较少,因此借助第三方服务器临时提供数据支撑,实现数据请求的实时性。
其他终端,用于根据第三数据映射信息,确定其他终端中存储的区块链映射信息是否准确。
第一终端,还用于在其他终端中存储的区块链映射信息准确的情况下,确定第三数据映射信息和第三区块链映射信息之间是否存在关联关系;根据第三数据映射信息和第三区块链映射信息之间是否存在关联关系,确定是否查询第三业务数据。
其他终端基于区块链机制各自确认第三区块链映射信息hash(c)的准确性,返回终端m后,终端m基于区块链算法共识机制判断本次第三数据映射信息c与第三区块链映射信息hash(c)的关联性,即判断根据第三数据映射信息c是否能找到第三区块链映射信息hash(c)。若是,则校验成功,说明第三业务数据C未被中心服务器篡改,否则说明第三业务数据C被中心服务器篡改。在第三业务数据C未被中心服务器篡改的情况下,确定查询第三业务数据C,否则,不查询第三业务数据C。
数据查询流程中,终端m对第三业务数据C请求查询并在区块链终端集合校验,为保证实时性,该校验限于单一数据,且采用第三方服务器支撑校验。
在上述步骤中,终端m实现了第三业务数据C的获取与基本校验,并共同实现了第三业务数据C的去中心化校验,证明了当前临时数据的有效性。同时,在区块链广播流程中,由于区块链群落存在“参与终端端点较少”的可能性,因此借助第三方服务器临时提供数据支撑,实现数据请求的实时性;此处,第三方服务器仅作为区块链终端集合的区块链节点数据的备份端,且与中心服务器相隔离,不具有原始私有数据,因此既维护了数据的安全性,又保证了数据查询能力的实时性。
图7为本申请实施例提供的数据校验业务场景的数据管理示意图,如图7所示,数据管理请求为数据校验请求,原始业务数据为第四业务数据,涉及的设备包括区块链终端集合、中心服务器以及第三方服务器。
第一终端,用于向中心服务器发送数据校验请求,数据校验请求中包括第四业务数据的关联信息和第四业务数据的权限校验数据,第四业务数据的关联信息用于指示第四业务数据。
如图7中所示,区块链终端集合中包括多个终端,在图7中示例了终端1、终端2、...、终端N,其中,终端m即为第一终端。
终端m需校验第四业务数据X(即图7中的某私有业务数据),终端m基于C/S或B/S等网络请求模式,向中心服务器发送数据校验请求,数据校验请求中包括第四业务数据X的关联信息,以及第四业务数据X的权限校验数据。若需要校验多个业务数据,则根据先新后旧的顺序进行校验。
中心服务器,在根据第四业务数据的权限校验数据,确定第一终端具有对第四业务数据进行管理的权限的情况下,生成第四业务数据的第四数据映射信息和第四数据映射信息的第四区块链映射信息;向第一终端发送数据校验响应,数据校验响应中包括第四数据映射信息和第四区块链映射信息。
如图7所示,在中心服务器接收到数据校验请求后,根据第四业务数据X的权限校验数据对终端m进行校验,以判断终端m是否有对第四业务数据X进行管理的权限。若否,则不执行后续操作;若是,则中心服务器获取第四业务数据X,根据任意约定的消息摘要算法,生成第四业务数据X的第四数据映射信息x,并生成第四数据映射信息x的第四区块链映射信息hash(x),并在中心服务器的中心数据库中存储第四业务数据X、第四数据映射信息x和第四区块链映射信息hash(x)。
然后,中心服务器通过数据校验响应,向终端m返回第四数据映射信息x和第四区块链映射信息hash(x)。
第一终端,用于在确定第四业务数据和第四数据映射信息之间存在关联关系的情况下,向其他终端和第三方服务器广播区块链链数据请求,区块链链数据请求用于请求区块链节点变更数据。
终端m基于约定消息摘要算法(该算法任意,但应与中心服务器、第三方服务器的消息摘要算法约定一致)校验第四数据映射信息x,判定第四业务数据X与第四数据映射信息x的关联性。
在确定第四业务数据X与第四数据映射信息x之间存在关联关系的情况下,校验成功,基于区块链机制将区块链链数据请求广播至其他终端和第三方服务器。
其他终端,用于根据区块链链数据请求,向第一终端发送区块链节点变更数据。
区块链终端群落向终端m反馈近期节点数据,终端m据此与自身区块链链数据对比,并计算区块链映射数据,判定区块链数据准确性,并藉此更新自身链数据。
第一终端,还用于根据区块链节点变更数据,对第四业务数据进行校验,得到校验结果。
终端m基于最新区块链链数据,基于最新第四业务数据X,请求中心服务器,获取前一次第四业务数据X-1,与自身区块链链数据对比映射数据,判定数据一致性。
重复上述步骤,按需逆推一定次数,并可一直逆推至“对所有区块链数据与中心服务器完成对比”;任一对比存在差异,则说明中心服务器存在篡改第四业务数据的可能。
在数据校验流程中,终端m对权限内多个数据进行校验,且触发“区块链链数据对比更新”流程,数据较多、操作较多,并非实时,但对过往数据、甚至全链路映射数据进行校验,相比“数据查询”中的单个数据“浅校验”,该功能对系统整体数据准确性具有更强校验能力。
本申请实施例中,区块链数据机构与现行区块链算法一致,现行算法中,链节点基于前一个链节点与业务数据共同计算新节点的区块链映射数据。但在本申请方案,链节点的映射数据计算过程中,将“参数中的原始业务数据”改为消息摘要算法生成的业务数据映射,大幅降低区块链内部数据总量。
前述数据中,三类数据分两个步骤保证了“可信关系”的传递,实现了一种轻量化的数据信任关系传导机制:区块链映射信息与业务数据映射的关联主体在区块链终端集合中,由区块链机制保证数据可信;原始业务数据与数据映射信息的关联主体由约定的消息摘要算法保证可信。通过上述数据结构的关系传导,区块链映射信息与原始业务数据实现关系可信、不可篡改,任一中心数据库数据的变更将导致数据映射信息的差异、区块链映射信息的差异,最终导致篡改后的数据无法与区块链数据匹配,位于区块链中的终端便可校验发现,据此实现数据可信。
可选的,中心化数据结构中保存了区块链映射与前一次区块链映射的关联关系,使得任意终端均可在“不获取权限外数据”的前提下,将自身区块链链数据与中心化数据进行完全对比。前述系统通过“延迟性的数据校验”保证了系统整体数据的稳定性、准确性。
本申请实施例的方案,通过前述数据信任关系传导机制保证了中心化数据存储能力与区块链去中心化校验能力的关联性,同时减少了链上数据体量,也降低了数据的加解密计算复杂度。但由于区块链共识机制特性以及系统的局域群落端点的有限性,数据查询场景下仍可能存在“端点较少、查询较慢”的情况。在此特殊情况下,方案在前述流程中提出了“以第三方服务器为辅助”的数据查询方式。
第三方服务器为备份端点,仅具备群落端点“区块链数据”的备份能力,可供区块链终端集合查询区块链数据作为共识机制参考;但为了保证数据不可篡改性,第三方服务器不具备“数据变更”能力。在数据新增或数据修改流程中,区块链终端集合的终端会将区块链上的数据变更结果广播告知全部区块链节点,也会告知第三方服务器,以作备份;在数据查询流程中,区块链终端集合的终端会申请区块链其他端点数据,当其他端点较少或短时间内无法获取,则会申请第三方服务器获取区块链数据实现“共识校验”。虽然第三方服务器不完全处于区块链管理范围内,但是其一旦存在数据篡改,则在数据校验流程中可被发现。第三方服务器可以认为是区块链端点的“模拟端点”,结合其“不参与数据变更”但可“变更后实现备份”的特性,则可以使其等同普通区块链端点并参与共识校验,甚至可以优先其他群落端点参与共识校验,进而提升数据查询效率,促进数据查询实时性。
综上,本申请实施例的方案,针对中心化数据管理架构,基于区块链增加其去中心化数据的校验能力,使私有数据管理同时具备网络隐蔽、区域可信两种特性;通过轻量化数据关联机制,在业务数据与区块链剥离的前提下,维护数据关联性,并实现数据变更轻量化、数据查询实时性。将私有业务数据与区块链节点逻辑数据完全剥离,实现了私有数据面向外网不可见性,相较现行方案据更高安全与私密性;同时又通过创新性的轻量化数据信任关系传导机制实现了区块链对业务数据的去中心化可信管理,不仅实现了链上数据存储轻量化,而且实现了中心化数据存储的去中心化可信可校验能力,大幅降低区块链数据冗余度,也基于数据信任关系传导机制,相较现行类似区块链系统实现了数据加解密计算轻量化,促进了查询能力实时性。将数据查询/单点校验与数据全链校验相剥离,通过全链数据延迟校验与第三方支撑端模拟端点等方式,实现了去中心化数据查询功能的实时性。
图8为本申请实施例提供的数据管理方法的流程示意图一,该方法应用于中心服务器,如图8所示,该方法包括:
S81,接收第一终端发送的数据管理请求,所述第一终端为区块链终端集合包括的多个终端中的任意一个;
S82,根据所述数据管理请求,生成原始业务数据的数据映射信息;
S83,向所述第一终端发送所述数据管理请求对应的数据管理响应,所述数据管理响应中包括所述数据映射信息。
在一种可能的实施方式中,所述数据管理请求中包括所述原始业务数据的权限校验数据;
所述根据所述数据管理请求,生成原始业务数据的数据映射信息,包括:
根据所述原始业务数据的权限校验数据对所述第一终端进行校验,确定所述第一终端是否具有对所述原始业务数据进行管理的权限;
在确定所述第一终端具有对所述原始业务数据进行管理的权限的情况下,确定所述原始业务数据;
根据消息摘要算法对所述原始业务数据进行处理,生成所述数据映射信息。
在一种可能的实施方式中,所述数据管理请求为数据新增请求,所述原始业务数据为第一业务数据;所述根据所述数据管理请求,生成原始业务数据的数据映射信息,包括:
在根据所述第一业务数据的权限校验数据,确定所述第一终端具有对所述第一业务数据进行管理的权限的情况下,生成所述第一业务数据的第一数据映射信息;
向所述第一终端发送数据新增响应,所述数据新增响应中包括所述第一数据映射信息。
在一种可能的实施方式中,所述数据管理请求为数据修改请求,所述原始业务数据为第二业务数据;所述根据所述数据管理请求,生成原始业务数据的数据映射信息,包括:
在根据所述第二业务数据的权限校验数据,确定所述第一终端具有对所述第二业务数据进行管理的权限的情况下,生成所述第二业务数据的第二数据映射信息;
向所述第一终端发送数据修改响应,所述数据修改响应中包括所述第二数据映射信息。
在一种可能的实施方式中,所述数据管理请求为数据查询请求,所述原始业务数据为第三业务数据;所述根据所述数据管理请求,生成原始业务数据的数据映射信息,包括:
在根据所述第三业务数据的权限校验数据,确定所述第一终端具有对所述第三业务数据进行管理的权限的情况下,生成所述第三业务数据的第三数据映射信息和所述第三数据映射信息的第三区块链映射信息;
向所述第一终端发送数据修改响应,所述数据修改响应中包括所述第三数据映射信息和所述第三区块链映射信息。
在一种可能的实施方式中,所述数据管理请求为数据校验请求,所述原始业务数据为第四业务数据;所述根据所述数据管理请求,生成原始业务数据的数据映射信息,包括:
在根据所述第四业务数据的权限校验数据,确定所述第一终端具有对所述第四业务数据进行管理的权限的情况下,生成所述第四业务数据的第四数据映射信息和所述第四数据映射信息的第四区块链映射信息;
向所述第一终端发送数据校验响应,所述数据校验响应中包括所述第四数据映射信息和所述第四区块链映射信息。
图9为本申请实施例提供的数据管理方法的流程示意图二,该方法应用于区块链终端集合包括的多个终端中的任意第一终端,如图9所示,该方法包括:
S91,向中心服务器发送数据管理请求;
S92,接收所述中心服务器发送的数据管理响应,所述数据管理响应中包括原始业务数据的数据映射信息;
S93,对所述原始业务数据和所述数据映射信息进行关联关系检测,得到检测结果,所述检测结果用于指示所述原始业务数据和所述数据映射信息之间是否存在关联关系;
S94,根据所述检测结果,确定是否广播所述数据映射信息。
在一种可能的实施方式中,所述根据所述检测结果,确定是否广播所述数据映射信息,包括:
在基于所述检测结果确定所述原始业务数据和所述数据映射信息之间不存在关联关系的情况下,不向所述多个终端中除所述第一终端以外其他终端和所述第三方服务器广播所述数据映射信息;
在基于所述检测结果确定所述原始业务数据和所述数据映射信息之间存在关联关系的情况下,向所述其他终端和所述第三方服务器广播所述数据映射信息。
图10示例了一种电子设备的实体结构示意图,如图10所示,该电子设备可以包括:处理器(processor)1010、通信接口(Communication Interface)1020、存储器(memory)1030和通信总线1040,其中,处理器1010,通信接口1020,存储器1030通过通信总线1040完成相互间的通信。处理器1010可以调用存储器1030中的计算机程序,以执行数据管理方法的步骤。
此外,上述的存储器1030中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各实施例所提供的数据管理方法的步骤。
另一方面,本申请实施例还提供一种处理器可读存储介质,所述处理器可读存储介质存储有计算机程序,所述计算机程序用于使处理器执行上述各实施例提供的数据管理方法的步骤。
所述处理器可读存储介质可以是处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NANDFLASH)、固态硬盘(SSD))等。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (10)

1.一种数据管理系统,其特征在于,包括中心服务器和区块链终端集合,所述区块链终端集合中包括多个终端,其中:
所述多个终端中的任意第一终端,用于向所述中心服务器发送数据管理请求;
所述中心服务器,用于根据所述数据管理请求,生成原始业务数据的数据映射信息;向所述第一终端发送所述数据管理请求对应的数据管理响应,所述数据管理响应中包括所述数据映射信息;
所述第一终端,用于对所述原始业务数据和所述数据映射信息进行关联关系检测,得到检测结果,所述检测结果用于指示所述原始业务数据和所述数据映射信息之间是否存在关联关系;根据所述检测结果,确定是否广播所述数据映射信息。
2.根据权利要求1所述的系统,其特征在于,所述数据管理请求中包括所述原始业务数据的权限校验数据;
所述中心服务器根据所述数据管理请求,生成原始业务数据的数据映射信息的步骤,包括:
根据所述原始业务数据的权限校验数据对所述第一终端进行校验,确定所述第一终端是否具有对所述原始业务数据进行管理的权限;
在确定所述第一终端具有对所述原始业务数据进行管理的权限的情况下,确定所述原始业务数据;
根据消息摘要算法对所述原始业务数据进行处理,生成所述数据映射信息。
3.根据权利要求2所述的系统,其特征在于,所述系统还包括第三方服务器;所述第一终端根据所述检测结果,确定是否广播所述数据映射信息的步骤,包括:
在基于所述检测结果确定所述原始业务数据和所述数据映射信息之间不存在关联关系的情况下,不向所述多个终端中除所述第一终端以外其他终端和所述第三方服务器广播所述数据映射信息;
在基于所述检测结果确定所述原始业务数据和所述数据映射信息之间存在关联关系的情况下,向所述其他终端和所述第三方服务器广播所述数据映射信息。
4.根据权利要求3所述的系统,其特征在于,所述数据管理请求为数据新增请求,所述原始业务数据为第一业务数据;其中:
所述第一终端,用于向所述中心服务器发送所述数据新增请求,所述数据新增请求中包括所述第一业务数据和所述第一业务数据的权限校验数据;
所述中心服务器,在根据所述第一业务数据的权限校验数据,确定所述第一终端具有对所述第一业务数据进行管理的权限的情况下,生成所述第一业务数据的第一数据映射信息;向所述第一终端发送数据新增响应,所述数据新增响应中包括所述第一数据映射信息;
所述第一终端,用于在确定所述第一业务数据和所述第一数据映射信息之间存在关联关系的情况下,向所述其他终端和所述第三方服务器广播所述第一数据映射信息;
所述其他终端,用于对所述第一数据映射信息进行映射处理,得到第一区块链映射信息;向所述中心服务器发送所述第一数据映射信息和所述第一区块链映射信息;向所述第一终端发送所述第一区块链映射信息;
所述第一终端,还用于将接收到的所述第一数据映射信息和所述第一区块链映射信息发送给所述中心服务器;
所述中心服务器,还用于将所述其他终端发送的所述第一数据映射信息和所述第一区块链映射信息,与所述第一终端发送的所述第一数据映射信息和所述第一区块链映射信息进行比对,得到第一比对结果;根据所述第一比对结果,确定是否新增所述第一业务数据。
5.根据权利要求3所述的系统,其特征在于,所述数据管理请求为数据修改请求,所述原始业务数据为第二业务数据;其中:
所述第一终端,用于向所述中心服务器发送所述数据修改请求,所述数据修改请求中包括所述第二业务数据和所述第二业务数据的权限校验数据;
所述中心服务器,在根据所述第二业务数据的权限校验数据,确定所述第一终端具有对所述第二业务数据进行管理的权限的情况下,生成所述第二业务数据的第二数据映射信息;向所述第一终端发送数据修改响应,所述数据修改响应中包括所述第二数据映射信息;
所述第一终端,用于在确定所述第二业务数据和所述第二数据映射信息之间存在关联关系的情况下,向所述其他终端和所述第三方服务器广播所述第二数据映射信息;
所述其他终端,用于对所述第二数据映射信息进行映射处理,得到第二区块链映射信息;向所述中心服务器发送所述第二数据映射信息和所述第二区块链映射信息;向所述第一终端发送所述第二区块链映射信息;
所述第一终端,还用于将接收到的所述第二数据映射信息和所述第二区块链映射信息发送给所述中心服务器;
所述中心服务器,还用于将所述其他终端发送的所述第二数据映射信息和所述第二区块链映射信息,与所述第一终端发送的所述第二数据映射信息和所述第二区块链映射信息进行比对,得到第二比对结果;根据所述第二比对结果,确定是否修改所述第二业务数据。
6.根据权利要求3所述的系统,其特征在于,所述数据管理请求为数据查询请求,所述原始业务数据为第三业务数据;其中:
所述第一终端,用于向所述中心服务器发送所述数据查询请求,所述数据查询请求中包括所述第三业务数据的关联信息和所述第三业务数据的权限校验数据,所述第三业务数据的关联信息用于指示所述第三业务数据;
所述中心服务器,在根据所述第三业务数据的权限校验数据,确定所述第一终端具有对所述第三业务数据进行管理的权限的情况下,生成所述第三业务数据的第三数据映射信息和所述第三数据映射信息的第三区块链映射信息;向所述第一终端发送数据修改响应,所述数据修改响应中包括所述第三数据映射信息和所述第三区块链映射信息;
所述第一终端,用于在确定所述第三业务数据和所述第三数据映射信息之间存在关联关系的情况下,向所述其他终端和所述第三方服务器广播所述第三数据映射信息和所述第三区块链映射信息;
所述其他终端,用于根据所述第三数据映射信息,确定所述其他终端中存储的区块链映射信息是否准确;
所述第一终端,还用于在所述其他终端中存储的区块链映射信息准确的情况下,确定所述第三数据映射信息和所述第三区块链映射信息之间是否存在关联关系;根据所述第三数据映射信息和所述第三区块链映射信息之间是否存在关联关系,确定是否查询所述第三业务数据。
7.根据权利要求3所述的系统,其特征在于,所述数据管理请求为数据校验请求,所述原始业务数据为第四业务数据;其中:
所述第一终端,用于向所述中心服务器发送所述数据校验请求,所述数据校验请求中包括所述第四业务数据的关联信息和所述第四业务数据的权限校验数据,所述第四业务数据的关联信息用于指示所述第四业务数据;
所述中心服务器,在根据所述第四业务数据的权限校验数据,确定所述第一终端具有对所述第四业务数据进行管理的权限的情况下,生成所述第四业务数据的第四数据映射信息和所述第四数据映射信息的第四区块链映射信息;向所述第一终端发送数据校验响应,所述数据校验响应中包括所述第四数据映射信息和所述第四区块链映射信息;
所述第一终端,用于在确定所述第四业务数据和所述第四数据映射信息之间存在关联关系的情况下,向所述其他终端和所述第三方服务器广播区块链链数据请求,所述区块链链数据请求用于请求区块链节点变更数据;
所述其他终端,用于根据所述区块链链数据请求,向所述第一终端发送所述区块链节点变更数据;
所述第一终端,还用于根据所述所述区块链节点变更数据,对所述第四业务数据进行校验,得到校验结果。
8.一种数据管理方法,其特征在于,应用于中心服务器,所述方法包括:
接收第一终端发送的数据管理请求,所述第一终端为区块链终端集合包括的多个终端中的任意一个;
根据所述数据管理请求,生成原始业务数据的数据映射信息;
向所述第一终端发送所述数据管理请求对应的数据管理响应,所述数据管理响应中包括所述数据映射信息。
9.一种数据管理方法,其特征在于,应用于区块链终端集合包括的多个终端中的任意第一终端,所述方法包括:
向中心服务器发送数据管理请求;
接收所述中心服务器发送的数据管理响应,所述数据管理响应中包括原始业务数据的数据映射信息;
对所述原始业务数据和所述数据映射信息进行关联关系检测,得到检测结果,所述检测结果用于指示所述原始业务数据和所述数据映射信息之间是否存在关联关系;
根据所述检测结果,确定是否广播所述数据映射信息。
10.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求8或9所述的数据管理方法。
CN202310918736.6A 2023-07-25 2023-07-25 数据管理系统、方法及设备 Pending CN116962403A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310918736.6A CN116962403A (zh) 2023-07-25 2023-07-25 数据管理系统、方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310918736.6A CN116962403A (zh) 2023-07-25 2023-07-25 数据管理系统、方法及设备

Publications (1)

Publication Number Publication Date
CN116962403A true CN116962403A (zh) 2023-10-27

Family

ID=88445827

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310918736.6A Pending CN116962403A (zh) 2023-07-25 2023-07-25 数据管理系统、方法及设备

Country Status (1)

Country Link
CN (1) CN116962403A (zh)

Similar Documents

Publication Publication Date Title
US11461773B2 (en) Blockchain-based node management methods and apparatuses
CN110061838B (zh) 一种dns资源记录的去中心化存储系统及其实现方法
CN107579958B (zh) 数据管理方法、装置及系统
CN111079136B (zh) 一种基于区块链技术的雾计算入侵检测特征共享系统
CN108769230B (zh) 交易数据存储方法、装置、服务器及存储介质
CN110798466B (zh) 一种虚拟机场景下软件license的验证方法及系统
US11849052B2 (en) Certificate in blockchain network, storage medium, and computer device
CN108710681B (zh) 文件获取方法、装置、设备及存储介质
CN109861996B (zh) 基于区块链的关系证明方法、装置、设备及存储介质
CN113255014B (zh) 一种基于区块链的数据处理方法以及相关设备
US11962698B2 (en) Token node locking with fingerprints authenticated by digital certificates
CN112311779B (zh) 应用于区块链系统的数据访问控制方法及装置
CN112116349B (zh) 面向高吞吐率的图式账本的随机化共识方法和装置
CN106790296A (zh) 域名记录验证方法及装置
CN114913013B (zh) 一种基于区块链的租房交易系统及租房交易方法
CN114338242A (zh) 一种基于区块链技术的跨域单点登录访问方法及系统
WO2020137971A1 (ja) 位置情報提供システムおよび位置情報提供方法
CN112235290B (zh) 基于区块链的物联网设备管理方法及第一物联网设备
CN111866993B (zh) 无线局域网连接管理方法、装置、软件程序及存储介质
CN112073401B (zh) 一种基于HTTPS协议web应用自动更新证书的方法、程序及介质
US20230360046A1 (en) Blockchain-based block processing method and apparatus, device, storage medium, and program product
CN116962403A (zh) 数据管理系统、方法及设备
CN114117554B (zh) 执法数据可信验证方法、处理方法、系统和执法仪
CN112968863B (zh) 一种基于r树的分布式授权管理方法、设备及存储介质
CN116186725A (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