CN110647759A - 数据记录方法、节点、设备、存储介质及区块链系统 - Google Patents
数据记录方法、节点、设备、存储介质及区块链系统 Download PDFInfo
- Publication number
- CN110647759A CN110647759A CN201910784370.1A CN201910784370A CN110647759A CN 110647759 A CN110647759 A CN 110647759A CN 201910784370 A CN201910784370 A CN 201910784370A CN 110647759 A CN110647759 A CN 110647759A
- Authority
- CN
- China
- Prior art keywords
- data
- block
- node
- record
- recording
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Development Economics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Engineering & Computer Science (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Storage Device Security (AREA)
Abstract
本公开提供一种数据记录方法、节点、设备、存储介质及区块链系统,包括:监管节点接收矿工节点广播的第一区块;其中,第一区块包括存证记录数据;监管节点对第一区块中存证记录数据包括的存证数据进行验证;若存证非法存证数据,则监管节点生成与非法存证数据对应的删除记录请求;监管节点向矿工节点广播删除记录请求,以使矿工节点删除第一区块中包括的非法存证数据。通过本公开提供的方法、装置、设备、存储介质、节点及系统,矿工节点最终向外广播的区块中不包括非法存证数据,那么各节点最终写入链条的区块中也不会包括非法存证数据,因此,采用本公开的方法记录数据,不需要对区块链进行回滚操作以保证区块中不含有非法存证数据。
Description
技术领域
本公开涉及区块链技术,尤其涉及一种数据记录方法、节点、设备、存储介质及区块链系统。
背景技术
区块链是一种防篡改的、共享的数字化存储方式,用于记录公有或私有对等网络中的产生的数据信息记录。存储数据分发给网络中的所有成员节点,并在通过哈希密码算法链接的区块的顺序链中,永久记录网络中的对等节点之间发生的资产交易的历史记录。
由于区块链具有较高的保密性,导致存在通过区块链进行非法操作的情况。例如,可以利用区块链的存证功能进行非法活动。
现有技术中,数据一旦上链,只能对数据进行回滚来降低不良行为产生的影响,而这一过程复杂且耗时,因此,现有技术中对区块链中对数据进行修改的方案较为复杂,且成本高。
发明内容
本公开提供一种数据记录方法、节点、设备、存储介质及区块链系统,以解决现有技术中对区块链中对数据进行修改的方案较为复杂,且成本高的问题。
本公开的第一个方面是提供一种数据记录方法,包括:
监管节点接收矿工节点广播的第一区块;其中,所述第一区块包括存证记录数据;
监管节点对所述第一区块中存证记录数据包括的存证数据进行验证;
若存证非法存证数据,则所述监管节点生成与所述非法存证数据对应的删除记录请求;
监管节点向所述矿工节点广播所述删除记录请求,以使所述矿工节点删除第一区块中包括的所述非法存证数据。
本公开的第二个方面是提供一种数据记录方法,包括:
矿工节点接收普通节点发送的记录请求,所述记录请求包括价值记录数据、存证记录数据;
所述矿工节点根据所述记录请求生成第一区块,并向监管节点广播所述第一区块,以使所述监管节点根据所述第一区块中的存证记录数据进行验证;
所述矿工节点接收所述监管节点广播的删除记录请求,并根据所述删除记录请求删除所述第一区块中包括的非法存证数据;
所述矿工节点将删除所述非法存证数据后的第一区块广播至所述普通节点。
本公开的第三个方面是提供一种数据记录方法,包括:
普通节点根据用户操作生成记录请求,所述记录请求包括价值记录数据、存证记录数据;其中,所述存证记录数据中包括存证数据;
所述普通节点向矿工节点广播所述记录请求,以使所述矿工节点根据接收的所述记录请求生成包括存证记录数据的第一区块。
本公开的第四个方面是提供一种监控节点,包括:
接收模块,用于接收矿工节点广播的第一区块;其中,所述第一区块包括存证记录数据;
校验模块,用于对所述第一区块中存证记录数据包括的存证数据进行验证;
生成模块,用于若存证非法存证数据,则生成与所述非法存证数据对应的删除记录请求;
广播模块,用于向所述矿工节点广播所述删除记录请求,以使所述矿工节点删除第一区块中包括的所述非法存证数据。
本公开的第五个方面是提供一种矿工节点,包括:
接收模块,用于接收普通节点发送的记录请求,所述记录请求包括价值记录数据、存证记录数据;
生成模块,用于根据所述记录请求生成第一区块;
广播模块,用于向监管节点广播所述第一区块,以使所述监管节点根据所述第一区块中的存证记录数据进行验证;
所述接收模块还用于接收所述监管节点广播的删除记录请求;
删除模块,用于根据所述删除记录请求删除所述第一区块中包括的非法存证数据;
所述广播模块还用于将删除所述非法存证数据后的第一区块广播至所述普通节点。
本公开的第六个方面是提供一种普通节点,包括:
生成模块,用于根据用户操作生成记录请求,所述记录请求包括价值记录数据、存证记录数据;其中,所述存证记录数据中包括存证数据;
广播模块,用于向矿工节点广播所述记录请求,以使所述矿工节点根据接收的所述记录请求生成包括存证记录数据的第一区块。
本公开的第七个方面是提供一种数据记录设备,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并配置为由所述处理器执行以实现如上述第一方面、第二方面或第三方面所述的数据记录方法。
本公开的第八个方面是提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现如上述第一方面所述的数据记录方法。
本公开的第九个方面是提供一种区块链系统,包括:
如第四方面所述的监控节点、如第五方面所述的矿工节点、如第六方面所述的普通节点。
本公开提供的数据记录方法、节点、设备、存储介质及区块链系统的技术效果是:
本公开提供的数据记录方法、节点、设备、存储介质及区块链系统,包括:监管节点接收矿工节点广播的第一区块;其中,第一区块包括存证记录数据;监管节点对第一区块中存证记录数据包括的存证数据进行验证;若存证非法存证数据,则监管节点生成与非法存证数据对应的删除记录请求;监管节点向矿工节点广播删除记录请求,以使矿工节点删除第一区块中包括的非法存证数据。本公开提供的数据数据记录方法、节点、设备、存储介质及区块链系统中,矿工节点生成区块后,将其广播至监控节点,由监控节点对区块中的存证数据进行验证,若确定区块中存在非法存证数据,则监控节点指示矿工节点删除区块中的非法存证数据,以使矿工节点能够删除第一区块中包括的非法存证数据,还能够使矿工节点向外广播不包括非法存证数据的第一区块,使得其他节点也能够删除第一区块中包括的非法存证数据。并且,第一区块中记录有至少一条存证记录数据,且该存证记录数据中包括存证数据,使得在需要删除区块中的非法存证数据时,只需要删除存证记录数据中包括的相应存证数据即可,不需要对其他信息进行大量修改,能够简化修改区块数据的步骤。
附图说明
图1为一示例性实施例示出的系统架构图;
图2为本发明一示例性实施例示出的系统架构图;
图3为本发明第一示例性实施例示出的数据记录方法的流程图;
图4为本发明第二示例性实施例示出的数据记录方法的流程图;
图5为本发明第三示例性实施例示出的数据记录方法的流程图;
图6为本发明第四示例性实施例示出的数据记录方法的流程图;
图6A为本发明第一示例性实施例示出的区块结构示意图;
图6B为本发明第二示例性实施例示出的区块结构示意图;
图7为本发明第五示例性实施例示出的数据记录方法的流程图;
图8为本发明第六示例性实施例示出的数据记录方法的流程图;
图8A为本发明一示例性实施例示出的记录数据生成方法;
图9为本发明第七示例性实施例示出的数据记录方法的流程图;
图10为本发明一示例性实施例示出的监控节点的结构图;
图11为本发明另一示例性实施例示出的监控节点的结构图;
图12为本发明一示例性实施例示出的矿工节点的结构图;
图13为本发明一示例性实施例示出的普通节点的结构图;
图14为本发明另一示例性实施例示出的普通节点的结构图;
图15为本发明一示例性实施例示出的数据记录设备的结构图。
具体实施方式
图1为一示例性实施例示出的系统架构图。
如图1所示,在一区块链系统中可以包括普通节点11,矿工节点12。普通节点11可以发起数据请求,例如普通节点A向普通节点B转移5个数字凭证,并附带存证数据。则普通节点11可以广播该数据请求。
各个矿工节点12接收到上述请求后,可以对请求进行验证。矿工节点 12中可以存储区块链数据,并根据存储的数据对上述请求进行验证,例如检查普通节点A是否具有5个数字凭证。
若验证通过,则矿工节点12可以根据该记录请求生成一个区块,并向全网广播该区块,以使全网的区块链数据同步。
在这一过程中,假设有的区块中存在非法数据,例如非法存证数据,则需要删除相应区块中的数据。但是,由于区块上链后全网同步,若修改区块链上的区块数据,需要修改每个节点中的区块链。例如需要把非法数据所在的区块内的所有记录都重新执行进行打包,这一过程复杂且耗时长。
为了解决上述技术问题,本申请的方案中,在区块链系统中添加监管节点。该监管节点可以对上链的区块进行合法性验证。若区块中存在非法存证数据,则监管节点可以指示矿工节点删除相应的数据,从而使矿工节点能够将这删除非法数据的信息同步至全网,以使全网的节点均删除该非法存证数据。
图2为本发明一示例性实施例示出的系统架构图。
如图2所示,在一区块链系统中可以包括普通节点11、矿工节点12、监管节点13。普通节点11可以发起数据记录请求。矿工节点12可以根据相应的请求生成区块。
矿工节点12在生成区块后,将区块广播进行全网广播,具体可以广播至监管节点13、普通节点11,由监管节点13对区块中包括的数据进行合法性验证,若区块中包括非法数据,则该监管节点13还向矿工节点12发送删除该非法数据的请求。矿工节点12接收到相应的请求后,可以删除区块中的非法数据,并广播删除非法数据后的区块以及根据删除该非法数据的请求生成的区块,使得接收到这两个区块的节点可以删除本地存储的区块中包括的非法数据。
对于同一个节点,其既可以是矿工节点,也可以是普通节点。而对于是监管节点的节点,可以限制其权限,使其只作为监管节点。
下面分别以监管节点、矿工节点、普通节点三个角度解释说明本申请提供的方案。
图3为本发明第一示例性实施例示出的数据记录方法的流程图。
如图3所示,本实施例提供的数据记录方法包括:
步骤301,监管节点接收矿工节点广播的第一区块;其中,第一区块包括存证记录数据。
其中,本实施例提供的方法可以由区块链系统中的节点执行,例如可以由图2所示系统中的监管节点执行。
具体的,区块链系统中的普通节点可以发起数据记录的请求,例如,普通节点可以使用私钥对需要记录的数据进行签名,并根据签名后的数据生成数据记录请求。例如,普通节点可以对价值数据进行签名,生成价值记录数据,还可以对存证数据进行签名,并基于存证数据的签名、价值记录数据的哈希值、存证数据以及存证数据的哈希值生成存证记录数据。普通节点可以将这两个记录数据广播至全网,以发起数据记录的请求。
该存证记录数据中包括存证数据。
实际应用时,矿工节点可以对接收的价值记录数据进行验证。
在一种实施方式中,若验证通过,则矿工节点可以根据验证通过的价值记录数据生成第一区块。第一区块中可以包括多条记录数据,具体包括存证记录数据,还可以包括价值记录数据。
第一区块中可以包括两棵Merkle树,用于分别记录价值记录数据和存证记录数据。例如,在基于链式存储的分布式账本中,可以采用这种实施方式。
在另一种实施方式中,若验证通过,则矿工节点可以根据该记录请求生成第一区块、第三区块。第一区块中可以包括至少一条存证记录数据,第三区块中可以包括至少一条价值记录数据。
第一区块中可以包括一棵Merkle树,用于存储存证记录数据,第三区块中可以包括一颗Merkle树,用于存储价值记录数据。例如,在基于DAG存储的分布式账本中,可以采用这种实施方式。
其中,在生成的第一区块中记录有至少一条存证记录数据,且该存证记录数据中包括存证数据,使得在需要删除区块中的非法存证数据时,只需要删除存证记录数据中包括的相应存证数据即可,不需要对其他信息进行大量修改,能够简化修改区块数据的步骤。
存证数据可以是发起记录请求时的附加信息,例如2009年1月3日18 点15分零5秒,比特币创世区块诞生。在这个区块上,中本聪留下了当天《泰晤士报》的头版文章标题——The Times 03/Jan/2009Chancellor on brink of second bailout for banks(2009年1月3日,财政大臣正处于实施第二轮银行紧急援助的边缘)。该标题内容就是一个存证数据。
其中,在现有技术中,矿工节点只对记录请求中的价值记录进行验证,若验证通过,则生成区块并广播至区块链系统。各个节点直接将该区块写入区块链。例如,矿工节点根据记录请求中的token(指数字化价值载体,例如可以是代币、代金券、赠券、令牌、奖牌等的数字凭证)进行验证,比如普通节点A发起一个请求,请求向节点B转发5个数字凭证,则矿工节点需要验证普通节点A是否具有5个数字凭证。
而本申请的方案中,矿工节点在生成第一区块后对其进行广播,使得监管节点能够收到该第一区块,并且,监管节点可以对第一区块进行验证,包括对第一区块中的存证数据进行验证。
具体的,监管节点可以接收到矿工节点广播的上述第一区块,第一区块中可以包括存证记录数据,存证记录数据中包括存证数据。
步骤302,监管节点对第一区块中存证记录数据包括的存证数据进行验证。
进一步的,监管节点可以对第一区块进行解析,获取其中包括的存证记录数据。由于矿工节点可以对价值记录数据进行校验,因此,监管节点可以不对价值记录数据再次校验,而主要对存证记录数据进行校验。
实际应用时,监管节点还可以提取存证记录数据中包括的存证数据。例如,第一区块中打包了4条记录数据,分别包括普通节点A、B、C、D广播的存证记录数据,则监管节点可以分别提取区块中由节点A、B、C、D广播的存证记录数据中的存证数据。
其中,监管节点可以对提取出的存证数据分别进行验证,以确定这些存证数据的合法性。
具体的,监管节点中可以存储有预设的用于验证存证数据是否合法的方法。例如,可以是敏感词汇的识别方法,图像中敏感信息的识别方法等。若识别存证数据中包括敏感内容,则确定其非法。
步骤303,若存证非法存证数据,则监管节点生成与非法存证数据对应的删除记录请求。
进一步的,若监管节点确定一个存证数据是非法的,则监管节点可以生成与该非法存证数据对应的删除记录请求。例如,存证数据A是非法的,则监管节点可以生成A对应的删除记录请求,以使矿工节点删除第一区块中的非法数据A。
实际应用时,删除记录请求中可以包括第一区块的标识,还可以包括非法存证数据对应的记录序号。这些数据能够使矿工节点快速定位到需要删除的存证数据。
其中,第一区块的标识可以是第一区块的哈希值。
非法存证数据对应的记录序号可以是在merlke树中包括非法存证数据的存证记录数据对应的序号。例如矿工在打包生成第一区块时,可以根据多条存证数据生成一颗merlke树,merlke树中的存证记录数据可以具有序号。
步骤304,监管节点向矿工节点广播删除记录请求,以使矿工节点删除第一区块中包括的非法存证数据。
具体的,监管节点可以向矿工节点广播生成的删除记录请求。
进一步的,监管节点可以根据第一区块标识、非法存证数据对应的记录序号生成删除记录请求,并将其进行广播。
矿工节点接收到删除记录请求后,可以对其进行验证。若验证通过,则矿工节点根据删除记录请求中的信息,确定非法存证数据对应的第一区块,并删除第一区块中对应的非法存证数据。由于存证数据是直接存储在存证记录数据中的,因此,可以直接删除存证记录数据中包括的相应存证数据。
具体可以根据非法存证数据对应的记录序号确定第一区块中的非法存证数据。例如,删除记录请求中包括第一区块标识U0,还包括存证记录数据对应的记录序号n,则矿工节点可以删除区块U0中记录序号为n的存证记录数据中的存证数据。
实际应用时,矿工节点可以向普通节点广播删除非法数据后的第一区块,普通节点可以判断其中存在缺失数据的情况,普通节点还可以接收监管节点广播的删除记录请求。并确定出区块缺失数据与删除记录请求中的数据相应,因此可以基于这一结果,删除写入区块链中的第一区块中的非法存证数据。
其中,矿工节点还可以根据删除记录请求生成第二区块,具体可以对删除记录请求中的数据进行打包,生成第二区块,并进行广播。普通节点可以在收到该广播后,确定出第一区块中缺失的数据与第二区块中指示删除的数据相应,并基于这一结果,删除写入区块链中的第一区块中的非法存证数据。
相似的,普通节点记录的第一区块记录有至少一条存证记录数据,且该存证记录数据中包括存证数据,使得在需要删除区块中的非法存证数据时,只需要删除存证记录数据中包括的相应存证数据即可,不需要对其他信息进行大量修改,能够简化修改区块数据的步骤。
本实施例提供的方法用于记录数据,该方法由设置有本实施例提供的方法的设备执行,该设备通常以硬件和/或软件的方式来实现。
本实施例提供的数据记录方法,包括:监管节点接收矿工节点广播的第一区块;其中,第一区块包括存证记录数据;监管节点对第一区块中存证记录数据包括的存证数据进行验证;若存证非法存证数据,则监管节点生成与非法存证数据对应的删除记录请求;监管节点向矿工节点广播删除记录请求,以使矿工节点删除第一区块中包括的非法存证数据。本实施例提供的数据记录方法中,矿工节点生成区块后,将其广播至监控节点,由监控节点对区块中的存证数据进行验证,若确定区块中存在非法存证数据,则监控节点指示矿工节点删除区块中的非法存证数据,以使矿工节点能够删除第一区块中包括的非法存证数据,还能够使矿工节点向外广播不包括非法存证数据的第一区块,使得其他节点也能够删除第一区块中包括的非法存证数据。并且,第一区块中记录有至少一条存证记录数据,且该存证记录数据中包括存证数据,使得在需要删除区块中的非法存证数据时,只需要删除存证记录数据中包括的相应存证数据即可,不需要对其他信息进行大量修改,能够简化修改区块数据的步骤。因此,采用本实施例的方法记录数据,不需要对区块链进行回滚操作以保证区块中不含有非法存证数据。
图4为本发明第二示例性实施例示出的数据记录方法的流程图。
如图4所示,本实施例提供的数据记录方法包括:
步骤401,监管节点接收矿工节点广播的第一区块;其中,第一区块包括存证记录数据。
本实施例提供的方法可以由区块链系统中的节点执行,例如可以由图2 所示系统中的监管节点执行。
步骤401与步骤301的具体原理和实现方式类似,此处不再赘述。
步骤402,监管节点对第一区块中存证记录数据包括的存证数据进行验证。
步骤402与步骤302的具体原理和实现方式类似,此处不再赘述。
步骤403,若存证非法存证数据,则监管节点生成非法存证数据对应的删除记录请求。
步骤404,监管节点向矿工节点广播删除记录请求,以使矿工节点删除第一区块中包括的非法存证数据。
其中,删除记录请求包括:第一区块的哈希值、非法存证数据对应的记录序号。
通过第一区块的哈希值,矿工节点可以确定包括非法存证数据的第一区块,例如删除记录请求中包括的哈希值是U0,则矿工节点可以获取哈希值是 U0的第一区块。
具体的,矿工节点还可以根据删除记录请求中包括的记录序号,在第一区块中确定非法存证数据。例如,删除记录请求包括记录序号是Tx1,则矿工节点可以删除记录序号是Tx1的存证记录数据中包括的存证数据,也就是删除非法存证数据。
若区块中以merlke树的形式存储存证记录数据,则上述记录序号可以是存证记录数据在merlke树中的序号。
步骤405,监管节点接收矿工广播的第二区块;其中,第二区块包含删除记录请求。
进一步的,矿工验证删除记录请求成功后,还可以根据删除记录请求生成第二区块,例如,删除记录请求中包括区块标识、存证记录数据的序号,则第二区块中也可以包括区块标识、存证记录数据的序号。第二区块中可以包括一条删除记录请求,也可以包括多于一条的删除记录请求。
实际应用时,矿工节点还可以向监管节点、普通节点广播该第二区块,例如,矿工节点可以全网广播第二区块。
步骤406,监管节点对第二区块进行验证。
步骤407,若验证通过,则删除第一区块中包括的非法存证数据,并记录第二区块。
其中,监管节点接收到第二区块后,可以对第二区块进行验证。
若验证通过,则监管节点可以提取第二区块中包括的删除记录请求,具体可以提取区块标识、存证记录数据的记录序号,并基于这些信息确定并删除对应的非法存证数据。本实施例提供的方法中,矿工节点验证通过一删除记录请求后,会根据该请求删除非法存证数据,并发出一第二区块,为了使全网的数据同步,则监管节点可以根据第二区块删除第一区块中的非法存证数据,从而使监管节点中的第一区块与矿工节点中的第一区块中包括的内容相同。
图5为本发明第三示例性实施例示出的数据记录方法的流程图。
如图5所示,本实施例提供的数据记录方法包括:
步骤501,矿工节点接收普通节点发送的记录请求,记录请求包括价值记录数据、存证记录数据。
其中,本实施例提供的方法可以由区块链系统中的节点执行,例如可以由图2所示系统中的矿工节点执行。
具体的,区块链系统中的普通节点可以发起数据记录的请求,例如,普通节点可以使用私钥对需要记录的数据进行签名,并根据签名后的数据生成数据记录请求。例如,普通节点可以对价值数据进行签名,生成价值记录数据,还可以对存证数据进行签名,并基于存证数据的签名、价值记录数据的哈希值、存证数据以及存证数据的哈希值生成存证记录数据。普通节点可以将这两个记录数据广播至全网,以发起数据记录的请求。
实际应用时,矿工节点可以对接收的价值记录数据进行验证。
步骤502,矿工节点根据记录请求生成第一区块,并向监管节点广播第一区块,以使监管节点根据第一区块中的存证记录数据进行验证。
其中,矿工节点可以对记录请求进行验证,若验证通过,则可以根据验证通过的价值记录数据生成第一区块。
第一区块中可以包括多条记录数据,具体可以包括价值记录数据及其对应的存证记录数据。
具体的,第一区块中可以包括多条记录数据,具体可以包括存证记录数据,还可以包括价值记录数据。
第一区块中可以包括两棵Merkle树,用于分别记录价值记录数据和存证记录数据。例如,在基于链式存储的分布式账本中,可以采用这种实施方式。
在另一种实施方式中,若验证通过,则矿工节点可以根据该记录请求生成第一区块、第三区块。第一区块中可以包括至少一条存证记录数据,第三区块中可以包括至少一条价值记录数据。
矿工节点可以广播生成的第一区块,以使监管节点够收到该第一区块,并且,监管节点可以对第一区块进行验证,具体对第一区块中的存证数据进行验证。其中,在生成的第一区块中记录有至少一条存证记录数据,且该存证记录数据中包括存证数据,使得在需要删除区块中的非法存证数据时,只需要删除存证记录数据中包括的相应存证数据即可,不需要对其他信息进行大量修改,能够简化修改区块数据的步骤。
进一步的,监管节点可以对第一区块进行解析,获取其中包括的存证记录数据。由于矿工节点可以对价值记录数据进行校验,因此,监管节点可以不对价值记录数据再次校验,而可以对存证记录数据进行校验。
实际应用时,监管节点还可以提取存证记录数据中包括的存证数据。例如,第一区块中打包了4条记录数据,分别包括普通节点A、B、C、D广播的存证记录请求,则监管节点可以分别提取区块中由节点A、B、C、D广播的存证记录数据中的存证数据。
其中,监管节点可以对提取出的存证数据分别进行验证,以确定这些存证数据的合法性。
具体的,监管节点中可以存储有预设的用于验证存证数据是否合法的方法。例如,可以是敏感词汇的识别方法,图像中敏感信息的识别方法等。若识别存证数据中包括敏感内容,则确定其非法。
进一步的,若监管节点确定一个存证数据是非法的,则监管节点可以生成与该非法存证数据对应的删除记录请求。例如,存证数据A是非法的,则监管节点可以生成A对应的删除记录请求,以使矿工节点删除第一区块中的非法数据A。
实际应用时,删除记录请求中可以包括第一区块的标识,还可以包括非法存证数据对应的记录序号。这些数据能够使矿工节点快速定位到需要删除的存证数据。非法存证数据对应的记录序号可以是包括该非法存证数据的存证记录数据的序号。
其中,第一区块的标识可以是第一区块的哈希值。
非法存证数据对应的记录序号可以是在merlke树中该非法存证数据对应的序号。例如矿工在打包生成第一区块时,可以根据多条存证数据生成一颗 merlke树,merlke树中的存证记录数据可以具有序号。
步骤503,矿工节点接收监管节点广播的删除记录请求,并根据删除记录请求删除第一区块中包括的非法存证数据。
其中,矿工节点接收到删除记录请求后,可以对其进行验证。若验证通过,则矿工节点根据删除记录请求中的信息,确定非法存证数据对应的第一区块,并删除第一区块中对应的非法存证数据。由于存证数据是直接存储在存证记录数据中的,因此,可以直接删除存证记录数据中包括的相应存证数据。
具体可以根据非法存证记录数据对应的记录序号确定第一区块中的非法存证数据。例如,删除记录请求中包括第一区块标识U0,还包括存证记录数据对应的记录序号n,则矿工节点可以删除区块U0中记录序号为n的存证记录数据中包括的存证数据。
步骤504,矿工节点将删除非法存证数据后的第一区块广播至普通节点。
实际应用时,矿工节点可以向普通节点广播删除非法数据后的第一区块,普通节点可以判断其中存在缺失数据的情况,普通节点还可以接收监管节点广播的删除记录请求。并确定出区块缺失数据与删除记录请求中的数据相应,因此可以基于这一结果,删除写入区块链中的第一区块中的非法存证数据。
其中,矿工节点还可以根据删除记录请求生成第二区块,具体可以对删除记录请求中的数据进行打包,生成第二区块,并进行广播。普通节点可以在收到该广播后,确定出第一区块中缺失的数据与第二区块中指示删除的数据相应,并基于这一结果,删除写入区块链中的第一区块中的非法存证数据。具体的,由于矿工节点向普通节点广播的区块中不包括非法存证数据,使得普通节点能够基于这一区块的内容删除本地存储的区块中点的非法存证数据,因此,采用本实施例的方法记录数据,不需要对区块链进行回滚操作以保证区块中不含有非法存证数据。
相似的,普通节点记录的第一区块记录有至少一条存证记录数据,且该存证记录数据中包括存证数据,使得在需要删除区块中的非法存证数据时,只需要删除存证记录数据中包括的相应存证数据即可,不需要对其他信息进行大量修改,能够简化修改区块数据的步骤。
本实施例提供的方法用于记录数据,该方法由设置有本实施例提供的方法的设备执行,该设备通常以硬件和/或软件的方式来实现。
本实施例提供的数据记录方法,包括:矿工节点接收普通节点发送的记录请求,记录请求包括价值记录数据、存证记录数据;矿工节点根据记录请求生成第一区块,并向监管节点广播第一区块,以使监管节点根据第一区块中的存证记录数据进行验证;矿工节点接收监管节点广播的删除记录请求,并根据删除记录请求删除第一区块中包括的非法存证数据;矿工节点将删除非法存证数据后的第一区块广播至普通节点。本实施例提供的方法,矿工节点生成包括记录请求的区块后,不直接将其广播至普通节点,而是将其先广播至监管节点,从而使监管节点对区块中的存证数据进行验证。并且,矿工节点还能够根据监管节点广播的删除请求删除区块中的非法存证数据,并在删除后,将不包括非法存证数据的区块广播至普通节点,使接收到该区块的节点能够修改本地存储的区块,具体可以删除本地区块链中记录的非法存证数据。因此,本实施例提供的方法,不需要对区块链进行回滚操作以保证区块中不含有非法存证数据。
图6为本发明第四示例性实施例示出的数据记录方法的流程图。
如图6所示,本实施例提供的数据记录方法在图5所示的基础上,还包括:
步骤601,矿工节点根据删除记录请求生成第二区块,并全网广播第二区块。
步骤601的执行时序与步骤504不做限制。
其中,矿工节点接收到删除记录请求后,可以对其进行验证,若验证通过,则还可以根据删除记录请求生成第二区块,并全网广播第二区块。
具体的,矿工节点广播完第二区块后,监管节点和普通节点都可以接收到该的第二区块。对于监管节点来说,其接收到第二区块后,可以根据第二区块中的删除记录请求删除第一区块中的非法存证数据,从而使得存储的区块数据与矿工节点中的区块数据同步。
进一步的,普通节点接收到第二区块后,可以根据第二区块确定第一区块中缺失存证数据的原因,即被监管节点指定删除,使得普通节点可以基于这一信息同步本地区块,也删除本地区块链中记录的非法存证数据。例如,可以根据第二区块中包括的区块标识以及存证数据的记录序号,确定出需要删除的非法存证数据。
在一种可选的实施方式中,步骤502中的矿工节点根据记录请求生成第一区块,具体可以包括:
矿工节点根据记录请求中的存证记录数据生成第一区块,矿工节点根据价值记录数据生成第三区块。
第一区块中可以包括至少一条存证记录数据,第二区块中可以包括至少一条价值记录数据。
第一区块中可以包括一棵Merkle树,用于存储存证记录数据,第三区块中可以包括一颗Merkle树,用于存储价值记录数据。例如,在基于DAG存储的存储的分布式账本中,可以采用这种实施方式。
图6A为本发明第一示例性实施例示出的区块结构示意图。
如图6A所示,在第一区块中可以包括一棵Merkle树,其中记录有存证记录数据Tx1’、Tx2’、Tx3’、Tx4’。存证记录数据中包括存证数据。可选的,可以在第三区块中也设置一Merkle树,其中记录有价值记录数据Tx1、 Tx2、Tx3、Tx4。
在另一种可选的实施方式中,步骤502中的矿工节点根据记录请求生成第一区块,具体可以包括:
矿工节点根据记录请求中的存证记录数据、价值记录数据生成第一区块。
第一区块中可以包括一棵Merkle树,用于存储存证记录数据,第一区块中可以包括另一颗Merkle树,用于存储价值记录数据。例如,在基于链式存储的分布式账本中,可以采用这种实施方式。
图6B为本发明第二示例性实施例示出的区块结构示意图。
如图6B所示,在第一区块中可以包括两棵Merkle树,分别记录有存证记录数据Tx1’、Tx2’、Tx3’、Tx4’以及价值记录数据Tx1、Tx2、Tx3、 Tx4。
基于图6A所示的区块结构,当需要对区块中的存证数据进行删除时,仅需要修改第一区块即可,不需要修改第三区块中价值记录数据相关的内容,因此,修改的数据量较小。
图7为本发明第五示例性实施例示出的数据记录方法的流程图。
其中,本实施例提供的方法可以由区块链系统中的节点执行,例如可以由图2所示系统中的普通节点执行。
如图7所示,本实施例提供的数据记录方法包括:
步骤701,普通节点根据用户操作生成记录请求,记录请求包括价值记录数据、存证记录数据。
具体的,区块链系统中的一个普通节点可以发起数据记录的请求,例如,普通节点可以使用私钥对需要记录的数据进行签名,并根据签名后的数据生成记录请求。例如,普通节点可以对价值数据进行签名,生成价值记录数据,还可以对存证数据进行签名,并基于存证数据的签名、价值记录数据的哈希值、存证数据以及存证数据的哈希值生成存证记录数据。普通节点可以将这两个记录数据广播至全网,以发起数据记录的请求。
进一步的,需要记录的数据可以包括价值数据,还可以包括存证数据。
普通节点在生成记录请求时,可以使用私钥对价值数据进行签名,得到价值记录数据。普通节点还可以对价值数据以及存证数据进行签名,并根据签名数据、价值记录数据的哈希值、存证数据、存证数据的哈希值确定存证记录数据。
本实施例提供的方法中,将存证数据存储在存证记录数据中,便于对存证数据进行删除。
图8A为本发明一示例性实施例示出的记录数据生成方法。
如图8A所示,可以对价值数据进行签名,得到价值记录数据。
还可以对存证数据以及价值数据进行签名,得到签名数据,再将该签名数据、价值记录数据的哈希值、存证数据、存整数据的哈希值进行拼接,得到存证记录数据。
步骤702,普通节点向矿工广播记录请求,以使矿工节点根据接收的记录请求生成包括存证记录数据的第一区块。
实际应用时,普通节点向矿工节点广播的请求中可以包括价值记录数据、存证记录数据。
矿工节点可以对其中的价值记录数据进行验证,若验证通过,则可以根据验证通过的价值记录数据生成第一区块。第一区块中可以包括多条记录数据,具体可以包括价值记录数据及其对应的存证记录数据。
第一区块中可以包括两棵Merkle树,用于分别记录价值记录数据和存证记录数据。例如,在基于链式存储的分布式账本中,可以采用这种实施方式。
在另一种实施方式中,若验证通过,则矿工节点可以根据该记录请求生成第一区块、第三区块。第一区块中可以包括至少一条存证记录数据,第三区块中可以包括至少一条价值记录数据。
矿工节点可以广播生成的第一区块,以使监管节点够收到该第一区块,并且,监管节点可以对第一区块进行验证,具体对第一区块中的存证数据进行验证。
其中,在生成的第一区块中记录有至少一条存证记录数据,且该存证记录数据中包括存证数据,使得在需要删除区块中的非法存证数据时,只需要删除存证记录数据中包括的相应存证数据即可,不需要对其他信息进行大量修改,能够简化修改区块数据的步骤。
本实施例提供的数据记录方法,包括普通节点根据用户操作生成记录请求,记录请求包括价值记录数据、存证记录数据;其中,存证记录数据中包括存证数据;普通节点向矿工节点广播记录请求,以使矿工节点根据接收的记录请求生成包括存证记录数据的第一区块。本实施例提供的数据记录方法中,普通节点在生成记录请求时,分别生成价值记录数据和存证记录数据,且存证记录数据中包括存证数据,使得矿工节点可以根据接收的记录请求,打包生成包括存证记录数据的第一区块,即在区块中包括至少一条存证记录数据,当存证记录数据中包括的存证数据是非法的情况时,可以直接删除其中的非法数据,而不需要重新对区块进行打包处理,因此能够简化修改区块数据的步骤。
图8为本发明第六示例性实施例示出的数据记录方法的流程图。
其中,本实施例提供的方法可以由区块链系统中的节点执行,例如可以由图2所示系统中的普通节点执行。
如图8所示,本实施例提供的数据记录方法包括:
步骤801,普通节点根据用户操作,获取价值数据、存证数据。
步骤802,普通节点根据价值数据确定价值记录数据。
步骤803,普通节点根据存证数据、价值记录数据的哈希值、存证数据的哈希值确定存证记录数据。
步骤804,普通节点根据价值记录数据、存证记录数据确定记录请求。
其中,用户可以操作普通节点以实现数据记录。例如,用户在普通节点上设置的客户端中发起操作,希望转给另一用户5个数字凭证,则可以触发普通节点根据这一操作生成记录请求。
具体的,普通节点可以获取价值数据,例如希望转发的数字凭证相关信息,还可以获取存证数据,例如用户输入的附加信息。并根据这些信息生成价值记录数据以及存证记录数据。
进一步的,由于分别生成包括价值数据的价值记录数据,以及包括存证数据的存证记录数据,使得能够对二者分别进行验证,并且,当存在非法存证数据时,还可以直接删除存证记录数据中包括的存证数据。
实际应用时,普通节点可以使用私钥对价值数据进行签名,得到价值记录数据。
其中,普通节点还可以使用私钥对存证数据进行签名,得到签名信息,再对签名信息、存证数据、价值记录数据的哈希值、存证数据的哈希值按照一定顺序拼接,得到存证记录数据。
步骤805,普通节点向矿工节点广播记录请求,以使矿工节点根据接收的记录请求生成包括存证记录数据的第一区块。
步骤805与步骤702类似,不再赘述。
步骤806,普通节点接收矿工广播的删除非法存证数据后的第一区块。
此前,普通节点还可以接收包括非法存证数据的第一区块。矿工节点可以对记录请求进行验证,若验证通过,则可以根据验证通过的价值记录数据生成第一区块。具体可以将存证记录数据进行打包,生成第一区块,还可以将价值记录数据与存证记录数据一起打包,生成第一区块。
此时,存证记录数据中的存在数据中可能存在非法数据,会使矿工节点广播的区块被其他节点写入区块链后,同时将非法存证数据也写入区块链。
为了能够及时、便捷的删除区块链中的非法存证数据,区块链系统中还设置有监管节点。当监管节点接收到该包括完整存证数据的第一区块后,监管节点可以对第一区块进行验证,具体对第一区块中的存证数据进行验证。
监管节点中可以存储有预设的用于验证存证数据是否合法的方法。例如,可以是敏感词汇的识别方法,图像中敏感信息的识别方法等。若识别存证数据中包括敏感内容,则确定其非法。
进一步的,若监管节点确定一个存证数据是非法的,则监管节点可以生成与该非法存证数据对应的删除记录请求。例如,存证数据A是非法的,则监管节点可以生成A对应的删除记录请求,以使矿工节点删除第一区块中的非法数据A。
实际应用时,删除记录请求中可以包括第一区块的标识,还可以包括非法存证数据对应的记录序号。这些数据能够使矿工节点快速定位到需要删除的存证数据。非法存证数据对应的记录序号可以是包括该非法存证数据的存证记录数据的序序号。
监管节点可以广播删除记录请求,矿工节点接收到删除记录请求后,可以对其进行验证。若验证通过,则矿工节点根据删除记录请求中的信息,确定非法存证数据对应的第一区块,并删除第一区块中对应的非法存证数据。由于存证数据是直接存储在存证记录数据中的,因此,可以直接删除存证记录数据中包括的相应存证数据。
此后,矿工节点可以广播删除非法存证数据后的第一区块,使得普通节点能够接收到这一区块。
实际应用时,矿工节点可以向普通节点广播删除非法数据后的第一区块,普通节点可以判断其中存在缺失数据的情况,普通节点还可以接收监管节点广播的删除记录请求。并确定出区块缺失数据与删除记录请求中的数据相应,因此可以基于这一结果,删除写入区块链中的第一区块中的非法存证数据。
步骤807,普通节点接收矿工节点广播的第二区块,其中,第二区块包含删除记录请求。
步骤808,普通节点根据删除非法存证数据后第一区块、第二区块删除区块链中记录的非法存证数据。
其中,矿工节点还可以根据删除记录请求生成第二区块,具体可以对删除记录请求中的数据进行打包,生成第二区块,并进行广播。普通节点可以在收到该广播后,确定出第一区块中缺失的数据与第二区块中指示删除的数据相应,并基于这一结果,删除写入区块链中的第一区块中的非法存证数据。具体的,由于矿工节点向普通节点广播的区块中不包括非法存证数据,使得普通节点能够基于这一区块的内容删除本地存储的区块中点的非法存证数据,因此,采用本实施例的方法记录数据,不需要对区块链进行回滚操作以保证区块中不含有非法存证数据。
相似的,普通节点记录的第一区块记录有至少一条存证记录数据,且该存证记录数据中包括存证数据,使得在需要删除区块中的非法存证数据时,只需要删除存证记录数据中包括的相应存证数据即可,不需要对其他信息进行大量修改,能够简化修改区块数据的步骤。
可选的,普通节点在接收到第二区块,并验证其合法后,还可以记录第二区块,具体可以将其写入区块链中。
其中,例如普通节点可以先接收到包括非法存证数据的第一区块,又接收到不包括非法存证数据的第二区块,由于两个区块的去别仅在于包括的存证数据不同,因此,普通节点能够识别后接收的第一区块中缺失存证数据,因此,可以将该第一区块标记为存疑状态。例如,第一区块中可以包括一棵 Merkle树,用于存储存证记录数据,普通节点可以检测Merkle树中是否存在底层存证数据缺失的情况。
具体的,若普通节点接收到第二区块,则可以识别出该第二区块中记录的数据是需要被删除的存证数据相关信息,此时,可以确定出第一区块中缺失的存证数据与该第二区块中指示删除的存证数据相应,因此,普通节点可以根据删除非法存证数据的第一区块或者该第二区块,删除区块链中的非法存证数据。
例如,可以根据该删除非法存证数据的第一区块的标识以及其中缺失的存证数据对应的存证记录数据的记录序号,删除区块链中的非法存证数据。再例如,可以根据第二区块中记录的需要删除存证数据所在的区块标识以及存证记录序号,删除区块链中的非法存证数据。
本实施例提供的方案中,其中,普通节点生成的记录请求中,包括价值记录数据以及存证记录数据,使得矿工节点打包生成的区块时,可以分别记录价值记录数据以及存证记录数据,且该存证记录数据中包括存证数据,在需要删除区块中的非法存证数据时,只需要删除存证记录数据中包括的相应存证数据即可,不需要对其他信息进行大量修改,能够简化修改区块数据的步骤。
图9为本发明第七示例性实施例示出的数据记录方法的流程图。
如图9所示,本实施例提供的数据记录方法包括:
步骤901,普通节点向矿工节点广播记录请求。
步骤902,矿工节点对记录请求进行校验,并打包生成第一区块。
步骤903,矿工节广播第一区块。
步骤904,监管节点对第一区块中的存证数据进行校验,并根据非法存证数据生成删除记录请求。
步骤905,监管节点广播删除记录请求。
步骤906,矿工节点对删除记录请求进行校验,若合法,则删除第一区块中的非法存证数据。
步骤907,矿工节点广播删除非法存证数据的第一区块。
步骤908,矿工节点还根据删除记录请求打包生成第二区块。
步骤909,矿工节点广播第二区块。
步骤910,监管节点根据第二区块,删除第一区块中的非法存证数据。
步骤911,普通节点将不包括非法存证数据的第一区块标记为存疑状态。
步骤912,普通节点根据第二区块确定删除记录请求与缺失的非法存证数据对应,则清除第一区块的存疑状态,并删除区块链中记录的非法存证数据。
图10为本发明一示例性实施例示出的监控节点的结构图。
如图10所示,本实施例提供的监控节点,包括:
接收模块1001,用于接收矿工节点广播的第一区块;其中,所述第一区块包括存证记录数据;
校验模块1002,用于对所述第一区块中存证记录数据包括的存证数据进行验证;
生成模块1003,用于若存证非法存证数据,则生成与所述非法存证数据对应的删除记录请求;
广播模块1004,用于向所述矿工节点广播所述删除记录请求,以使所述矿工节点删除第一区块中包括的所述非法存证数据。
本实施例提供的监控节点的具体原理、实现方式、效果均与图3所示的实施例类似,此处不再赘述。
图11为本发明另一示例性实施例示出的监控节点的结构图。
如图11所示,在上述实施例的基础上,本实施例提供的监控节点,可选的,所述接收模块1001还用于接收所述矿工广播的第二区块;其中,所述第二区块保护所述删除记录请求;
所述监控节点还包括:
验证模块1005,用于对所述第二区块进行验证;
删除模块1006,用于若验证通过,则删除所述第一区块中包括的所述非法存证数据,并记录所述第二区块。
可选的,所述删除记录请求包括:所述第一区块的哈希值、所述非法存证数据对应的记录序号。
本实施例提供的监控节点的具体原理、实现方式、效果均与图4所示的实施例类似,此处不再赘述。
图12为本发明一示例性实施例示出的矿工节点的结构图。
如图12所示,本实施例提供的矿工节点,包括:
接收模块1201,用于接收普通节点发送的记录请求,所述记录请求包括价值记录数据、存证记录数据;
生成模块1202,用于根据所述记录请求生成第一区块;
广播模块1203,用于向监管节点广播所述第一区块,以使所述监管节点根据所述第一区块中的存证记录数据进行验证;
所述接收模块1201还用于接收所述监管节点广播的删除记录请求;
删除模块1204,用于根据所述删除记录请求删除所述第一区块中包括的非法存证数据;
所述广播模块1203还用于将删除所述非法存证数据后的第一区块广播至所述普通节点。
本实施例提供的矿工节点的具体原理、实现方式、效果均与图5所示的实施例类似,此处不再赘述。
所述生成模块1202具体用于:
根据所述记录请求存证记录数据生成所述第一区块,所述矿工节点根据所述价值记录数据生成第三区块。
所述生成模块1202具体用于:
根据所述记录请求中的存证记录数据、所述价值记录数据生成所述第一区块。
可选的,所述生成模块1202还用于根据所述删除记录请求生成第二区块,所述广播模块1203还用于全网广播所述第二区块。
本实施例提供的矿工节点的具体原理、实现方式、效果均与图6所示的实施例类似,此处不再赘述。
图13为本发明一示例性实施例示出的普通节点的结构图。
如图13所示,本实施例提供的普通节点,包括:
生成模块1301,用于根据用户操作生成记录请求,所述记录请求包括价值记录数据、存证记录数据;其中,所述存证记录数据中包括存证数据;
广播模块1302,用于向矿工节点广播所述记录请求,以使所述矿工节点根据接收的所述记录请求生成包括存证记录数据的第一区块。
本实施例提供的普通节点的具体原理、实现方式、效果均与图7所示的实施例类似,此处不再赘述。
图14为本发明另一示例性实施例示出的普通节点的结构图。
如图14所示,在上述实施例的基础上,本实施例提供的普通节点,可选的,还包括:
接收模块1303,用于接收矿工广播的删除非法存证数据后的第一区块;
所述接收模块1303还用于接收所述矿工节点广播的第二区块,其中,所述第二区块包含删除记录请求;
所述普通节点还包括删除模块1304,用于根据删除非法存证数据后所述第一区块、所述第二区块删除区块链中记录的所述非法存证数据。
可选的,所述生成模块1301具体用于:
根据用户操作,获取价值数据、存证数据;
根据所述价值数据确定所述价值记录数据;
根据所述存证数据、所述价值记录数据哈希值、所述存证数据的哈希值确定所述存证记录数据;
根据所述价值记录数据、所述存证记录数据确定所述记录请求。
生成模块1303,用于根据用户操作生成记录请求,所述记录请求包括价值记录数据、存证记录数据;
广播模块1304,用于向所述矿工广播所述记录请求,以使所述矿工节点接收所述记录请求。
本实施例提供的普通节点的具体原理、实现方式、效果均与图8所示的实施例类似,此处不再赘述。
图15为本发明一示例性实施例示出的数据记录设备的结构图。
如图15所示,本实施例提供的数据记录设备包括:
存储器151;
处理器152;以及
计算机程序;
其中,所述计算机程序存储在所述存储器151中,并配置为由所述处理器152执行以实现如上所述的任一种数据记录方法。
本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,
所述计算机程序被处理器执行以实现如上所述的任一种数据记录方法。
实施例还提供一种区块链系统,包括:
如上所述的任一种监控节点、如上所述的任一种矿工节点、如上所述的任一种普通节点。
本实施例还提供一种计算机程序,包括程序代码,当计算机运行所述计算机程序时,所述程序代码执行如上所述的任一种数据记录方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (16)
1.一种数据记录方法,其特征在于,包括:
监管节点接收矿工节点广播的第一区块;其中,所述第一区块包括存证记录数据;
监管节点对所述第一区块中存证记录数据包括的存证数据进行验证;
若存证非法存证数据,则所述监管节点生成与所述非法存证数据对应的删除记录请求;
监管节点向所述矿工节点广播所述删除记录请求,以使所述矿工节点删除第一区块中包括的所述非法存证数据。
2.根据权利要求1所述的方法,其特征在于,还包括:
所述监管节点接收所述矿工广播的第二区块;其中,所述第二区块包含删除记录请求;
所述监管节点对所述第二区块进行验证;
若验证通过,则删除所述第一区块中包括的所述非法存证数据,并记录所述第二区块。
3.根据权利要求1所述的方法,其特征在于,所述删除记录请求包括:所述第一区块的哈希值、所述非法存证记录数据对应的记录序号。
4.一种数据记录方法,其特征在于,包括:
矿工节点接收普通节点发送的记录请求,所述记录记录请求包括价值记录数据、存证记录数据;
所述矿工节点根据所述记录请求生成第一区块,并向监管节点广播所述第一区块,以使所述监管节点根据所述第一区块中的存证记录数据进行验证;
所述矿工节点接收所述监管节点广播的删除记录请求,并根据所述删除记录请求删除所述第一区块中包括的非法存证数据;
所述矿工节点将删除所述非法存证数据后的第一区块广播至所述普通节点。
5.根据权利要求4所述的方法,其特征在于,所述矿工节点根据所述记录请求生成第一区块,包括:
所述矿工节点根据所述记录请求存证记录数据生成所述第一区块,所述矿工节点根据所述价值记录数据生成第三区块。
6.根据权利要求4所述的方法,其特征在于,所述矿工节点根据所述记录请求生成第一区块,包括:
所述矿工节点根据所述记录请求中的存证记录数据、所述价值记录数据生成所述第一区块。
7.根据权利要求4所述的方法,其特征在于,还包括:
所述矿工节点根据所述删除记录请求生成第二区块,并全网广播所述第二区块。
8.一种数据记录方法,其特征在于,包括:
普通节点根据用户操作生成记录请求,所述记录请求包括价值记录数据、存证记录数据;其中,所述存证记录数据中包括存证数据;
所述普通节点向矿工节点广播所述记录请求,以使所述矿工节点根据接收的所述记录请求生成包括存证记录数据的第一区块。
9.根据权利要求8所述的方法,其特征在于,还包括:所述普通节点接收矿工广播的删除非法存证数据后的第一区块;
所述普通节点接收所述矿工节点广播的第二区块,其中,所述第二区块包含删除记录请求;
所述普通节点根据删除非法存证数据后所述第一区块、所述第二区块删除区块链中记录的所述非法存证数据。
10.根据权利要求9所述的方法,其特征在于,所述普通节点根据用户操作生成记录请求,包括:
所述普通节点根据用户操作,获取价值数据、存证数据;
所述普通节点根据所述价值数据确定所述价值记录数据;
所述普通节点根据所述存证数据、所述价值记录数据的哈希值、所述存证数据的哈希值确定所述存证记录数据;
所述普通节点根据所述价值记录数据、所述存证记录数据确定所述记录请求。
11.一种监控节点,其特征在于,包括:
接收模块,用于接收矿工节点广播的第一区块;其中,所述第一区块包括存证记录数据;
校验模块,用于对所述第一区块中存证记录数据包括的存证数据进行验证;
生成模块,用于若存证非法存证数据,则生成与所述非法存证数据对应的删除记录请求;
广播模块,用于向所述矿工节点广播所述删除记录请求,以使所述矿工节点删除第一区块中包括的所述非法存证数据。
12.一种矿工节点,其特征在于,包括:
接收模块,用于接收普通节点发送的记录请求,所述记录请求包括价值记录数据、存证记录数据;
生成模块,用于根据所述记录请求生成第一区块;
广播模块,用于向监管节点广播所述第一区块,以使所述监管节点根据所述第一区块中的存证记录数据进行验证;
所述接收模块还用于接收所述监管节点广播的删除记录请求;
删除模块,用于根据所述删除记录请求删除所述第一区块中包括的非法存证数据;
所述广播模块还用于将删除所述非法存证数据后的第一区块广播至所述普通节点。
13.一种普通节点,其特征在于,包括:
生成模块,用于根据用户操作生成记录请求,所述记录请求包括价值记录数据、存证记录数据;其中,所述存证记录数据中包括存证数据;
广播模块,用于向矿工节点广播所述记录请求,以使所述矿工节点根据接收的所述记录请求生成包括存证记录数据的第一区块。
14.一种数据记录设备,其特征在于,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并配置为由所述处理器执行以实现如权利要求1-10任一种所述的方法。
15.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,
所述计算机程序被处理器执行以实现如权利要求1-10任一种所述的方法。
16.一种区块链系统,其特征在于,包括:
如权利要求11所述的监控节点、如权利要求12所述的矿工节点、如权利要求13所述的普通节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910784370.1A CN110647759B (zh) | 2019-08-23 | 2019-08-23 | 数据记录方法、节点、设备、存储介质及区块链系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910784370.1A CN110647759B (zh) | 2019-08-23 | 2019-08-23 | 数据记录方法、节点、设备、存储介质及区块链系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110647759A true CN110647759A (zh) | 2020-01-03 |
CN110647759B CN110647759B (zh) | 2021-11-23 |
Family
ID=69009772
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910784370.1A Active CN110647759B (zh) | 2019-08-23 | 2019-08-23 | 数据记录方法、节点、设备、存储介质及区块链系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110647759B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111431977A (zh) * | 2020-03-17 | 2020-07-17 | 陈磊 | 区块链系统中作恶节点的处理方法及系统 |
CN111476670A (zh) * | 2020-04-08 | 2020-07-31 | 杭州复杂美科技有限公司 | 区块链回滚保险方法、设备和存储介质 |
CN111708737A (zh) * | 2020-05-21 | 2020-09-25 | 湖南天河国云科技有限公司 | 基于区块链的分布式文件系统的内容分发控制方法及装置 |
CN111913978A (zh) * | 2020-09-02 | 2020-11-10 | 上海优扬新媒信息技术有限公司 | 一种区块删除方法、装置及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107508681A (zh) * | 2017-08-15 | 2017-12-22 | 中国联合网络通信集团有限公司 | 区块链密钥保护方法及装置 |
CN108122165A (zh) * | 2017-12-15 | 2018-06-05 | 北京中电普华信息技术有限公司 | 一种区块链共识方法及系统 |
US20180329940A1 (en) * | 2017-05-12 | 2018-11-15 | American Express Travel Related Services Company, Inc. | Triggering of distributed data deletion |
CN108985930A (zh) * | 2018-06-13 | 2018-12-11 | 湖南搜云网络科技股份有限公司 | 信息处理方法及装置、区块链节点及存储介质 |
CN109040014A (zh) * | 2018-06-13 | 2018-12-18 | 湖南搜云网络科技股份有限公司 | 区块链处理方法及装置、区块链节点及存储介质 |
CN109523381A (zh) * | 2018-10-18 | 2019-03-26 | 尚维斯 | 一种基于区块链的可擦除式数据存储方法 |
-
2019
- 2019-08-23 CN CN201910784370.1A patent/CN110647759B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180329940A1 (en) * | 2017-05-12 | 2018-11-15 | American Express Travel Related Services Company, Inc. | Triggering of distributed data deletion |
CN107508681A (zh) * | 2017-08-15 | 2017-12-22 | 中国联合网络通信集团有限公司 | 区块链密钥保护方法及装置 |
CN108122165A (zh) * | 2017-12-15 | 2018-06-05 | 北京中电普华信息技术有限公司 | 一种区块链共识方法及系统 |
CN108985930A (zh) * | 2018-06-13 | 2018-12-11 | 湖南搜云网络科技股份有限公司 | 信息处理方法及装置、区块链节点及存储介质 |
CN109040014A (zh) * | 2018-06-13 | 2018-12-18 | 湖南搜云网络科技股份有限公司 | 区块链处理方法及装置、区块链节点及存储介质 |
CN109523381A (zh) * | 2018-10-18 | 2019-03-26 | 尚维斯 | 一种基于区块链的可擦除式数据存储方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111431977A (zh) * | 2020-03-17 | 2020-07-17 | 陈磊 | 区块链系统中作恶节点的处理方法及系统 |
CN111476670A (zh) * | 2020-04-08 | 2020-07-31 | 杭州复杂美科技有限公司 | 区块链回滚保险方法、设备和存储介质 |
CN111476670B (zh) * | 2020-04-08 | 2023-05-30 | 杭州复杂美科技有限公司 | 区块链回滚保险方法、设备和存储介质 |
CN111708737A (zh) * | 2020-05-21 | 2020-09-25 | 湖南天河国云科技有限公司 | 基于区块链的分布式文件系统的内容分发控制方法及装置 |
CN111913978A (zh) * | 2020-09-02 | 2020-11-10 | 上海优扬新媒信息技术有限公司 | 一种区块删除方法、装置及系统 |
CN111913978B (zh) * | 2020-09-02 | 2023-07-25 | 度小满科技(北京)有限公司 | 一种区块删除方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110647759B (zh) | 2021-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110647759B (zh) | 数据记录方法、节点、设备、存储介质及区块链系统 | |
US10176309B2 (en) | Systems and methods for authenticating video using watermarks | |
CN110826111B (zh) | 测试监管方法、装置、设备及存储介质 | |
US10958436B2 (en) | Methods contract generator and validation server for access control of contract data in a distributed system with distributed consensus | |
CN109543065B (zh) | 一种结合区块链的视频主动识别方法 | |
US9613038B2 (en) | Digital data retention management | |
ZA200105541B (en) | Method for securing safety of electronic information. | |
CN114372296B (zh) | 一种基于区块链的用户行为数据审计方法及系统 | |
CN109242404B (zh) | 履历信息管理方法、装置、计算机设备与可读存储介质 | |
CN109447809B (zh) | 一种结合区块链的视频主动识别方法 | |
CN108256354B (zh) | 一种基于试验数据的存储方法及存储介质 | |
CN110334153B (zh) | 块链式账本中的授权方法、系统、装置及设备 | |
CN106548092A (zh) | 一种文件处理方法及装置 | |
CN108880820B (zh) | 代码管理方法和装置 | |
CN110190963B (zh) | 一种针对授时证书生成请求的监控方法、装置及设备 | |
CN111581659B (zh) | 一种调取电子证据的方法和装置 | |
CN111339201A (zh) | 基于区块链的测评方法及系统 | |
CN110555682B (zh) | 基于联盟链的多通道实现方法 | |
JP2005346658A (ja) | オリジナルコンテンツ生成装置、派生コンテンツ生成装置、派生コンテンツ利用装置、オリジナルコンテンツ生成方法、派生コンテンツ生成方法、派生コンテンツ利用方法及び検証方法 | |
KR102013415B1 (ko) | 개인정보 접속기록 무결성 검증시스템 및 검증방법 | |
CN113821446A (zh) | 一种交易系统的测试验证方法及装置 | |
JPWO2004068350A1 (ja) | データ改ざん検出方法、データ改ざん検出装置及びデータ改ざん検出プログラム | |
CN111865983A (zh) | 一种基于区块链的数据安全追溯方法 | |
JP7521871B2 (ja) | イベント・ログの改竄耐性 | |
CN109271811B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |