基于区块链的数字内容取证方法、装置及设备与流程

文档序号:20702677发布日期:2020-05-12 15:56阅读:303来源:国知局
基于区块链的数字内容取证方法、装置及设备与流程

本说明书一个或多个实施例涉及计算机技术领域,尤其涉及一种基于区块链的数字内容取证方法、装置及设备。



背景技术:

在目前的数字版权保护领域,经常会出现图片、视频等数字内容盗用的现象。主要原因有如下两方面:第一,可以为数字内容进行版权保护的保全机构极少,且处理步骤繁琐,取证手段单一,无法为社会各界提供广泛而又便利的版权保护服务。第二,用户自行取证存在着诸多不规范、不标准、不安全的因素,容易导致原本正当的权利得不到申诉。因此,如何对数字内容进行有效地取证就成为要解决的问题。

传统技术中,通常是基于客户端+服务器的架构来实现数字内容的取证。以数字内容为网页截图为例来说,其取证过程为:客户端每当需要对某网页进行截图时,会向服务器发送含有待截图网页的地址的请求,然后由服务器进行截图,并将网页截图保存在服务器上。然而,在上述过程中,客户端向服务器发送的请求以及保存在服务器上的网页截图会存在被篡改的风险。因此,需要提供一种更可靠的数字内容的取证方法。



技术实现要素:

本说明书一个或多个实施例描述了一种基于区块链的数字内容取证方法、装置及设备,可以提高获取的数字内容的可信度。

第一方面,提供了一种基于区块链的数字内容取证方法,包括:

接收数字内容的取证任务;

从所述多个节点中选取若干第二节点,并向所述若干第二节点中的各第二节点发送取证任务的执行指示;

接收所述各第二节点在执行完成相应的取证任务之后返回的多个取证结果;

判断多个取证结果是否相匹配;若相匹配,则从所述多个取证结果中选取任意的第一取证结果作为存证结果;

在本地存储所述存证结果,并向所述多个节点中除所述第一节点外的其它节点广播该存证结果,以使其它节点在对所述存证结果进行共识验证后存储。

第二方面,提供了一种基于区块链的数字内容取证方法,包括:

接收所述若干第一节点中任意的第一节点发送的取证任务的执行指示;

响应于所述执行指示,执行所述取证任务,以获得取证结果;

向所述第一节点返回所述取证结果;

接收所述第一节点至少基于所述取证结果确定的存证结果;

基于从其它第一节点接收的存证结果,采用共识算法,对从所述第一节点接收的存证结果进行共识验证;

若共识验证通过,则对从所述第一节点接收的存证结果进行存储。

第三方面,提供了一种基于区块链的数字内容取证装置,包括:

接收单元,用于接收数字内容的取证任务;

选取单元,用于从所述多个节点中选取若干第二节点;

发送单元,用于向所述选取单元选取的所述若干第二节点中的各第二节点发送取证任务的执行指示;

所述接收单元,还用于接收所述各第二节点在执行完成相应的取证任务之后返回的多个取证结果;

判断单元,用于判断所述接收单元接收的多个取证结果是否相匹配;

所述选取单元,还用于若相匹配,则从所述多个取证结果中选取任意的第一取证结果作为存证结果;

存储单元,用于在本地存储所述选取单元选取的所述存证结果;

所述发送单元,还用于向所述多个节点中除所述第一节点外的其它节点广播该存证结果,以使其它节点在对所述存证结果进行共识验证后存储。

第四方面,提供了一种基于区块链的数字内容取证装置,包括:

接收单元,用于接收所述若干第一节点中任意的第一节点发送的取证任务的执行指示;

执行单元,用于响应于所述接收单元接收的所述执行指示,执行所述取证任务,以获得取证结果;

发送单元,用于向所述第一节点返回所述取证结果;

所述接收单元,还用于接收所述第一节点至少基于所述取证结果确定的存证结果;

共识单元,用于基于所述接收单元从其它第一节点接收的存证结果,采用共识算法,对从所述第一节点接收的存证结果进行共识验证;

存储单元,用于若所述共识单元共识验证通过,则对从所述第一节点接收的存证结果进行存储。

第五方面,提供了一种基于区块链的数字内容取证设备,包括:

存储器;

一个或多个处理器;以及

一个或多个程序,其中所述一个或多个程序存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述程序被所述处理器执行时实现以下步骤:

接收数字内容的取证任务;

从区块链的多个节点中选取若干第二节点,并向所述若干第二节点中的各第二节点发送取证任务的执行指示;

接收所述各第二节点在执行完成相应的取证任务之后返回的多个取证结果;

判断多个取证结果是否相匹配;若相匹配,则从所述多个取证结果中选取任意的第一取证结果作为存证结果;

在本地存储所述存证结果,并向所述多个节点中除所述第一节点外的其它节点广播该存证结果,以使其它节点在对所述存证结果进行共识验证后存储。

第六方面,提供了一种基于区块链的数字内容取证设备,包括:

存储器;

一个或多个处理器;以及

一个或多个程序,其中所述一个或多个程序存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述程序被所述处理器执行时实现以下步骤:

接收区块链的若干第一节点中任意的第一节点发送的取证任务的执行指示;

响应于所述执行指示,执行所述取证任务,以获得取证结果;

向所述第一节点返回所述取证结果;

接收所述第一节点至少基于所述取证结果确定的存证结果;

基于从其它第一节点接收的存证结果,采用共识算法,对从所述第一节点接收的存证结果进行共识验证;

若共识验证通过,则对从所述第一节点接收的存证结果进行存储。

本说明书一个或多个实施例提供的基于区块链的数字内容取证方法、装置及设备,由区块链中的第一节点负责接收取证任务,并在接收到该取证任务之后,从区块链中选取出若干第二节点来执行相应的取证任务。之后,第一节点在接收到各第二节点返回的多个取证结果后,判断该多个取证结果是否相匹配,并在相匹配的情况下,从多个取证结果中确定出相应的存证结果,并将该存证结果发布在区块链上。也即本说明书提供的方案,可以基于区块链来获取数字内容,由此可以保证取证过程的安全可靠。此外,本方案中,设定由区块链中的第一节点来负责指示取证任务执行的方式,可以大大节约计算资源。

附图说明

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

图1为本说明书提供的基于区块链的数字内容取证方法应用场景示意图;

图2为本说明书一个实施例提供的基于区块链的数字内容取证方法流程图;

图3为本说明书另一个实施例提供的基于区块链的数字内容取证方法流程图;

图4为本说明书一个实施例提供的基于区块链的数字内容取证装置示意图;

图5为本说明书另一个实施例提供的基于区块链的数字内容取证装置示意图;

图6为本说明书一个实施例提供的基于区块链的数字内容取证设备示意图。

具体实施方式

下面结合附图,对本说明书提供的方案进行描述。

在描述本说明书提供的方案之前,先对本方案的发明构思作以下说明。

区块链技术是一种互联网数据库技术,其特点是去中心化、公开透明、不可篡改以及可信任。因此,本方案可以引入区块链技术。

在引入区块链技术后,对于区块链中的节点,可以从中选取一部分节点负责取证任务的广播以及任务执行指示的发送,该一部分节点也可以称为一组委员会节点(或者一组第一节点)。需要说明的是,该组委员会节点是周期性更换的,如,可以是每小时更换一次。

对于区块链中的任务执行节点(即第二节点),其只有在接收到有效的委员会节点发送的任务执行指示时,才执行相应的取证任务。由此,可以避免不对各节点进行区分时,任一节点都有可能发送任务执行指示时,会极大地浪费计算资源的问题。此外,还可以兼容现有的区块链架构(即区块链的若干核心节点拥有记账权,其它节点只有验证功能)。

此外,为了进一步确保取证内容的可靠性,委员会节点可以从区块链的节点中选取若干节点,来执行对应的取证任务。这里,选取的若干节点中的每个节点可以称为第二节点。之后,基于该若干节点各自返回的取证结果,来确定最终的存证结果(确定方式后续说明)。

委员会节点在选取出上述存证结果之后,可以在区块链上广播该存证结果。可以理解的是,对于区块链上除委员会节点之外的普通节点来说,其可以接收到一组委员会节点中每个委员会节点发送的存证结果。之后,其可以采用共识算法,从各委员会节点发送的多个存证结果中确定出最终的存证结果并进行存储。由此可以看出,对于上述普通节点,其最终存储的存证结果经过了双重验证,即首先是委员会节点进行了第一次验证,之后再经过共识算法进行了第二次验证,由此,可以大大提升存证结果的正确性和有效性。

以上就是本说明书提供的发明构思,基于该发明构思就可以得到本方案,以下对本方案进行详细阐述。

图1为本说明书提供的基于区块链的数字内容取证方法应用场景示意图。图1中,区块链可以包括多个节点,该多个节点可以包括一组第一节点。具体地,用户可以基于对应的客户端向区块链中的某个第一节点发布数字内容的取证任务。之后,该第一节点可以在区块链上广播该取证任务,以使得上述一组第一节点中的各第一节点均可以接收到上述取证任务。

以上述一组第一节点中的某个第一节点为例来说,该第一节点在接收到取证任务之后,可以从区块链的多个节点中选取若干第二节点,并向该若干第二节点中的各第二节点发送该取证任务的执行指示。各第二节点在执行完成相应的取证任务之后,可以向第一节点返回对应的取证结果。第一节点判断多个取证结果是否相匹配。若相匹配,则从多个取证结果中选取任意的第一取证结果作为存证结果。在本地存储该存证结果,并向多个节点中除第一节点外的其它节点广播该存证结果,以使其它节点在对存证结果进行共识验证后存储。

图2为本说明书一个实施例提供的基于区块链的数字内容取证方法流程图。所述方法的执行主体可以为图1中的区块链的第一节点。如图2所示,所述方法具体可以包括:

步骤202,接收数字内容的取证任务。

这里的数字内容的取证任务可以是由上述第一节点直接从客户端接收的,也可以是由其它第一节点在区块链上广播上述取证任务时,由上述第一节点接收的。

需要说明的是,客户端在发送上述取证任务时,可以添加相应的数字签名/证书。或者,其它第一节点在广播上述取证任务时,可以添加相应的数字签名/证书。从而上述第一节点可以基于数字签名/证书,对客户端或者其它第一节点的身份进行验证,由此,可以确保客户端与第一节点以及多个第一节点之间通信的可信。

在步骤202中,数字内容可以包括但不限于网页截图、视频文件以及音频文件等。以网页截图为例来说,对应的取证任务可以为截图任务或者抓取任务。以视频文件或者音频文件为例来说,对应的取证任务可以为录制任务等。

以数字内容为网页截图为例来说,上述取证任务可以包括用户的uid以及待截图网页的url地址。

步骤204,从区块链的多个节点中选取若干第二节点,并向该若干第二节点中的各第二节点发送取证任务的执行指示。

上述若干第二节点可以是基于预定义的节点选取规则,从区块链的所有节点中选取的,也可以是从区块链的预定节点中选取的。这里的预定节点仅负责取证任务的执行。可以理解的是,当基于第一种方式选取上述若干第二节点时,该若干第二节点可以包括第一节点本身。也就是说,本说明书中的第一节点也可以负责取证任务的执行。此外,当从预定节点中选取第二节点时,可以大大提升第二节点的选取效率。

还以数字内容为网页截图为例来说,上述取证任务的执行指示可以包括用户的uid以及待截图网页的url地址。任一第二节点在接收到该执行指示之后,可以基于其预先下载的docker镜像文件,启动docker容器。并在该docker容器中运行预先封装的浏览器。在运行后的浏览器中,基于url地址加载待截图网页,并对待截图网页进行截图,以得到网页截图。可以理解的是,在该例子中,所得到的网页截图即为上述任一第二节点获得的取证结果。

需要说明的是,在本说明书中,由第一节点负责发送取证任务的执行指示,因此,任一第二节点在接收到取证任务的执行指示之后,可以根据预定义的有效性验证规则,对第一节点的有效性进行验证。若有效性验证通过,则执行取证任务。

应理解,当第一节点需要周期性更换时,相应的有效性验证规则也可以周期性更新。举例来说,假设在t时,有效性验证规则为:节点id%t=0,那么在t+1时,有效性验证规则可以更新为:节点id%(t+1)=0。

步骤206,接收各第二节点在执行完成相应的取证任务之后返回的多个取证结果。

还以数字内容为网页截图为例来说,第一节点可以接收到其选取的多个第二节点各自发送的多张网页截图。

步骤208,判断多个取证结果是否相匹配。

在一个示例中,该判断过程具体可以包括:计算多个取证结果的两两取证结果间的相似度。基于多个取证结果的两两取证结果间的相似度,将多个取证结果划分为至少一个分组。基于至少一个分组中的取证结果的个数,判断多个取证结果是否相匹配。如,当至少一个分组中存在取证结果的个数大于第一阈值的第一分组时,确定多个取证结果相匹配。

以数字内容为网页截图为例来说,上述两两取证结果之间的相似度可以是基于感知哈希算法、orb算法以及直方图统计算法等图像相似度算法计算得到。

此外,上述判断过程还可以其它步骤。还以数字内容为网页截图为例来说,还可以包括如下步骤:判断多个网页截图各自对应的属性信息(如,大小或者高度)是否相等,和/或,判断多个取证结果各自对应的子截图是否匹配等。这里的子截图可以是基于预定义的截图规则(如,网页中背景颜色为白色的方形或者圆角区域)截取的。上述子截图是否匹配的判断也可以基于图片相似度算法以及属性信息等实现,具体判断过程同上所述,在此不复赘述。

当然,在实际应用中,多个取证结果是否相匹配的判断也可直接基于各自相应的子截图是否相匹配来实现,也即本方案无需要求每个取证结果完全一样,而只对关心核心内容(即子截图对应的内容),进而扩大了本方案的适用范围或者使用场景。

本说明书中,第一节点通过选取多个第二节点来执行取证任务的方式可以确保存证结果获取的安全与可靠。

步骤210,若相匹配,则从多个取证结果中选取任意的第一取证结果作为存证结果。

还以数字内容为网页截图为例来说,若多张网页截图相匹配,那么可以从中选取任一张网页截图作为最终的存证结果。

需要说明的是,若多个取证结果不相匹配,那么第一节点可以在区块链上广播其取证失败的信息。当然,也可以不广播任何信息,本说明书对此不作限定。此外,第一节点还可以从多个取证结果中选取出错误的取证结果,并确定发送错误的取证结果的第二节点。统计确定的第二节点发送错误的取证结果的次数。若次数大于预定阈值,则在区块链上广播确定的第二节点。由此,来实现对第二节点监督的功能。

步骤212,在本地存储存证结果,并向多个节点中除第一节点外的其它节点广播该存证结果,以使其它节点在对存证结果进行共识验证后存储。

这里,第一节点在本地存储存证结果的过程具体可以为:基于存证结果以及与存证结果相关的内容信息生成目标交易。在本地存储生成的目标交易。其中,在一种实现方式中,第一节点在生成上述目标交易之后,可以先将该目标交易记录在交易池中,之后再连通其它交易一起写入该第一节点对应区块的交易详情中。上述内容信息可以包括以下任一种或多种:存证结果对应的hash值、取证任务的发起者(如,用户id)、第一节点的信息、第二节点的信息以及取证时间。

此外,上述其它节点可以分为两类,其中,一类是委员会节点(即其它第一节点),另一类是除委员会节点外的节点(以下称为普通节点)。对于其它各第一节点,如果其取证结果获取成功,即如果其通过对应的若干第二节点获取的多个取证结果相匹配,那么在接收到上述第一节点发送的存证结果之后,其可以不执行任何操作。而如果其取证结果获取失败,即如果其通过对应的若干第二节点获取的多个取证结果不相匹配,那么其执行与普通节点相同的共识验证操作(如下说明)。

对于普通节点,其执行如下的共识验证操作。具体地,该普通节点先接收各第一节点广播的多个存证结果。之后基于从其它第一节点接收的存证结果,采用共识算法,对从第一节点接收的存证结果进行共识验证。这里的共识算法可以包括但不限于实用拜占庭容错(practicalbyzantinefaulttolerance,pbft)算法、工作量证明(proofofwork,pow)算法、权益证明(proofofstake,pos)算法以及委托权益证明(delegatedproofofstake,dpos)算法等。若共识验证通过,则将从上述第一节点接收的存证结果进行存储。其具体存储过程同第一节点的存储过程所述,在此不复赘述。

需要说明的是,对于其它节点,其在生成对应的目标交易时,与存证结果相关的内容信息可以是由第一节点在广播上述存证结果时,与该存证结果一起发送的。

还需要说明的是,对于存储到区块链上的存证结果,如果用户或司法机构需要提取或验证该存证结果,只需要基于该存证结果对应的hash值,在区块链上查询或者获取该存证结果即可。

总之,在本说明书实施例中,由于区块链具有可追溯、防篡改的特性,天生就是极佳的证据保存途径,因此在通过可信的处理链路产生证据后,保存在同样可信的区块链上,可以最大化证据的价值。此外,本说明书实施例适用于对各类数字内容的取证,只需要针对不同类型设定不同的匹配机制即可。

上述实施例是以区块链中的第一节点为执行主体对本方案的说明,以下以第二节点为执行主体对本方案进行描述。

图3为本说明书另一个实施例提供的基于区块链的数字内容取证方法流程图。所述方法的执行主体可以为图1中的区块链的第二节点。如图3所示,所述方法具体可以包括:

步骤302,接收若干第一节点中任意的第一节点发送的取证任务的执行指示。

这里,可以首先由上述第一节点接收由客户端或者区块链上的其它第一节点发送的取证任务。之后,第一节点选取出该第二节点,并向该第二节点发送取证任务的执行指示。

步骤304,响应于执行指示,执行取证任务,以获得取证结果。

在一个示例中,第二节点在执行取证任务之前,可以先根据预定义的有效性验证规则,对第一节点的有效性进行验证。若有效性验证通过,则执行取证任务。

以数字内容为网页截图为例来说,上述取证任务的执行指示可以包括用户的uid以及待截图网页的url地址。第二节点在接收到该执行指示之后,可以基于预先下载的docker镜像文件,启动docker容器。并在该docker容器中运行预先封装的浏览器。在运行后的浏览器中,基于url地址加载待截图网页,并对待截图网页进行截图,以得到网页截图。可以理解的是,在该例子中,所得到的网页截图即为第二节点获得的取证结果。

步骤306,向第一节点返回取证结果。

步骤308,接收第一节点至少基于该取证结果确定的存证结果。

具体地,第一节点可以接收多个第二节点返回的取证结果。之后,第一节点可以判断多个取证结果是否相匹配。如,可以基于多个取证结果的两两取证结果间的相似度,来进行多个取证结果是否相匹配的判断。此外,还可以基于多个网页截图各自对应的属性信息(如,大小或者高度),和/或,多个取证结果各自对应的子截图,来进行多个取证结果是否相匹配的判断。

若相匹配,则从多个取证结果中选取任意的第一取证结果作为存证结果。

步骤310,基于从其它第一节点接收的存证结果,采用共识算法,对从上述第一节点接收的存证结果进行共识验证。

可以理解的是,本说明书中,区块链中的每个第二节点都可以接收到一组第一节点中各第一节点在区块链上广播的存证结果。在接收到各第一节点发送的存证结果之后,就可以基于共识算法进行共识验证了。

上述共识算法可以为pbft算法。

步骤312,若共识验证通过,则对从第一节点接收的存证结果进行存储。

如前所述,第二节点除了可以接收第一节点广播的存证结果之外,还可以接收与该存证结果相关的内容信息。这里的内容信息可以是第一节点在执行获取该存证结果的流程时记录的。其可以包括但不限于存证结果对应的hash值、取证任务的发起者(如,用户id)、第一节点的信息、第二节点的信息以及取证时间等。

第二节点存储上述存证结果的过程具体可以为:基于存证结果以及与存证结果相关的内容信息生成目标交易。在本地存储生成的目标交易。

需要说明的是,在本说明书中,第二节点存储的存证结果实际上经过了双重验证,即首先是第一节点进行了第一次验证,之后再经过共识算法进行了第二次验证,由此,可以大大提升存证结果的正确性和有效性。

总之,本说明书实施例通过利用多次取证、校验和共识来保护所有处理过程安全可靠,以及证据可追溯、易验证。此外,本方案还可应用于其它场景,如,当在不可靠的网络中要求对冗余的数据容错和验证时,通过本方案将冗余的数据视为同一条证据,利用委员会投票和共识机制也可保证最后结果的正确性。

综合以上两个实施例可以得出,本说明书提供的方案可以解决如下几个问题:

第一,解决了取证流程中存在风险的问题。本方案通过保证处理链路形成可信的闭环,并且加入了多节点的校验,使整个过程拥有抵抗潜在威胁的能力,使得获取的证据具有很强的公信力。

第二,解决了证据保存存在风险的问题。本方案将通过验证的结果进行hash值计算,然后与处理流程中的关键信息一同上链存证的方式,解决了保存证据中存在的风险,使得证据可验证、可追溯。

第三,解决了证据验证不便的问题。本方案通过将证据上链保存的方式,使用户或司法机关在需要验证证据时,可以快速从链上提取hash值进行验证,同时也可以核查证据的来源,极大提升处理效率。

与上述基于区块链的数字内容取证方法对应地,本说明书一个实施例还提供的一种基于区块链的数字内容取证装置,该区块链包括多个节点,多个节点至少包括第一节点。所述装置由第一节点实施,如图4所示,该装置可以包括:

接收单元402,用于接收数字内容的取证任务。

这里的数字内容包括以下任一项:网页截图、音频文件以及视频文件等。取证任务包括以下任一项:截图任务、抓取任务以及录制任务。

选取单元404,用于从多个节点中选取若干第二节点。

发送单元406,用于向选取单元404选取的若干第二节点中的各第二节点发送取证任务的执行指示。

接收单元402,还用于接收各第二节点在执行完成相应的取证任务之后返回的多个取证结果。

判断单元408,用于判断接收单元402接收的多个取证结果是否相匹配。

判断单元408具体可以用于:

计算多个取证结果的两两取证结果间的相似度。

基于多个取证结果的两两取证结果间的相似度,将多个取证结果划分为至少一个分组。

基于至少一个分组中的取证结果的个数,判断多个取证结果是否相匹配。

判断单元408还具体可以用于:

判断至少一个分组中是否存在取证结果的个数大于第一阈值的第一分组。若存在该第一分组,则确定多个取证结果相匹配。

可选地,若取证结果为网页截图,判断单元408还具体可以用于:

基于多个取证结果各自对应的属性信息和/或基于多个取证结果各自对应的子截图的匹配结果,判断多个取证结果是否相匹配。

选取单元404,还用于若判断单元408判断相匹配,则从多个取证结果中选取任意的第一取证结果作为存证结果。

存储单元410,用于在本地存储选取单元404选取的存证结果。

存储单元410具体可以用于:

基于存证结果以及与存证结果相关的内容信息生成目标交易。

在本地存储目标交易。

上述内容信息包括以下任一种或多种:存证结果对应的hash值、取证任务的发起者、第一节点的信息、第二节点的信息以及取证时间。

发送单元406,还用于向多个节点中除第一节点外的其它节点广播该存证结果,以使其它节点在对存证结果进行共识验证后存储。

可选地,该装置还可以包括:统计单元(图中未示出)。

选取单元404,还用于若多个取证结果不相匹配,则从多个取证结果中选取出错误的取证结果,并确定发送错误的取证结果的第二节点。

统计单元,用于统计确定的第二节点发送错误的取证结果的次数。

发送单元406,还用于若统计单元统计的次数大于预定阈值,则在区块链上广播确定的第二节点。

本说明书上述实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本说明书一个实施例提供的装置的具体工作过程,在此不复赘述。

本说明书一个实施例提供的基于区块链的数字内容取证装置,接收单元402接收数字内容的取证任务。选取单元404从多个节点中选取若干第二节点。发送单元406向选取的若干第二节点中的各第二节点发送取证任务的执行指示。接收单元402接收各第二节点在执行完成相应的取证任务之后返回的多个取证结果。判断单元408判断多个取证结果是否相匹配。若相匹配,则选取单元404从多个取证结果中选取任意的第一取证结果作为存证结果。存储单元410在本地存储存证结果。发送单元406向多个节点中除第一节点外的其它节点广播该存证结果,以使其它节点在对存证结果进行共识验证后存储。由此,可以提高获取的数字内容的可信度。

与上述基于区块链的数字内容取证方法对应地,本说明书一个实施例还提供的一种基于区块链的数字内容取证装置,该区块链包括多个节点,该多个节点包括若干第一节点和第二节点。该装置由第二节点实施,如图5所示,该装置可以包括:

接收单元502,用于接收若干第一节点中任意的第一节点发送的取证任务的执行指示。

执行单元504,用于响应于接收单元502接收的执行指示,执行取证任务,以获得取证结果。

执行单元504具体可以用于:

根据预定义的有效性验证规则,对第一节点的有效性进行验证。

若有效性验证通过,则执行取证任务。

发送单元506,用于向第一节点返回取证结果。

接收单元502,还用于接收第一节点至少基于该取证结果确定的存证结果。

共识单元508,用于基于接收单元502从其它第一节点接收的存证结果,采用共识算法,对从第一节点接收的存证结果进行共识验证。

这里的共识算法可以为实用拜占庭容错pbft算法。

存储单元510,用于若共识单元508共识验证通过,则对从第一节点接收的存证结果进行存储。

本说明书上述实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本说明书一个实施例提供的装置的具体工作过程,在此不复赘述。

本说明书一个实施例提供的基于区块链的数字内容取证装置,可以提高获取的数字内容的可信度。

与上述基于区块链的数字内容取证方法对应地,本说明书一个实施例还提供的一种取证设备,该设备可以包括:存储器602、一个或多个处理器604以及一个或多个程序。其中,该一个或多个程序存储在存储器602中,并且被配置成由一个或多个处理器604执行,该程序被处理器604执行时实现以下步骤:

接收数字内容的取证任务。

从多个节点中选取若干第二节点,并向若干第二节点中的各第二节点发送取证任务的执行指示。

接收各第二节点在执行完成相应的取证任务之后返回的多个取证结果。

判断多个取证结果是否相匹配。若相匹配,则从多个取证结果中选取任意的第一取证结果作为存证结果。

在本地存储存证结果,并向多个节点中除第一节点外的其它节点广播该存证结果,以使其它节点在对存证结果进行共识验证后存储。

本说明书一个实施例提供的取证设备,可以提高获取的数字内容的可信度。

与上述基于区块链的数字内容取证方法对应地,本说明书另一个实施例还提供的一种取证设备也可以如图6所示,即可以包括:存储器602、一个或多个处理器604以及一个或多个程序。其中,该一个或多个程序存储在存储器602中,并且被配置成由一个或多个处理器604执行。所不同的是,该程序被处理器604执行时实现以下步骤:

接收若干第一节点中任意的第一节点发送的取证任务的执行指示。

响应于该执行指示,执行取证任务,以获得取证结果。

向第一节点返回取证结果。

接收第一节点至少基于该取证结果确定的存证结果。

基于从其它第一节点接收的存证结果,采用共识算法,对从第一节点接收的存证结果进行共识验证。

若共识验证通过,则对从第一节点接收的存证结果进行存储。

本说明书一个实施例提供的取证设备,可以提高获取的数字内容的可信度。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

结合本说明书公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于ram存储器、闪存、rom存储器、eprom存储器、eeprom存储器、寄存器、硬盘、移动硬盘、cd-rom或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于asic中。另外,该asic可以位于服务器中。当然,处理器和存储介质也可以作为分立组件存在于服务器中。

本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。

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

以上所述的具体实施方式,对本说明书的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本说明书的具体实施方式而已,并不用于限定本说明书的保护范围,凡在本说明书的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本说明书的保护范围之内。

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