基于区块链的数据存证方法、数据校验方法及相关装置与流程

文档序号:19071743发布日期:2019-11-08 20:42阅读:177来源:国知局
基于区块链的数据存证方法、数据校验方法及相关装置与流程

本申请实施例涉及数据处理技术领域,尤其涉及一种基于区块链的数据存证方法、数据校验方法及相关装置。



背景技术:

随着区块链技术的发展,基于区块链实现的应用也越来越多,其中就包括数据存证服务。目前的数据存证方法是服务使用端将文件的不可逆加密数据上传至区块链中以进行记录。在记录成功后,区块链会向服务使用端反馈不可逆加密数据的上链存证信息。这里,不可逆加密数据是基于文件的数据内容所计算得到的,文件的数据内容一旦发生改变,则计算出的不可逆加密数据也会随之改变。因此,后续服务使用端可以基于上链存证信息从区块链中调取出由文件原始数据内容所计算得的不可逆加密数据,以对文件当前数据内容进行校验。

现有技术中,服务使用端是单独对上链存证信息进行保管的,一方面,不易于维护,比如服务使用端需要构建文件与上链存证信息的映射关系,且文件一旦需要转移,必须考虑到上链凭证信息如何进行处理;另一方面,在对文件的数据内容进行校验时,需要匹配查找到相应的上链凭证信息,这个过程较为繁琐,且如果文件和上链存证信息不在同一个物理存储介质中保存,还会带来不必要的麻烦。有鉴于此,如何更加便捷地实现数据存证服务以及数据校验服务,是当前亟待解决的技术问题。



技术实现要素:

本申请实施例目的是提供一种基于区块链的数据存证方法、数据校验方法及相关装置,能够更加便捷地实现数据存证服务以及数据校验服务。

为了实现上述目的,本申请实施例是这样实现的:

第一方面,提供一种基于区块链的数据存证方法,包括:

对目标文件的数据内容进行不可逆加密处理,得到所述目标文件的不可逆加密数据;

对所述不可逆加密数据发起上链操作,以将所述不可逆加密数据存储到存证区块链,并得到所述不可逆加密数据的上链存证信息;

将所述上链存证信息植入至所述目标文件;

存储植入有所述上链存证信息的目标文件。

第二方面,提供一种基于区块链的数据校验方法,包括:

在准备对目标文件的数据内容进行校验时,获取预先植入在所述目标文件的上链存证信息;

基于所述上链存证信息,获取存证区块链中记录的所述目标文件的不可逆加密数据;

基于所述不可逆加密数据,对所述目标文件的数据内容进行校验;其中,所述目标文件的数据内容不包含所述上链存证信息。

第三方面,提供一种区块链的数据存证装置,包括:

加密模块,对目标文件的数据内容进行不可逆加密处理,得到所述目标文件的不可逆加密数据;

上链模块,对所述不可逆加密数据发起上链操作,以将所述不可逆加密数据存储到存证区块链,并得到所述不可逆加密数据的上链存证信息;

植入模块,将所述上链存证信息植入至所述目标文件;

存储模块,存储植入有所述上链存证信息的目标文件。

第四方面,提供一种电子设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行:

对目标文件的数据内容进行不可逆加密处理,得到所述目标文件的不可逆加密数据;

对所述不可逆加密数据发起上链操作,以将所述不可逆加密数据存储到存证区块链,并得到所述不可逆加密数据的上链存证信息;

将所述上链存证信息植入至所述目标文件;

存储植入有所述上链存证信息的目标文件。

第五方面,提供一种算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如下步骤:

对目标文件的数据内容进行不可逆加密处理,得到所述目标文件的不可逆加密数据;

对所述不可逆加密数据发起上链操作,以将所述不可逆加密数据存储到存证区块链,并得到所述不可逆加密数据的上链存证信息;

将所述上链存证信息植入至所述目标文件;

存储植入有所述上链存证信息的目标文件。

第六方面,提供一种基于区块链的数据校验装置,包括:

解析模块,在准备对目标文件的数据内容进行校验时,获取预先植入在所述目标文件的上链存证信息;

取证模块,基于所述上链存证信息,获取存证区块链中记录的所述目标文件的不可逆加密数据;

校验模块,基于所述不可逆加密数据,对所述目标文件的数据内容进行校验;其中,所述目标文件的数据内容不包含所述上链存证信息。

第七方面,提供一种电子设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行:

在准备对目标文件的数据内容进行校验时,获取预先植入在所述目标文件的上链存证信息;

基于所述上链存证信息,获取存证区块链中记录的所述目标文件的不可逆加密数据;

基于所述不可逆加密数据,对所述目标文件的数据内容进行校验;其中,所述目标文件的数据内容不包含所述上链存证信息。

第八方面,提供一种算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如下步骤:

在准备对目标文件的数据内容进行校验时,获取预先植入在所述目标文件的上链存证信息;

基于所述上链存证信息,获取存证区块链中记录的所述目标文件的不可逆加密数据;

基于所述不可逆加密数据,对所述目标文件的数据内容进行校验;其中,所述目标文件的数据内容不包含所述上链存证信息。

本申请实施例的方案在对目标文件不可逆加密数据进行上链后,将该不可逆加密数据的上链存证信息植入至目标文件中,从而使得上链存证信息伴随目标文件被一起保管。一方面,降低了上链存证信息的维护难度,且不易发生丢失;另一方面,在需要使用上链存证信息对目标文件的数据内容进行校验时,可直接从目标文件中提取获得,极大提高了操作的便捷性。

附图说明

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

图1为本申请实施例提供的数据存证方法的流程示意图。

图2为本申请实施例提供的数据校验方法的流程示意图。

图3为本申请实施例提供的数据存证装置的结构示意图。

图4为本申请实施例提供的数据校验装置的结构示意图。

图5为本申请实施例提供的电子设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

如前所述,现有的基于区块链实现数据存证的方案中,服务使用端是单独对上链存证信息进行保管的,一方面,不易对上链存证信息进行维护,比如服务使用端需要构建文件与上链存证信息的映射关系,且文件一旦需要转移,必须考虑到上链凭证信息如何进行处理;另一方面,在对文件的数据内容进行校验时,需要匹配查找到相应的上链凭证信息,这个过程较为繁琐,且如果文件和上链存证信息不在同一个物理存储介质中保存,还会带来不必要的麻烦。

针对上述问题,本申请旨在提供一种更加便捷地实现数据存证服务以及数据校验服务的技术方案。

图1是本申请实施例基于区块链的数据存证方法的流程图。图1所示的方法可以由下文相对应的装置执行,包括:

步骤s102,对目标文件的数据内容进行不可逆加密处理,得到目标文件的不可逆加密数据。

其中,本申请实施例对不可逆加密处理的方法不作具体限定。

作为示例性介绍:

本步骤可以基于哈希算法(如消息摘要算法、循环冗余校验等),对目标文件的数据内容进行哈希计算,得到目标文件的摘要信息,该摘要信息即可作为目标文件的不可逆加密数据。

步骤s104,对不可逆加密数据发起上链操作,以将不可逆加密数据存储到存证区块链中,并得到不可逆加密数据的上链存证信息。

具体地,本步骤可以通过区块链接口将携带有不可逆加密数据的交易提交到存证区块链中,使得存证区块链按照已有的对交易中数据的上链流程,记录不可逆加密数据。

步骤s106,将上链存证信息植入至目标文件。

其中,本申请实施例对上链存证信息的植入方法不作具体限定。

作为示例性介绍:

本步骤可以将上链存证信息转换为数字水印。之后,基于水印植入技术,将上链存证信息的数字水印植入至目标文件。

步骤s108,存储植入有上链存证信息的目标文件。

应理解,上链存证信息会一直伴随目标文件,不会因目标文件的正常使用时,发生改动或破坏。

基于图1所示的数据存证方法可以知道,本申请实施例的方案在对目标文件不可逆加密数据进行上链后,将该不可逆加密数据的上链存证信息植入至目标文件中,从而使得上链存证信息伴随目标文件被一起保管。一方面,降低了上链存证信息的维护难度,且不易发生丢失;另一方面,在需要使用上链存证信息对目标文件的数据内容进行校验时,可直接从目标文件中提取获得,极大提高了操作的便捷性。

下面对申请实施例的方法进行详细介绍。

具体地,本申请实施例的方法利用区块链去中心化、防丢失、防篡改的分布式数据存储技术,实现对目标文件的不可逆加密数据的记录和查询。在不可逆加密数据成功上链后,基于水印植入技术将上链存证信息植入至目标文件,使得上链存证信息可以伴随目标文件以被统一保管。水印具有不易于探知的特点,因此植入的不可逆加密数据不会影响原载体目标文件的正常使用,此外也不易被他人察觉而遭到破坏。

其中,申请实施例方法的主要流程包括:

步骤一,服务使用端在需要对目标文件进行存证时,基于不可逆的哈希算法,对目标文件的数据内容进行哈希计算,得到目标文件的摘要信息(即不可逆加密数据)。

步骤二,服务使用端通过区块链接口,将携带有摘要信息的交易提交到存证区块链中,并得到摘要信息的上链存证信息。

其中,上链存证信息可以包括存证区块链中存储有该不可逆加密数据的区块的区块标识。应理解,服务使用端可以基于区块标识,从存证区块链中找到出相对应的区块,从而提取该去区块记录的不可逆加密数据。

步骤三,服务使用端在获得上链存证信息后,生成上链存证信息的数字水印,并将基于水印植入技术,将上链存证信息的数字水印植入至目标文件中。

其中,本步骤可以采用隐性方式将数字水印植入至目标文件中。作为示例性介绍:可以先对目标文件在数字设备上的呈现内容进行分块处理,得到至少一个内容分块。之后,对内容分块进行离散余弦变化(dct,dctfordiscretecosinetransform)的计算,得到各内容分块对应的频率系数。其中,频率系数可以反映内容分块在呈现界面中的能量。人眼对低频部分比对高频部分更加敏感,数字水印若植入到低频部分则易于被察觉,且影响了目标文件的正常显示。因此,为了实现数字水印的不易感知性,需要将数字水印拆分植入至频率系数较大的内容分块中。比如,将数字水印拆分植入至频率系数大于预设标准的内容分块中;或者,按照频率系数由大到小的排序,将数字水印拆分植入至前预设比例的内容分块中。

此外,本步骤也可以采用显性方式将数字水印植入至目标文件中。作为示例性介绍:目标文件在数字设备上以分层方式进行呈现,本步骤可以将数字水印植入至目标文件原本内容的显示图层上方的其他显示图层中。

步骤四,服务使用端存储植入有上链存证信息的目标文件。

应理解,上链存证信息会一直伴随目标文件,因此服务使用端不需要在额外配置目标文件与上链存证信息的映射关系,且后续如果需要对目标文件进行转移,也不用再考虑上链存证信息如何处理,使得维护变得更加简单,具有较高的实用性。

图2是本申请实施例基于区块链的数据校验方法的流程图。图2所示的方法可以由下文相对应的装置执行,包括:

步骤s202,在准备对目标文件的数据内容进行校验时,获取预先植入在目标文件的上链存证信息。

步骤s204,基于上链存证信息,获取存证区块链中记录的目标文件的不可逆加密数据。

在本步骤中,可以通过区块链接口向存证区块链提交上链存证信息,以获得之前在存证区块链中记录的目标文件的不可逆加密数据。

步骤s206,基于不可逆加密数据,对目标文件的数据内容进行校验;其中,目标文件的数据内容不包含上链存证信息。

在本步骤中,对目标文件的数据内容进行不可逆加密处理,得到本地生成的目标文件的不可逆加密数据,之后将本地生成的不可逆加密数据与从存证区块链中获取的不可逆加密数据进行对比。如果两者一致,则校验通过,如果两者一不致,则校验失败。

基于图2所示的数据校验方法可以知道,本申请实施例的方案中,目标文件植入有基于其数据内容所计算得到的不可逆加密数据的上链存证信息。在需要对目标文件的数据内容进行校验时,可以直接从目标文件中解析得到该上链存证信息,并根据上链存证信息向存证区块链调取出用于校验的不可逆加密数据。由于操作更加便捷,因此方案具有较高的实用价值。

下个以结合实际的应用场景,对上述数据存证方法和数据校验方法进行详细介绍。

在本应用场景中,假设用户需要将目标文件进行存证,可以通过个人设备调用可信存证的应用程序编程接口,以基于可信存证应用,对目标文件的数据内容进行哈希计算,得到目标文件原始的摘要信息txhash。

之后,用户使用个人设备接入存证区块链的区块链接口以,向存证区块链提交携带有txhash的交易。

存证区块链基于上述交易,触发预先部署的智能合约,对交易中的txhash发起上链流程,并在txhash成功上链后,将对应的上链存证信息反馈给用户的个人设备。

之后,用户通过个人设备,将存证区块链反馈的上链存证信息转换为数字水印,并植入至目标文件中以进行统一保管。应理解,对目标文件的数据内容的正常编辑,不会对植入的上链存证信息产生变化。

假设后续用户希望对目标文件的数据内容进行校验,则可以通过个人设备将目标文件发送至校验平台,由校验平台负责进行校验(检验过程也可以在用户的个人设备侧执行,本文不再举例赘述)。

校验平台在接收到目标文件后面,对目标文件进行解析,提取目标文件中的上链存证信息。之后,校验平台通过区块链接口向存证区块链提交解析获得的上链存证信息,从而调取存证区块链中记录的txhash。

同时,校验平台还会对目标文件当前的数据内容进行哈希计算,得到目标文件当前的摘要信息txhash*。

在获得txhash和txhash*后,校验平台对txhash和txhash*进行比对,如果两者一致,则校验通过;如果两者不一致,则校验失败。

之后,校验平台将目标文件的校验结果反馈至用户的个人设备。

以上是对本申请实施例的方法的介绍。应理解,在不脱离本文上述原理基础之上,还可以进行适当的变化,这些变化也应视为本申请实施例的保护范围。

与上述数据存证方法相对应地,如图3所示,本申请实施例还提供一种基于区块链的数据存证装置300,包括:

加密模块310,对目标文件的数据内容进行不可逆加密处理,得到所述目标文件的不可逆加密数据;

上链模块320,对所述不可逆加密数据发起上链操作,以将所述不可逆加密数据存储到存证区块链中,并得到所述不可逆加密数据的上链存证信息;

植入模块330,将所述上链存证信息植入至所述目标文件;

存储模块340,存储植入有所述上链存证信息的目标文件。

基于图3所示的数据存证装置可以知道,本申请实施例的方案在对目标文件不可逆加密数据进行上链后,将该不可逆加密数据的上链存证信息植入至目标文件中,从而使得上链存证信息伴随目标文件被一起保管。一方面,降低了上链存证信息的维护难度,且不易发生丢失;另一方面,在需要使用上链存证信息对目标文件的数据内容进行校验时,可直接从目标文件中提取获得,极大提高了操作的便捷性。

可选地,上链模块320在执行时,具体通过区块链接口将携带有所述不可逆加密数据的交易提交到存证区块链中。

可选地,所述上链存证信息包括所述存证区块链中存储有所述不可逆加密数据的区块的区块标识。

可选地,加密模块310在执行时,具体基于不可逆的哈希算法,对目标文件的数据内容进行哈希计算,得到所述目标文件的文件哈希,所述不可逆加密数据包括所述文件哈希。

可选地,植入模块330在执行时,具体生成所述上链存证信息的数字水印。之后基于水印植入技术,将所述上链存证信息的数字水印植入至所述目标文件在数字设备上的呈现内容中。

显然,本申请实施例的数据存证装置可以作为上述图1所示的数据存证方法的执行主体,因此该数据存证装置能够实现数据存证方法在图1所实现的功能。由于原理相同,本文不再赘述。

与上述数据校验方法相对应地,如图4所示,本申请实施例还提供一种基于区块链的数据校验装置400,包括:

解析模块410,在准备对目标文件的数据内容进行校验时,获取预先植入在所述目标文件的上链存证信息;

取证模块420,基于所述上链存证信息,获取存证区块链中记录的所述目标文件的不可逆加密数据;

校验模块430,基于所述不可逆加密数据,对所述目标文件的数据内容进行校验;其中,所述目标文件的数据内容不包含所述上链存证信息。

基于图4所示的数据校验装置可以知道,本申请实施例的方案在需要对目标文件的数据内容进行校验时,可以直接从目标文件中解析出上链存证信息,并根据上链存证信息向存证区块链调取出用于校验的不可逆加密数据。由于操作更加便捷,因此方案具有较高的实用价值。

显然,本申请实施例的数据校验装置可以作为上述图2所示的数据校验方法的执行主体,因此该数据校验装置能够实现数据校验方法在图2所实现的功能。由于原理相同,本文不再赘述。

图5是本申请的一个实施例电子设备的结构示意图。请参考图5,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(random-accessmemory,ram),也可能还包括非易失性存储器(non-volatilememory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。

处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是isa(industrystandardarchitecture,工业标准体系结构)总线、pci(peripheralcomponentinterconnect,外设部件互连标准)总线或eisa(extendedindustrystandardarchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。

处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成数据存证装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:

对目标文件的数据内容进行不可逆加密处理,得到所述目标文件的不可逆加密数据;

对所述不可逆加密数据发起上链操作,以将所述不可逆加密数据存储到存证区块链中,并得到所述不可逆加密数据的上链存证信息。

将所述上链存证信息植入至所述目标文件。

存储植入有所述上链存证信息的目标文件。

或者,处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成数据校验装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:

在准备对目标文件的数据内容进行校验时,获取预先植入在所述目标文件的上链存证信息;

基于所述上链存证信息,获取存证区块链中记录的所述目标文件的不可逆加密数据;

基于所述不可逆加密数据,对所述目标文件的数据内容进行校验;其中,所述目标文件的数据内容不包含所述上链存证信息。

上述如本申请图1所示实施例揭示的数据存证方法,或者,上述如本申请图2所示实施例揭示的数据校验方法均可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。

应理解,本申请实施例的电子设备可以实现上述装置在图1和图2所示的实施例的功能,本文不再赘述。

当然,除了软件实现方式之外,本申请的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。

此外,本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令。

其中,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图1所示实施例的方法,并具体用于执行以下方法:

对目标文件的数据内容进行不可逆加密处理,得到所述目标文件的不可逆加密数据;

对所述不可逆加密数据发起上链操作,以将所述不可逆加密数据存储到存证区块链中,并得到所述不可逆加密数据的上链存证信息;

将所述上链存证信息植入至所述目标文件;

存储植入有所述上链存证信息的目标文件。

或者,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图2所示实施例的方法,并具体用于执行以下方法:

在准备对目标文件的数据内容进行校验时,获取预先植入在所述目标文件的上链存证信息;

基于所述上链存证信息,获取存证区块链中记录的所述目标文件的不可逆加密数据;

基于所述不可逆加密数据,对所述目标文件的数据内容进行校验;其中,所述目标文件的数据内容不包含所述上链存证信息。

应理解,上述指令当被包括多个应用程序的便携式电子设备执行时,能够使上文所述的数据存证装置实现图1所示实施例的功能,或者,能够使上文所述的数据教研装置实现图2所示实施例的功能。由于原理相同,本文不再赘述。

本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

以上仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。

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