数据浏览、存储方法、装置、计算机设备以及存储介质与流程

文档序号:23618180发布日期:2021-01-12 10:28阅读:113来源:国知局
数据浏览、存储方法、装置、计算机设备以及存储介质与流程

本发明涉及区块链技术领域,特别涉及一种数据浏览、存储方法、装置、计算机设备以及存储介质。



背景技术:

由于节点设备在将交易数据打包成区块之前,仅会对交易数据的形式进行验证,而不会对交易数据中的内容进行验证,并且区块链系统在对区块进行共识时,也不会对区块中交易数据的内容进行验证,那么,即使交易数据携带非法信息,只要区块链系统对该交易数据所在的区块共识通过,就会将交易数据所在的区块存储在区块链系统的区块链上。

由于区块链可以由很多个区块组成,且每个区块中可以存储有多条交易数据,且在验证时不会对交易数据的内容进行验证,所以,区块链上所存储的交易数据中可能会存储有大量的非法信息,因此,当区块链系统中的节点设备在展示区块链上的交易数据时,不能保证被展示的交易数据的合法性,所以,亟需一种方法来保证被展示的交易数据的合法性。



技术实现要素:

本发明实施例提供了一种数据浏览、存储方法、装置、计算机设备以及存储介质,能够保证被展示的交易数据的合法性。该技术方案如下:

第一方面,提供了一种数据浏览方法,该方法包括:

接收区块浏览请求,所述区块浏览请求中包括区块信息;

基于所述区块信息,从区块链系统内的第一区块链上获取与所述区块信息对应的第一交易数据,所述第一交易数据携带第二交易数据在所述区块链系统的第二区块链上的位置信息,所述第二交易数据为不符合目标条件的交易数据;

在所述第二区块链上,获取所述区块信息所对应区块的区块内容;

基于所述第二交易数据的位置信息以及所述第一交易数据,对所述区块内容中的所述第二交易数据进行替换;

输出替换后的区块内容。

基于上述可能的实现方式,通过在第一区块链上获取与待浏览区块的区块信息对应的第一交易数据,可以根据第一交易数据对待浏览区块的第二交易数据进行替换,并输出替换后的区块内容,由于输出的区块内容中不包含第二交易数据,那么,当该第二交易数据携带非法信息时,通过输出替换后的区块内容,节点设备可以展示替换后的区块内容中的交易数据,从而可以保证被展示的交易数据的合法性。

在一种可能实现方式中,所述第三交易数据中的交易内容为空或为非空的预设内容。

在一种可能实现方式中,所述第一交易数据还携带区块链标识,所述区块链标识用于指示存储交易数据的区块链。

在一种可能实现方式中,所述区块链标识包括第一区块链标识和第二区块链标识,所述第一区块链标识用于指示存储交易数据的区块链为所述第一区块链,所述第一区块链标识用于指示存储交易数据的区块链为所述第二区块链。

第二方面,提供了一种数据存储方法,该方法包括:

查询区块链系统的第二区块链上的区块;

当在所述第二区块链上的第一区块内查询到第二交易数据时,生成第一交易数据,所述第一交易数据携带所述第二交易数据在所述区块链系统的第二区块链上的位置信息,所述第二交易数据为不符合目标条件的交易数据;

在所述区块链系统中广播所述第一交易数据;

将第二区块存储在所述区块链系统的第一区块链上,所述第二区块携带所述第一交易数据。

基于上述可能的实现方式,通过查询区块链系统的第二区块链上不符合目标条件的第二交易数据,来生成第一交易数据,并将该第二交易数存储在区块链系统内的第一区块链上。以便区块链系统中的节点设备可以通过第一交易数据对待浏览的第二交易数据进行替换。

在一种可能实现方式中,所述查询区块链系统的第二区块链上的区块包括:

每将一个区块存储在所述第二区块链上后,检测所述区块;或,

每经过预设时间后,检测所述预设时长内被存储至所述第二区块链上的区块。

基于上述可能的实现方式,通过实时查询区块链上的区块,可以提高查询区块的实时性,或,每经过预设时长后,监管节点设备才会对区块链上的区块进行一次查询操作,从而可以避免监管节点设备进行多次查询操作。

在一种可能实现方式中,所述第一交易数据还携带第三交易数据。

在一种可能实现方式中,所述第三交易数据中的交易内容为空或为非空的预设内容。

在一种可能实现方式中,所述第一交易数据还携带区块链标识,所述区块链标识用于指示存储交易数据的区块链。

在一种可能实现方式中,述区块链标识包括第一区块链标识和第二区块链标识,所述第一区块链标识用于指示存储交易数据的区块链为所述第一区块链,所述第一区块链标识用于指示存储交易数据的区块链为所述第二区块链。

第三方面,提供了一种数据存储方法,该方法包括:

接收第一交易数据,所述第一交易数据携带第二交易数据在区块链系统的第二区块链上的位置信息,所述第二交易数据为不符合目标条件的交易数据;

当所述第一交易数据通过验证时,生成第二区块,所述第二区块携带所述第一交易数据;

在所述区块链系统中广播所述第二区块;

将所述第二区块存储在所述区块链系统的第一区块链上。

在一种可能实现方式中,所述第二交易数据还携带第三交易数据。

在一种可能实现方式中,所述第三交易数据中的交易内容为空或为非空的预设内容。

在一种可能实现方式中,当所述第一交易数据所携带的监管节点设备的签名通过验证时,所述第一交易数据通过验证,否则,所述第一交易数据未通过验证。

在一种可能实现方式中,当所述第一区块链的创世区块中存储有所述监管节点设备的公钥时,所述监管节点设备的签名通过验证,否则,所述监管节点设备的签名不通过验证。

在一种可能实现方式中,所述第一交易数据还携带区块链标识,所述区块链标识用于指示存储交易数据的区块链。

在一种可能实现方式中,所述区块链标识包括第一区块链标识和第二区块链标识,所述第一区块链标识用于指示存储交易数据的区块链为所述第一区块链,所述第一区块链标识用于指示存储交易数据的区块链为所述第二区块链。

第四方面,提供了一种数据浏览的装置,用于执行上述数据浏览方法。具体地,该数据浏览的装置包括用于执行上述第一方面或上述第一方面的任一种可选方式提供的数据浏览方法的功能模块,其中,该上述方面为应用于区块链系统中节点设备的一种数据浏览方法所对应的方面。

第五方面,提供了一种数据存储的装置,用于执行上述数据存储方法。具体地,该数据存储的装置包括用于执行上述第二方面或上述第二方面的任一种可选方式提供的数据存储方法的功能模块,其中,该上述方面为应用于区块链系统中监管节点设备的一种数据存储方法所对应的方面。

第六方面,提供了一种数据存储的装置,用于执行上述数据存储方法。具体地,该数据存储的装置包括用于执行上述第三方面或上述第三方面的任一种可选方式提供的数据存储方法的功能模块,其中,该上述方面为应用于区块链系统中监管节点设备的一种数据存储方法所对应的方面。

第七方面,提供了一种计算机设备,该计算机设备包括处理器和存储器,该存储器中存储有至少一条指令,该指令由该处理器加载并执行以实现如上述数据浏览方法所执行的操作。

第八方面,提供了一种计算机设备,提供一种计算机设备,该计算机设备包括处理器和存储器,该存储器中存储有至少一条指令,该指令由该处理器加载并执行以实现如上述数据存储方法所执行的操作。

第九方面,提供了一种存储介质,该存储介质中存储有至少一条指令,该指令由处理器加载并执行以实现如上述数据浏览方法所执行的操作。

第十方面,提供了一种存储介质,该存储介质中存储有至少一条指令,该指令由处理器加载并执行以实现如上述数据存储方法所执行的操作。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种区块链系统的示意图;

图2是本发明实施例提供的一种节点设备的结构示意图;

图3是本发明实施例提供的一种数据存储方法的流程图;

图4是本发明实施例提供的一种第一交易数据的示意图;

图5是本发明实施例提供的一种数据浏览方法的流程图;

图6是本发明实施例提供的一种区块链的示意图;

图7是本发明实施例提供的一种数据浏览装置的结构示意图;

图8是本发明实施例提供的一种数据存储装置的结构示意图;

图9是本发明实施例提供的一种数据存储装置的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

图1是本发明实施例提供的一种区块链系统的示意图,参见图1,该区块链系统包括多个节点设备。其中,每个节点设备可以配置有至少一条区块链,也即是,区块链系统内有至少一个区块链,该至少一个区块链可以分为管理链和普通链,其中,管理链上存储的交易数据用于管理普通链,普通链用于存储普通的交易数据。

该多个节点设备可以是同一机构的多个设备,还可以是属于不同机构的多个设备,还可以是普通用户的设备,该多个节点设备均可以生成交易数据,将至少一个交易数据打包,并生成区块,但区块链系统存储数据时,因各个节点设备用途不同,可以分为监管节点设备和普通节点设备。

监管节点设备可以作为监管方,用于监管该区块链系统中普通链上的区块内是否存储有不良信息,当监管节点设备发现该区块链系统的普通链上所存储的交易数据携带不良信息时,该监管节点设备可以生成用于管理该普通链的交易数据,当监管节点设备生成的交易数据被存储在管理链上时,若区块链系统中的节点设备在向用户展示普通链上的交易数据之前,需要查询管理链上是否存储有和待浏览交易数据有关的交易数据,若存储有和待浏览交易数据有关的交易数据,则根据该交易数据中的内容对待浏览的交易数据进行替换,展示替换后的交易数据,以避免用户浏览到携带不良信息的交易数据。

区块链系统中的监管节点设备具有签发用于管理普通链的交易数据(简称监管交易数据)的权限,监管节点设备所签发的监管交易数据可以有不同的类型,例如,用于替换携带不良信息的交易数据的交易数据即是一种监管交易数据,当然,也可以是不同类型的监管节点设备签发不同类型的监管交易数据。

普通节点设备可以对监管交易数据进行权限的鉴定,为了便于普通节点设备进行权限的鉴定,在一些实施例中,区块链系统在创建管理链时,可以将监管节点设备的验证信息存储在管理链的创世区块中,监管节点设备的验证信息可以是指监管节点设备的公钥,当然也可以是表示监管节点设备的其他信息,本发明实施例对该验证信息不做具体限定。

图2是本发明实施例提供的一种计算机设备的结构示意图,计算机设备200包括可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessingunits,cpu)201和一个或一个以上的存储器202,其中,该存储器202中存储有至少一条指令,该至少一条指令由该处理器201加载并执行以实现下述各个方法实施例提供的方法。当然,该计算机设备200还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该计算机设备200还可以包括其他用于实现设备功能的部件,在此不做赘述。

在示例性实施例中,还提供了一种存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成下述实施例中的数据存储方法和数据浏览方法。例如,该存储介质可以是只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、只读光盘(compactdiscread-onlymemory,cd-rom)、磁带、软盘和光数据存储设备等。

以上是对区块链系统以及计算机设备的描述,其中,计算机设备可以是区块链中的节点设备,区块链系统中的节点设备可以将监管节点设备生成的交易数据存储至区块链系统中的管理链上,为了进一步体现存储监管节点设备生成的交易数据的过程,参见如图3所示的本发明实施例提供的一种数据存储方法的流程图,该方法具体包括:

301、监管节点设备查询区块链系统的第二区块链上的区块。

其中,该监管节点设备为该区块链系统中任一具有监管权限的节点设备,第二区块链为区块链系统中的普通链,用于存储普通的交易数据。

该监管节点设备可以查询该第二区块链上的至少一个区块,该监管节点设备可以实时查询第二区块链上的区块,也可以非实时的查询第二区块链上的区块。

在一种可能的实现方式中,该监管节点设备每将一个区块存储在该第二区块链上后,检测该区块,从而可以实现实时查询第二区块链上的区块,通过实时查询区块链上的区块,可以提高查询区块的实时性。

在一种可能的实现方式中,该监管节点设备每经过预设时长后,检测该预设时长内被存储至该第二区块链上的区块,从而可以实现非实时检测第二区块链上的区块,该预设时长可以是任一时长,本发明实施例对该预设时长不做具体限定。因此,每经过预设时长后,监管节点设备才会对区块链上的区块进行一次查询操作,从而可以避免监管节点设备进行多次查询操作。

在一些实施方式中,监管节点设备还可以基于查询区块链请求,执行本步骤301。其中,查询区块链请求用于指示查询区块链上不符合目标条件的交易数据,在一种可能的实现方式中,当监管节点设备接收到查询区块链请求时,该监管节点设备执行本步骤301。该查询区块链请求可以由用户的操作触发,例如,当具有监管权限的用户需要查询区块链上的交易数据时,该用户可以在监管节点设备的查询界面上点击查询按钮,以触发该查询区块链请求,从而监管节点设备可以接收到该查询区块链请求。

302、当在该第二区块链上的第一区块内查询到第二交易数据时,该监管节点设备生成第一交易数据,该第一交易数据携带第二交易数据在该区块链系统的第二区块链上的位置信息,该第二交易数据为不符合目标条件的交易数据。

第一区块为该第二区块链上的任一区块。该目标条件可以是交易数据的内容合法,当任一交易数据的内容是非法内容时,该任一交易数据为不符合目标条件的交易数据。

该监管节点设备可以通过查询该第一区块内的交易数据中是否存储有敏感词,来判断该交易数据是否为非法内容,当该交易数据中存在敏感词时,该交易数据的内容是非法内容,不符合目标条件,也即是该交易数据为第二交易数据,否则,该交易数据的内容不是非法内容,符合目标条件,也即是,该交易数据不是第二交易数据。例如,该敏感词可以是xxx,该监管节点设备可以查询第一区块内是否存储有携带敏感词xxx的交易数据,当该第一区块内的交易数据携带敏感词xxx时,则携带该敏感词xxx的交易数据为第二交易数据。本发明实施例对该监管节点设备确定第一区块内是否有第二交易数据的方式以及目标条件不做具体限定。

该第二交易数据在该区块链系统中的第二区块链上的位置信息包括在该第二区块链上该第一交易数据所在区块的区块信息以及第一交易数据在区块中序列号,区块信息可以是区块的高度、区块的编号等,本发明实施对该区块信息不做具体限定。

该第一交易数据用于管理区块链系统中的第二交易数据,该第一交易数据还可以携带监管节点设备的签名,以表明第一交易数据由监管节点设备生成。

该第一交易数据还可以携带第三交易数据,该第三交易数据用于替换待输出的第二交易数。该第三交易数据中的交易内容可以是空,也即是,第三交易数据中用于存储交易内容的字段为空,那么,由于该第三交易数据中的交易内容为空,在输出第二交易数据之前,将第二交易数据替换为该第三交易数据,然后,再输出第三交易数据,相当于删除了第二区块链上的该第二交易数据。该第三交易数据的交易内容也可以为非空的预设内容,也即是,第三交易数据中用于存储交易内容的字段存储有预设的非空内容,例如,一些具体的信息,那么,由于该第三交易数据中的交易内容为非空,在输出第二交易数据之前,将第二交易数据替换为该第三交易数据,然后,再输出第三交易数据,相当于修改了第二区块链上的该第二交易数据,本发明实施例对该非空的预设内容不做具体限定。

该第一交易数据还可以携带区块链标识,该区块链标识用于指示存储交易数据的区块链,该区块链标识可以包括第一区块链标识和第二区块链标识,其中,第一区块链标识用于指示存储交易数据的区块链为第一区块链,其中,第一区块链为区块链系统中的管理链,第二类型标识用于指示存储交易数据的区块链为该第二区块链,由于第一交易数据为监管节点设备生成的用于监管不法信息的交易数据,则该第一交易数据需要被存储在第一区块链上,那么,该第一交易数据所携带的区块链标识为第一区块链标识。可以用不同的字符串表示不同的区块链标识,例如,用0表示第一区块链标识,用1表示第二区块链标识。本发明实施例对区块链标识的表示方式不做具体限定。

由于区块链系统中的监管节点设备除了可以监管第二区块链上的非法信息以外,还可以监管其他信息,因此,监管节点设备所生成的监管交易数据可以有不同的类型,不同类型的监管交易数据用于监管不同的信息,则第一交易数据为一种监管交易数据,为了区分不同类型的监管交易数据,监管交易数据可以还携带交易类型标识,交易类型标识用于指示监管交易数据的类型。交易类型标识可以包括多种类型的交易类型标识,不同类型的交易类型标识用于指示不同类型的监管交易数据,那么,第一交易数据还可以携带交易类型标识,该第一交易数据所携带的交易类型标识用于指示第一交易数据的类型,例如,第一交易数据中的交易类型标识为替换类型的交易类型标识,用于指示进行交易数据的替换。

为了便于理解第一交易数据中的内容,参见图4,图4是本发明实施例提供的一种第一交易数据的示意图。从图4中的第一交易数据可知,该第一交易数据为交易数据n,其中,n为第一交易数据在第二区块中的序列号,该第一交易数据中携带有交易类型(type)、位置(position)信息、具体信息(message)、签名(signature)信息以及其他基本信息,其中,交易类型(type)相当于交易类型标识,该类型标识用于表示替换(change)数据,位置信息相当于第二交易数据在该区块链系统的第二区块链上的位置信息,具体信息相当于第三交易数据,签名信息相当于监管节点设备的签名。

303、该监管节点设备在区块链系统中广播该第一交易数据。

该监管节点设备在该区块链系统广播该第一交易数据,以便除该监管节点设备以外的其他节点设备能够接收到该第一交易数据。

304、第一节点设备接收该第一交易数据。

该第一节点设备为区块链系统中的任一节点设备。该第一节点设备接收的第一交易数据,可以是监管节点设备直接广播至第一节点设备的第一交易数据,还可以是其他节点设备基于监管节点设备所广播的第一交易数据。

305、当该第一交易数据通过验证时,该第一节点设备生成第二区块,该第二区块携带该第一交易数据。

第一节点设备可以接收任一节点设备广播的交易数据,因此,第一节点设备所接收的交易数据可能为监管交易数据,也可能为普通交易数据,由于监管交易数据需要被存储在第一区块链上,而普通交易数据需要被存储在第二区块链上,所以,第一节点设备当接收到任一交易数据后,需要对该任一交易数据所携带的区块链类型标识进行判断,判断该任一交易数据是监管交易数据还是普通交易数据,那么,当任一交易数据所携带的区块链类型标识为第一区块链类型标识时,说明该任一交易数据为监管交易数据,该任一交易数据需要被存储在第一区块链上;当任一交易数据所携带的区块链类型标识为第二区块链类型标识时,说明该任一交易数据为普通交易数据,该任一交易数据需要被存储在第二区块链上。

由于第一交易数据携带有第一区块链标识,则该第一交易数据需要被存储在第一区块链上。第一节点设备在将第一交易数据打包至第二区块之前,还需要对第一交易数据进行验证,当第一交易数据通过验证时,该第一节点设备才可以将第一交易数据打包至第二区块,否则,不能将第一交易数据打包至第二区块。

第一节点设备可以通过验证第一交易数据所携带的监管节点设备的签名,来验证该第一交易数据。在一种可能的实现方式中,当该第一交易数据所携带的监管节点设备的签名通过验证时,该第一交易数据通过验证,否则,该第一交易数据未通过验证。

区块链系统可以在第一区块链的创世区块中存储该区块链系统中所有监管节点设备的公钥,以便区块链系统中的节点设备可以验证第一交易数据是否由监管节点设备生成,因此,第一节点设备可以根据第一区块链的创世区块中存储的监管节点设备的公钥来验证监管节点设备的签名。在一种可能的实现方式中,当该第一区块链的创世区块中存储有该监管节点设备的公钥时,该监管节点设备的签名通过验证,否则,该监管节点设备的签名不通过验证。

第一节点设备可以根据创世区块中存储的监管节点设备的公钥能否解密该监管节点设备的签名,来验证创世区块中是否存储有该监管节点设备的公钥。在一种可能的实现方式中,第一节点设备可以将创世区块中存储的监管节点设备的公钥对该监管节点设备的签名进行解密,当该创世区块中存储的任一监管节点设备的公钥对该监管节点设备的签名解密成功时,则认为该创世区块中存储有该监管节点设备的公钥,否则,该创世区块中没有存储该监管节点设备的公钥。

那么,当监管节点设备的签名通过验证时,则说明该第一交易数据由监管节点设备生成,否则,该第一交易数据不是由监管节点设备生成,该第一节点设备就可以直接丢弃该第一交易数据。从而通过验证第一交易数据,可以保证第一交易数据的有效性,避免第一节点设备处理无效的第一交易数据,降低了第一节点设备的工作量。

当该第一交易数据通过验证后,该第一节点设备可以将该第一交易数据进行存储,当该第一节点设备存储有多个验证通过的监管交易数据时,该第一节点设备可以将该第一交易数据以及其他通过验证的监管交易数据进行打包,生成第二区块,那么,该第二区块内就存储有该第一交易数据。

需要说明的是,此时,该第一节点设备为生成第二区块的设备,当然,生成第二区块的设备也可以是区块链系统内的任一节点设备,第二区块内的交易数据均是监管交易数据。

306、该第一节点设备在该区块链系统中广播该第二区块。

该第一节点设备在该区块链系统广播该第二区块,以便除该第一节点设备以外的其他节点设备能够接收到该第二区块。

307、第一节点设备将该第二区块存储在该区块链系统的第一区块链上。

具体地,该第一节点设备将该第二区块存储在第一节点设备所配置的第一区块链上。在一些实施例中,只有当区块链系统对该第二区块达成共识时,该第一节点设备才能将该第二区块存储在该区块链系统的第一区块链上。

当区块链系统中除该第一节点设备以外的其他节点设备接收到第二区块后,可以对第二区块进行验证,当第二区块的区块高度比当前区块链上的最后一个区块的区块高度大1时,第二区块通过验证,否则第二区块未通过验证,或者,当第二区块的父哈希与当前区块链上的最后一个区块的区块哈希一致时,第二区块通过验证,否则第二区块未通过验证。那么,当该区块链系统中预设数目的节点设备均对该第二区块验证通过时,则该区块链系统对该第二区块达成共识,否则,对该第二区块未达成共识,本发明实施例对该预设数目不做具体限定。

本发明实施例提供的方法,通过查询区块链系统的第二区块链上不符合目标条件的第二交易数据,来生成第一交易数据,并将该第二交易数存储在区块链系统内的第一区块链上。以便区块链系统中的节点设备可以通过第一交易数据对待浏览的第二交易数据进行替换。并且,通过实时查询区块链上的区块,可以提高查询区块的实时性。并且,每经过预设时长后,监管节点设备才会对区块链上的区块进行一次查询操作,从而可以避免监管节点设备进行多次查询操作。并且,通过验证第一交易数据,可以保证第一交易数据的有效性,避免第一节点设备处理无效的第一交易数据,降低了第一节点设备的工作量。

通过图3所示的过程,当将第一交易数据存储在第一区块链后,区块链系统中的任一节点设备均可以从该第一区块链上获取该第一交易数据,从而,当第二交易数据为待浏览的交易数据时,该任一节点设备可以根据该第一交易数据对待浏览的第二交易数据进行替换。为了体现区块链系统中的节点设备根据该第一交易数据对待浏览的第二交易数据进行替换的过程,参见图5,图5为本发明实施例提供的一种数据浏览方法的流程图,该方法流程具体包括以下步骤:

501、第一节点设备接收区块浏览请求,该区块浏览请求中包括待区块信息。

该第一节点设备为区块链系统中的任一节点设备。该区块信息为待浏览区块的区块信息,用于指示待浏览的区块,该区块信息可以是待浏览区块的区块编号,当然也可以是指示待浏览区块的其他信息,本发明实施例对该区块信息不做具体限定。

该区块浏览请求可以由用户的操作来触发,例如,当用户需要浏览某一区块时,用户可以在第一节点设备的显示界面内输入区块编号,并点击显示界面中的浏览按钮,则可以触发该区块浏览请求,从而,第一节点设备可以接收到该区块浏览请求。

502、该第一节点设备基于该区块信息,从区块链系统内的第一区块链上获取与该区块信息对应的第一交易数据,该第一交易数据携带第二交易数据在该区块链系统的第二区块链上的位置信息,该第二交易数据为不符合目标条件的交易数据。

由于第一交易数据携带的位置信息可以包括第二交易数据所在区块的区块信息,因此,该第一节点设备可以遍历第一区块链所存储的交易数据,当任一交易数据所携带的位置信息中的区块信息与区块浏览请求中的区块信息一致时,该第一节点设备可以将该任一交易数据获取为与该区块信息对应的第一交易数据。具体地,该第一节点设备可以将任一交易数据所携带的位置信息中的区块信息与区块浏览请求中的区块信息进行对比,并根据对比结果判断这两个区块信息是否一致。

当第一节点设备在第一区块链上未获取到与该区块信息对应的第一交易数据时,说明该待浏览区块中未存储有第二交易数据,则该第一节点设备可以在获取到该待浏览区块的区块内容后,直接输出该区块内容。而当第一节点设备在第一区块链上获取到与该区块信息对应的第一交易数据时,说明该待浏览区块中存储有第二交易数据,那么,该第一节点设备为了避免用户浏览到该第二交易数据,需要进行以下步骤。

503、该第一节点设备在该第二区块链上,获取该区块信息所对应区块的区块内容。

该区块信息所对应区块即是待浏览区块,该区块内容包括该待浏览区块所存储的至少一条交易数据。该第一节点设备根据区块浏览请求中的区块信息,可以确定待浏览区块在第二区块链上的位置,从而该第一节点设备可以在第一节点设备所配置的第二区块链上获取该待浏览区块,并获取该待浏览区块的区块内容。

504、该第一节点设备基于该第二交易数据的位置信息以及该第一交易数据,对该区块内容中的该第二交易数据进行替换。

由于该第二交易数据的位置信息包括第二交易数据的序列号,因此,第一节点设备可以根据第二交易数据的序列号,确定区块内容中的第二交易数据,以便对区块内容中的第二交易数据进行替换。

考虑到该第一交易数据携带有第三交易数据,该第一节点设备可以将区块内容中的该二交易数据替换为该第三交易数据,以对该区块内容中的该第二交易数据进行替换。

505、该第一节点设备输出替换后的区块内容。

由于第一节点设备输出的区块内容中不包含第二交易数据,因此,用户浏览不到该第二交易数据,当该第二交易数据携带非法信息时,通过输出替换后的区块内容,可以避免用户浏览到区块链上的非法信息。

本发明实施例提供的方法,通过在第一区块链上获取与待浏览区块的区块信息对应的第一交易数据,可以根据第一交易数据对待浏览区块的第二交易数据进行替换,并输出替换后的区块内容,由于第一节点设备输出的区块内容中不包含第二交易数据,那么,当该第二交易数据携带非法信息时,通过输出替换后的区块内容,可以避免用户浏览到区块链上的非法信息,节点设备可以展示替换后的区块内容中的交易数据,从而可以保证被展示的交易数据的合法性。

为了进一步说明图3和图5这两个过程,在此作如下几点总结:

第1点、区块链(普通链,第二区块链)创建的同时,需要同时创建一条管理该区块链的区块链(管理链,第一区块链),管理链的创世区块需要写入监管节点设备的验证信息(即是监管节点设备的公钥),以表明被写入在创世区块中的监管节点设备具有往管理链写入交易的权限,写入交易相当于生成交易数据。只需在有管理普通链需求时,区块链系统才写入管理交易(写入管理交易即是生成第一交易数据),没有管理需求时,即使普通链在持续写入交易,管理链也无需写入任何管理交易。

第2点、任意节点设备从普通链读取数据前,需要先从管理链读取管理信息。监管节点以外的节点设备只能往普通链中,写入包含业务逻辑或业务数据的交易(普通交易数据)。

其中,管理链读取管理信息相当于从第一区块链上获取区块信息对应的第一交易数据,读取数据相当于获取区块内容,

第3点、监管节点设备如果发现普通链中存入了不法信息,那么,监管节点设备可以根据业务实际情况,生成删除不法消息或者修改不法消息的管理交易(即是第一交易数据),监管节点设备需要对管理交易进行签名。

例如,图6所示的本发明实施例提供的一种区块链的示意图中的普通链上的区块4内存入了不法信息,那么,监管节点设备可以生成对应的第一交易数据。具体地,此种类型的管理交易为图4所示的第一交易数据。

第4点、监管节点设备发起打包管理交易的请求,管理交易经过验证签名以后会被打包进入管理链,其中,发起打包管理交易的请求相当于监管节点设备在区块链系统中广播第一交易数据。

例如,图6所示的区块链示意图中的管理链上的区块3包含有管理交易。

第5点、由于交易读取前需要从管理链中读入管理信息,并且以管理链中存储的信息为准,则不法信息会被管理交易中的信息替换(也即是基于第一交易数据对第二交易数据进行替换)。

图7是本发明实施例提供的一种数据浏览装置的结构示意图,该装置包括:

接收模块701,用于执行上述步骤501;

获取模块702,用于执行上述步骤502;

所述获取模块702,还用于执行上述步骤503;

替换模块703,用于执行上述步骤504;

输出模块704,用于执行上述步骤505。

可选地,所述替换模块704,还用于将所述区块内容中的所述第二交易数据替换为所述第一交易数据所携带的第三交易数据。

可选地,所述第三交易数据中的交易内容为空或为非空的预设内容。

可选地,所述第一交易数据还携带区块链标识,所述区块链标识用于指示存储交易数据的区块链。

可选地,所述区块链标识包括第一区块链标识和第二区块链标识,所述第一区块链标识用于指示存储交易数据的区块链为所述第一区块链,所述第一区块链标识用于指示存储交易数据的区块链为所述第二区块链。

图8是本发明实施例提供的一种数据存储装置的结构示意图,该装置包括:

查询模块801,用于执行上述步骤301;

生成模块802,用于执行上述步骤302;

广播模块803,用于执行上述步骤303;

存储模块804,用于执行上述步骤307。

可选地,所述查询模块801,还用于:

每将一个区块存储在所述第二区块链上后,检测所述区块;或,

每经过预设时间后,检测所述预设时长内被存储至所述第二区块链上的区块。

可选地,所述第一交易数据还携带第三交易数据。

可选地,所述第三交易数据中的交易内容为空或为非空的预设内容。

可选地,所述第一交易数据还携带区块链标识,所述区块链标识用于指示存储交易数据的区块链。

可选地,所述区块链标识包括第一区块链标识和第二区块链标识,所述第一区块链标识用于指示存储交易数据的区块链为所述第一区块链,所述第一区块链标识用于指示存储交易数据的区块链为所述第二区块链。

图9是本发明实施例提供的一种数据存储装置的结构示意图,该装置包括:

接收模块901,用于执行上述步骤304;

生成模块902,用于执行上述步骤305;

广播模块903,用于执行上述步骤306;

存储模块904,用于执行上述步骤307。

可选地,所述第二交易数据还携带第三交易数据。

可选地,所述第三交易数据中的交易内容为空或为非空的预设内容。

可选地,当所述第一交易数据所携带的监管节点设备的签名通过验证时,所述第一交易数据通过验证,否则,所述第一交易数据未通过验证。

可选地,当所述第一区块链的创世区块中存储有所述监管节点设备的公钥时,所述监管节点设备的签名通过验证,否则,所述监管节点设备的签名不通过验证。

可选地,所述第一交易数据还携带区块链标识,所述区块链标识用于指示存储交易数据的区块链。

可选地,所述区块链标识包括第一区块链标识和第二区块链标识,所述第一区块链标识用于指示存储交易数据的区块链为所述第一区块链,所述第一区块链标识用于指示存储交易数据的区块链为所述第二区块链。

上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。

需要说明的是:上述实施例提供的数据浏览、存储装置在浏览数据或者存储数据时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据浏览、存储方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1