用于区块链网络的数字内容溯源和记录方法、存储介质、计算设备与流程

文档序号:17762750发布日期:2019-05-24 21:50阅读:149来源:国知局
用于区块链网络的数字内容溯源和记录方法、存储介质、计算设备与流程

本发明涉及区块链技术领域,具体地涉及一种用于区块链网络的数字内容溯源和记录方法、存储介质、计算设备。



背景技术:

区块链是用分布式数据库识别、传播和记载信息的智能化对等网络,也称为价值互联网。区块链技术包括以块结构存储数据,使用密码学保证传输和访问安全等,其能够实现数据一致性存储、反篡改、去中心的技术体系。

数字内容平台是一个供用户传播数字内容的平台,也可以理解为数据分享平台,用户可以将创建的数字内容发布至所述数字内容平台,也可以在所述数字内容平台上任意转发他人发布或转发的数字内容。



技术实现要素:

本发明的实施例提供了一种用于区块链网络的数字内容溯源和记录方法、存储介质、计算设备。

本发明实施例的第一方面提供一种用于区块链网络的数字内容溯源方法,包括:a.接收溯源请求,所述溯源请求包括针对所述数字内容的第一操作的第一操作标识;b.在所述区块链网络的区块链账本中查询在所述第一操作之前的针对所述数字内容的操作的操作信息,其中,所述操作信息包括执行所述操作的用户的信息;c.返回所述操作信息。

本实施例的方案对数字内容的传播实现有效溯源。具体地,所述区块链账本中记录有历史上针对数字内容的至少一次操作的操作信息,根据所述第一操作标识,能够在所述区块链账本中查询得到在所述第一操作之前针对所述数字内容的操作的操作信息,从而实现对数字内容的传播过程的反向追溯,使得对数字内容的历次操作结果都成为公开可追溯的信息。

本发明实施例还提供一种计算设备,包括处理器和存储器,所述存储器上存储有能够在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行以下步骤:a.接收溯源请求,所述溯源请求包括针对所述数字内容的第一操作的第一操作标识;b.在所述区块链网络的区块链账本中查询在所述第一操作之前的针对所述数字内容的操作的操作信息,其中,所述操作信息包括执行所述操作的用户的信息;c.返回所述操作信息。

本发明实施例还提供一种用于区块链网络的数字内容记录方法,包括:a.确定针对所述数字内容的当前操作的操作信息,其中,所述操作信息包括执行所述当前操作的用户的信息;b.根据所述当前操作的操作信息生成针对所述数字内容的当前操作的操作标识;c.获取针对所述数字内容的前一次操作的操作标识;d.生成上链请求,所述上链请求包括针对所述数字内容的当前操作的操作信息和操作标识、以及针对所述数字内容的前一次操作的操作标识。

本实施例的方案依托区块链技术将用户针对数字内容的操作写入区块链账本,实现对数字内容在网络中传播过程的有效记录。具体地,生成针对所述数字内容的当前操作的操作标识,确保后续能够基于操作标识唯一确定针对数字内容的操作的操作信息,使得针对数字内容的每一次操作均能找到对应的用户。进一步,基于针对数字内容的当前操作的操作标识和前一次操作的操作标识一并生成所述上链请求,能够得到针对数字内容的前后两次操作的关联关系,并将该关联关系写入区块链账本,利用区块链的反篡改功能确保该关联关系的真实性,从而通过区块链账本形成数字内容的追溯链条,使得对数字内容的每一次操作结果都成为公开可追溯的信息。

本发明实施例还提供一种计算设备,包括处理器和存储器,所述存储器上存储有能够在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行以下步骤:a.确定针对所述数字内容的当前操作的操作信息,其中,所述操作信息包括执行所述当前操作的用户的信息;b.根据所述当前操作的操作信息生成针对所述数字内容的当前操作的操作标识;c.获取针对所述数字内容的前一次操作的操作标识;d.生成上链请求,所述上链请求包括针对所述数字内容的当前操作的操作信息和操作标识、以及针对所述数字内容的前一次操作的操作标识。

本发明实施例还提供一种存储介质,其上存储有计算机指令,所述计算机指令运行时执行上述方法的步骤。

附图说明

图1是本发明实施例的一种用于区块链网络的数字内容溯源方法的流程图;

图2是图1中步骤b的一个具体实施方式的流程图;

图3是本发明实施例的一种用于区块链网络的数字内容记录方法的流程图;

图4是本发明实施例的一个典型的应用场景的示意图;

图5是图4中区块链节点的结构示意图。

具体实施方式

本申请发明人经过分析发现,现有的数字内容平台无法对在其上传播的数字内容进行有效追溯,不利于对虚假消息的传播源头的追溯,还影响公众对数字内容的真实性的信任度。

具体而言,在互联网世界中,存在大量的用户创建的数字内容,如视频、音频、文字等。以社交平台为例,这类数字内容平台很容易被用户利用发布一些虚假信息和谣言,并在短时间内被转发和传播给其他用户。

对于数字内容平台侧,当用户在数字内容平台上发布或转发数字内容时,现有的数字内容平台仅记录本次发布或转发的相关信息,一旦一数字内容被证实为虚假消息之后,现有的数字内容平台无法有效找到最初发布该数字内容的用户。

本发明实施例的第一方面提供一种用于区块链网络的数字内容溯源方法,包括:a.接收溯源请求,所述溯源请求包括针对所述数字内容的第一操作的第一操作标识;b.在所述区块链网络的区块链账本中查询在所述第一操作之前的针对所述数字内容的操作的操作信息,其中,所述操作信息包括执行所述操作的用户的信息;c.返回所述操作信息。

本实施例的方案对数字内容的传播实现有效溯源。具体地,所述区块链账本中记录有历史上针对数字内容的至少一次操作的操作信息,根据所述第一操作标识,能够在所述区块链账本中查询得到在所述第一操作之前针对所述数字内容的操作的操作信息,从而实现对数字内容的传播过程的反向追溯,使得对数字内容的历次操作结果都成为公开可追溯的信息。

为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。

以下参考附图详细描述本公开的各个示例性实施例。附图中的流程图和框图示出了根据本公开的各种实施例的方法和系统的可能实现的体系架构、功能和操作。应当注意,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分可以包括一个或多个用于实现各个实施例中所规定的逻辑功能的可执行指令。也应当注意,在有些作为备选的实现中,方框中所标注的功能也可以按照不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,或者他们有时也可以按照相反的顺序执行,这取决于所涉及的功能。同样应当注意的是,流程图和/或框图中的每个方框、以及流程图和/或框图中的方框的组合,可以使用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以使用专用硬件与计算机指令的组合来实现。还应当注意,流程图中各个步骤的序号并不代表对各个步骤的执行顺序的限定。

本文所使用的术语“包含”、“包括”及类似术语应该被理解为是开放性的术语,即“包括/包含但不限于”,表示还可以包括其他内容。在本公开内容中,术语“基于”是“至少部分地基于”;术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”。

本文中出现的“上链请求”是指:由数字内容平台发送至区块链节点的消息,用于请求将用户在数字内容平台上针对数字内容的操作记录至区块链账本。

在一个实施例中,所述上链请求可以包含针对所述数字内容的当前操作的操作信息和操作标识,以及针对所述数字内容的前一次操作的操作标识。

其中,所述操作信息可以包括执行所述操作的用户的信息,如用户的身份信息。

进一步地,所述用户的身份信息具有唯一性,能够唯一关联所述用户。

在一个实施例中,所述用户的身份信息可以是经过所述数字内容平台实名验证通过的信息。例如,所述用户的身份信息可以为所述用户的手机号、身份证号等。

在另一个变化例中,所述用户的身份信息可以是由所述数字内容平台分配至所述用户的,不可篡改的标识信息。如数字内容平台统一分配的账户名等。

进一步地,所述操作信息还可以包括执行所述操作的时间,例如,所述数字内容的转发时刻、所述数字内容的发布时刻。

进一步地,所述操作信息还可以包括所述操作的版本信息。所述版本信息可以包括描述对所述数字内容进行操作后得到的原始数据。或者,所述版本信息也可以包括操作得到的数字内容的版本号,不同操作得到的数字内容的版本号不相同。

在一个实施例中,对所述数字内容进行直接转发操作后得到的原始数据,与被进行直接转发操作的数字内容的原始数据是一致的,也即,直接转发操作前后的数字内容的版本号是一致的。

在另一个实施例中,对所述数字内容进行修改后转发操作后得到的原始数据,与被进行修改后转发操作的数字内容的原始数据是不一致的,也即,修改后转发操作前后的数字内容的版本号是不一致的。

进一步地,可以以所述数字内容的原始数据,或所述数字内容的哈希值作为所述版本信息。

例如,当针对所述数字内容进行当前操作后得到的数字内容较大时,可以对得到的数字内容进行哈希计算,并将计算得到的哈希值作为当前操作的版本信息,以得到轻量级的区块链账本。

又例如,当针对所述数字内容进行当前操作后得到的数字内容较小时,可以直接将得到的数字内容作为当前操作的版本信息。

本文中出现的“操作标识”是指:当前被操作的数字内容的唯一标识,所述操作标识用于唯一确定针对数字内容执行操作的用户、操作的时间以及当前操作的版本信息。

进一步地,所述操作标识在所述数字内容平台范围内具有唯一性。

也即,数字内容每被操作一次就生成新的唯一标识,由此,通过在区块链账本中记录对数字内容进行当前操作的人、时间、对象和关联的唯一标识,以及上一次操作的唯一标识,能够实现该数字内容的链式关联,利于溯源。

在一个实施例中,所述操作标识可以是由所述数字内容平台随机生成的,且在所述数字内容平台范围内不重复的随机数值。

在另一个实施例中,所述操作标识可以是对所述当前操作的操作信息进行哈希计算得到的哈希值。

本文中出现的“附加信息”是指:由区块链节点添加的信息,如所述区块链节点接收到所述上链请求的接收时间。例如,所述区块链节点可以将所述附加信息一并写入所述区块链账本。

进一步地,所述附加信息还可以包括所述区块链节点的处理时间,如开始处理所述上链请求的时刻。

本文中出现的“上链指示”是指:由用户发送至数字内容平台的消息,用于指示数字内容平台将所述用户针对数字内容执行的当前操作的操作信息记录至区块链账本。例如,所述上链指示可以包含执行所述当前操作的用户的信息以及所述当前操作所针对的所述数字内容。

本文中出现的“数字内容平台”是指:供用户传播数字内容的平台,如社交平台、信息发布平台等。具体地,用户可以创建数字内容并发布至所述数字内容平台,用户还可以转发他人或自己传播至所述数字内容平台的数字内容。

本文中出现的“数字内容”是指:以数字形式存在的各种内容,例如文本、图象、声音等,所述数字内容可以通过网络传输。例如,所述数字内容可以包括视频、音频、文本等。

在一个实施例中,所述传播是指在所述数字内容平台内发布、转发等。

本文中出现的“操作”是指:对所述数字内容执行的单个动作或多个动作。所述操作具体可以是上传操作或转发操作。其中,上传操作也可以称为发布操作。

本文中出现的“上传操作”是指:在数字内容平台上发布新的数字内容的操作,其中,所述新的数字内容可以是所述上传操作的用户自己创建的。

本文中出现的“转发操作”是指:在数字内容平台上转发已经存在于所述数字内容平台的数字内容,其中,所述已经存在于所述数字内容平台的数字内容可以是他人在所述数字内容平台上传播的,也可以是所述转发操作的用户自己传播至所述数据内容平台的。

在一个实施例中,所述转发操作可以包括:直接转发操作和修改后转发操作,其中,采用所述直接转发操作进行转发前后的数字内容的原始数据不变,采用所述修改后转发操作进行转发前后的数字内容的原始数据发生变化。

具体地,所述修改后转发操作中的修改操作可以包括:添加评论、调整内容,如删减视频长度、添加滤镜等。

本文中出现的“当前操作”是指:触发本次区块链账本写入事件、上链请求生成事件的操作,所述当前操作可以为前述转发操作或上传操作。

本文中出现的“前一次操作”是指:历史上对当前操作所针对的数字内容进行的最近一次操作。所述前一次操作是发生在所述当前操作之前的时间上最接近的操作,所述前一次操作与当前操作之间无其他操作。

在一个实施例中,所述前一次操作可以是时间上距今针对所述数字内容进行的最后一次操作。例如,当前操作可以是对数字内容v2.0的转发操作,前一次操作可以是对数字内容v1.0的修改后转发操作,所述修改后转发操作生成的版本内容为数字内容v2.0。

在另一个实施例中,所述前一次操作可以与数字内容的版本内容相关联,也即,所述前一次操作可以指历史上对当前操作生成的版本内容进行的最后一次操作。例如,当前操作和前一次操作均是对数字内容v1.0的转发操作。

进一步地,在本实施例中,对数字内容v1.0的修改后转发操作可以视为一个独立的发布操作,其前一次操作的用户、操作时间、操作生成的版本内容和所述操作标识均可以为空。

本文中出现的“用户的密钥”是指:供所述用户对其在数字内容平台中传播的数字内容进行密码学应用的参数。所述密钥和配对的证书可以是由所述数字内容平台分配给所述用户的。

例如,所述数字内容平台可以使用分配给所述用户的密钥对所述用户执行的操作的版本信息进行签名,以在将来证明所述数字内容是由所述用户操作后得到并传播的。

本文中出现的“数字内容平台的密钥”是指:供所述数字内容平台对其向区块链节点发送的信息进行密码学应用的参数。所述密钥和配对的证书可以是由所述数字内容平台自己生成的。

例如,所述数字内容平台可以预先将自身的证书发送至所述区块链节点,在实际应用中,所述数字内容平台可以使用自身的密钥对所述上链请求进行签名,并将自身的证书也附加所述上链请求中一并发送至所述区块链节点。

响应于接收到所述上链请求,所述区块链节点可以从所述上链请求中提取所述数字内容平台的证书和签名,通过所述数字内容平台的证书验证所述签名是否正确,同时比较接收到的上链请求中的证书和数字内容平台预先发送到区块链节点的证书是否一致,以判断所述上链请求是否是由所述数字内容平台签名的。

本文中出现的“上链指示”是指:指示数字内容平台将针对数字内容的当前操作记录至区块链账本的指示信息。

具体地,所述上链指示可以由用户通过用户端发起,所述用户端与所述数字内容平台相通信。换言之,所述用户端可以是所述数字内容平台面向所述用户的接口。例如,所述用户端可以为手机、ipad、计算机等终端设备。

在一个典型的应用场景中,所述用户端可以视作数字内容的操作方,通过所述数字内容平台提供的功能,用户可以将自己创建的数字内容发布至所述数字内容平台,或转发所述数字内容平台上的数字内容。在发布和转发数字内容时,数字内容平台可以提供是否同步本次操作至区块链账本的选项。用户可以选择同步本次操作至所述区块链账本,从而触发所述上链指示。由此,可以追踪所述数字内容在所述数字内容平台的后续操作,也可以实现反向溯源。

本文中出现的“溯源请求”是指:请求从区块链账本中查找记录有针对数字内容的初始操作的区块的信息。

具体地,所述溯源请求可以包含针对所述数字内容的第一操作的第一操作标识。其中,所述第一操作可以是查询方(如数字内容平台)已知的某一次操作,所述第一操作可以作为溯源过程的起点,所述区块链节点根据所述第一操作的第一操作标识查询区块链账本,从中得到在所述第一操作之前的,针对所述数字内容的历史操作的操作信息。

例如,用户a在数字内容平台转发的数字内容b被证实为虚假消息,则所述数字内容平台需要溯源得到在所述用户a之前对所述数字内容b进行转发的用户,以及初始将所述数字内容b上传至所述数字内容平台的用户的信息。采用本实施例的方案,所述用户a针对所述数字内容b的转发操作即为所述第一操作,对应的会有一个第一操作标识,所述数字内容平台根据所述第一操作标识请求区块链节点进行查找,以得到在所述用户a之前对所述数字内容b的操作的操作信息。

在一个实施例中,由于在数字内容的记录阶段是将针对所述数字内容的前后两次操作同时写入所述区块链账本的,因而,在数字内容的溯源阶段,根据针对所述数字内容的第一操作的第一操作标识,能够从所述区块链账本中查询得到与所述第一操作标识一同写入的前一次操作的操作标识。如此重复执行查找动作逐级向前追溯,直至查找到针对所述数字内容的第一次操作的操作标识,或直至查找到满足预设条件的区块。

进一步地,由于所述区块链账本中记录有针对所述数字内容的第一次操作的操作信息,利于数字内容平台实现对虚假信息的溯源。

本文中出现的“预设条件”是指:预先设置的溯源操作的终止条件,也即,前述重复执行查找动作的结束时机。

在一个实施例中,所述预设条件可以包括:根据所述操作标识查找针对所述操作标识关联的数字内容的前一次操作的操作标识的重复执行次数达到预设阈值。

进一步地,所述预设阈值可以由所述数字内容平台通过所述溯源请求指示。例如,所述预设阈值可以是无限大或默认值,以指示区块链节点向前溯源至最初的操作的操作信息。

在另一个实施例中,所述预设条件可以包括:记录有所述第一操作标识关联的版本信息的所有操作的操作信息。

在一个典型的应用场景中,假设用户a于十点在所述数字内容平台上发布数字内容v1.0,针对用户a本次发布数字内容v1.0的行为可以生成操作标识1;用户b于十一点转发用户a发布的数字内容v1.0,针对用户b本次转发操作数字内容v1.0的行为可以生成操作标识2;用户c于十二点对用户b转发的数字内容v1.0修改并转发,本次修改后转发的记为数字内容v2.0,针对用户c本次修改后转发数字内容v2.0的行为可以生成操作标识3;用户d于一点转发用户c修改后转发的数字内容v2.0,针对用户d本次转发数字内容v2.0的行为可以生成操作标识4。其中,操作标识1和操作标识2同时写入区块链账本,操作标识2和操作标识3同时写入区块链账本,操作标识3和操作标识4同时写入区块链账本。

当用户d于一点转发的数字内容v2.0被判定为虚假消息时,采用本实施例的方案,能够确定用户d于一点转发数字内容v2.0的行为关联操作标识4,根据操作标识4追溯至操作标识3,从而在数字内容平台中找到数字内容v2.0的传播源头用户c。

进一步地,还可以根据操作标识3追溯至操作标识2、操作标识1,从而在数字内容平台中找到数字内容v2.0的演变基础数字内容v1.0的传播源头用户a。

在另一个典型的应用场景中,所述区块链节点可以接收来自多个数字内容平台的上链请求,在所述多个数字内容平台上针对数字内容的操作记录于同一区块链账本中。此时,前述上传操作可以指用户在所述多个数字内容平台中任一数字内容平台的上传操作,前述转发操作可以包括在所述多个数字内容平台之间的转发操作。由此,采用本发明实施例的方案,能够实现在多个数字内容平台之间的溯源。

本文中出现的“业务”包括为了达成特定的目的或实现特定的功能而进行的一系列(即一个或多个,通常为多个)事务的集合。例如,为了达成数字内容溯源目的而进行的数字内容溯源业务可以包括数字内容记录事务、数字内容追溯事务等一系列事务。

应当理解,给出这些示例性实施例仅是为了使本领域技术人员能够更好地理解进而实现本公开的实施例,而并非以任何方式限制发明的范围。

本发明实施例的区块链技术方案可以应用于不同的领域中,在本实施例中,以数字内容溯源业务为例进行说明。

图1是本发明实施例的一种用于区块链网络的数字内容溯源方法的流程图。其中,所述区块链网络可以由多个可通信的区块链节点构成,本实施例的方案可以由所述区块链节点执行。

具体地,在本实施例中,所述数字内容溯源方法可以包括:

在101处,执行步骤a,接收溯源请求,所述溯源请求包括针对所述数字内容的第一操作的第一操作标识;

在102处,执行步骤b,在所述区块链网络的区块链账本中查询在所述第一操作之前的针对所述数字内容的操作的操作信息,其中,所述操作信息包括执行所述操作的用户的信息;

在103处,执行步骤c,返回所述操作信息。

更为具体地,所述溯源请求可以接收自数字内容平台,所述数字内容平台与所述区块链节点相通信。

在一个实施例中,所述溯源请求可以使用所述数字内容平台的密钥签名。由此,所述步骤a可以进一步包括:对所述溯源请求的签名进行验证,以确认所述溯源请求是由所述数字内容平台签名并发送的。

在一个实施例中,在所述步骤a之前,所述数字内容溯源方法还可以包括:步骤o,接收上链请求,所述上链请求包括针对所述数字内容的当前操作的操作信息和操作标识、以及针对所述数字内容的前一次操作的操作标识;步骤p,将所述当前操作的操作信息和操作标识、以及所述前一次操作的操作标识写入所述区块链账本中。

其中,所述上链请求也可以接收自数字内容平台,并使用所述数字内容平台的密钥签名。

在一个典型的应用场景中,所述溯源请求可以是在所述数字内容平台产生溯源需求时触发的,所述上链请求可以是所述数字内容每次在所述数字内容平台上被操作时触发的。

进一步地,所述上链请求可以使用执行所述当前操作的用户的密钥签名。由此,所述步骤o可以进一步包括:步骤o1.对所述上链请求的签名进行验证,以确认所述上链请求是由所述用户签名的。

进一步地,在所述步骤o之后,步骤p之前,本实施例所述数字内容溯源方法还可以包括:判断所述上链请求的签名指向的用户与所述上链请求息包含的执行所述当前操作的用户是否一致。由此,可以确保被记录至所述区块链账本的用户确实是执行当前操作的用户。

在一个变化例中,可以仅对所述操作信息中的操作版本使用所述当前操作的用户的密钥签名,以确保所述操作版本是由所述用户操作得到的。

在又一个实施例中,所述上链请求可以分别使用所述数字内容平台的密钥以及执行所述当前操作的用户的密钥签名,以达到双重身份验证的效果。

通过所述步骤o和步骤p,可以将前后两次针对数字内容的操作的操作信息和操作标识相关联的写入区块链账本,便于溯源时根据所述关联信息反向溯源得到针对所述数字内容的最初的操作的操作信息。

在一个实施例中,所述步骤p可以进一步包括:步骤p1,将所述附加信息(如所述上链请求的接收时间)写入所述区块链账本。由此,可以将更多的参考信息一并写入区块链账本,使得后续追溯时能够精确匹配。

在一个实施例中,参考图2,所述步骤b可以进一步包括:

在1021处,执行步骤b1,在所述区块链账本中查询与所述第一操作标识同时写入的所述第一操作的前一次操作的操作标识;

在1022处,执行步骤b2,根据查询到的所述前一次操作的操作标识继续查询同时写入的更之前的操作标识,直至查询到所述数字内容的最初的操作;

在1023处,执行步骤b3,确定所述最初的操作的操作信息。

在一个变化例中,所述步骤b2也可以被替换为:根据查询到的所述前一次操作的操作标识继续查询同时写入的更之前的操作标识,直至查询到符合所述预设条件的针对所述数字内容的操作。相应的,所述步骤b3可以被替换为:确定查询到的符合所述预设条件的操作的操作信息。

由上,采用本实施例的方案,能够对数字内容的传播实现有效溯源。具体地,所述区块链账本中记录有历史上针对数字内容的至少一次操作的操作信息,根据所述第一操作标识,能够在所述区块链账本中查询得到在所述第一操作之前针对所述数字内容的操作的操作信息,从而实现对数字内容的传播过程的反向追溯,使得对数字内容的历次操作结果都成为公开可追溯的信息。

本发明实施例还提供一种计算设备,包括处理器和存储器,所述存储器上存储有能够在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时可以执行以下步骤:a.接收溯源请求,所述溯源请求包括针对数字内容的第一操作的第一操作标识;b在区块链网络的区块链账本中查询在所述第一操作之前的针对所述数字内容的操作的操作信息,其中,所述操作信息包括执行所述操作的用户的信息;c返回所述操作信息。

在一个实施例中,在所述步骤a之前,所述处理器还可以执行以下步骤:o.接收上链请求,所述上链请求包括针对所述数字内容的当前操作的操作信息和操作标识、以及针对所述数字内容的前一次操作的操作标识;p.将所述当前操作的操作信息和操作标识、以及所述前一次操作的操作标识写入所述区块链账本中。

在一个实施例中,所述步骤p可以进一步包括:p1.将所述上链请求的接收时间写入所述区块链账本。

在一个实施例中,所述步骤b可以进一步包括:b1.在所述区块链账本中查询与所述第一操作标识同时写入的所述第一操作的前一次操作的操作标识;b2.根据查询到的所述前一次操作的操作标识继续查询同时写入的更之前的操作标识,直至查询到所述数字内容的最初的操作;b3.确定所述最初的操作的操作信息。

在一个实施例中,所述操作信息还可以包括执行所述操作的时间以及所述操作的版本信息。

在一个实施例中,所述操作可以包括上传操作和转发操作。

图3是本发明实施例的一种用于区块链网络的数字内容记录方法的流程图。本实施例的方案可以由所述数字内容平台执行。

具体地,在本实施例中,所述数字内容记录生成方法可以包括:

在301处,执行步骤a,确定针对所述数字内容的当前操作的操作信息,其中,所述操作信息包括执行所述当前操作的用户的信息;

在302处,执行步骤b,根据所述当前操作的操作信息生成针对所述数字内容的当前操作的操作标识;

在303处,执行步骤c,获取针对所述数字内容的前一次操作的操作标识;

在304处,执行步骤d,生成上链请求,所述上链请求包括针对所述数字内容的当前操作的操作信息和操作标识、以及针对所述数字内容的前一次操作的操作标识。

在一个实施例中,本实施例所述数字内容记录方法还可以包括:步骤e,向区块链节点发送所述上链请求。

进一步地,所述步骤e可以进一步包括:步骤e1,使用执行所述当前操作的用户的密钥对所述上链请求进行签名;步骤e2,向所述区块链节点发送签名后的所述上链请求。

进一步地,所述步骤e1可以被替换为:使用执行所述当前操作的用户的密钥以及所述数字内容平台的密钥对所述上链请求进行签名。

在一个实施例中,所述步骤b可以进一步包括:步骤b1,对所述当前操作的操作信息进行哈希计算,并将计算得到的哈希值作为所述当前操作的操作标识。

作为一个变化例,所述步骤b也可以进一步包括:随机生成所述操作标识,所述操作标识与所述数字内容平台历史上已经生成的所有操作标识均不重复。

在本实施例的一个变化例中,所述操作标识可以是由所述区块链节点生成的,也即,本实施例中数字内容平台生成的上链请求可以仅包含针对所述数字内容的当前操作的操作信息。

响应于接收到所述上链请求,所述区块链节点可以执行本实施例所述步骤b,以生成针对所述数字内容的当前操作的操作标识,还可以执行所述步骤c,以获取针对所述数字内容的前一次操作的操作标识,并将前述内容写入所述区块链账本。

在一个实施例中,所述上链请求可以是基于用户选择触发的。

例如,所述步骤a可以进一步包括:步骤a1,接收上链指示,所述上链指示包含执行所述当前操作的用户的信息以及所述当前操作所针对的所述数字内容;步骤a2,据所述上链指示确定针对所述数字内容的当前操作的操作信息。

由上,采用本实施例的方案,依托区块链技术将用户针对数字内容的操作写入区块链账本,实现对数字内容在网络中传播过程的有效记录。具体地,生成针对所述数字内容的当前操作的操作标识,确保后续能够基于操作标识唯一确定针对数字内容的操作的操作信息,使得针对数字内容的每一次操作均能找到对应的用户。进一步,基于针对数字内容的当前操作的操作标识和前一次操作的操作标识一并生成所述上链请求,能够得到针对数字内容的前后两次操作的关联关系,并将该关联关系写入区块链账本,利用区块链的反篡改功能确保该关联关系的真实性,从而通过区块链账本形成数字内容的追溯链条,使得对数字内容的每一次操作结果都成为公开可追溯的信息。

本发明实施例还提供一种计算设备,包括处理器和存储器,所述存储器上存储有能够在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时可以执行以下步骤:a.确定针对数字内容的当前操作的操作信息,其中,所述操作信息包括执行所述当前操作的用户的信息;b.根据所述当前操作的操作信息生成针对所述数字内容的当前操作的操作标识;c.获取针对所述数字内容的前一次操作的操作标识;d.生成上链请求,所述上链请求包括针对所述数字内容的当前操作的操作信息和操作标识、以及针对所述数字内容的前一次操作的操作标识。

在一个实施例中,所述步骤a可以进一步包括:a1.接收上链指示,所述上链指示包含执行所述当前操作的用户的信息以及所述当前操作所针对的所述数字内容;a2.根据所述上链指示确定针对所述数字内容的当前操作的操作信息。

在一个实施例中,所述处理器还可以执行以下步骤:e.向区块链节点发送所述上链请求。

在一个实施例中,所述步骤b可以进一步包括:b1.对所述当前操作的操作信息进行哈希计算,并将计算得到的哈希值作为所述当前操作的操作标识。

在一个实施例中,所述操作信息还可以包括执行所述操作的时间以及所述操作的版本信息。

在一个实施例中,所述操作可以包括上传操作和转发操作。

在一个典型的应用场景中,参考图4和图5,区块链网络(图未示)可以由多个区块链节点44构成,所述多个区块链节点44中的至少一部分区块链节点44用于构建数字内容追溯系统43。

具体地,在所述数字内容追溯系统43中,区块链节点44上安装有数字内容处理智能合约443,所述数字内容处理智能合约443是运行于所述区块链节点44的沙盒442中的。

进一步地,通过调用所述数字内容处理智能合约443,所述区块链节点44可以执行上述图1和图2所示实施例的方案。

进一步地,所述数字内容处理智能合约443是通过区块链节点44中的智能合约引擎441验证,并在验证通过后才能运行上述图1和图2所示实施例的方案。所述数字内容处理智能合约443的运行结果,也是通过所述智能合约引擎441写入所述区块链账本的。

在数字内容记录阶段,用户可以通过用户端41触发一上链指示,所述上链指示包含数字内容以及所述用户的信息。

响应于所述上链指示被触发,所述用户端41可以执行操作s1,以向所述数字内容平台42发送所述上链指示。

响应于接收到所述上链指示,所述数字内容平台42可以执行上述图3所示实施例的方案,以生成所述上链请求。

进一步地,所述数字内容平台42可以执行操作s2,以向所述区块链节点44发送所述上链请求。此时,所述上链请求的接收端可以是所述数字内容追溯系统43中的任一区块链节点44,如最早接收到所述上链请求的区块链节点44,或者,也可以是所述数字内容追溯系统43中的共识节点。

响应于接收到所述上链请求,所述区块链节点44可以执行写操作,以将针对所述数字内容的当前操作的操作信息和操作标识、以及针对所述数字内容的前一次操作的操作标识写入所述区块链账本中,从而完成对数字内容的单次操作的记录。

在数字内容溯源阶段,当需要对特定用户于特定时间针对数字内容操作得到的特定版本信息进行追溯时,所述数字内容平台42可以根据针对所述数字内容的特定操作(即图1所示实施例中的第一操作)的操作信息确定关联的操作标识(即图1所示实施例中的第一操作标识),并执行操作s3,以向所述区块链节点44发送包含有所述第一操作标识的溯源请求。

响应于接收到所述溯源请求,所述区块链节点44可以执行上述图1和图2所示实施例的方案,以在所述区块链网络的区块链账本中查询在所述第一操作之前的针对所述数字内容的操作的操作信息,并执行操作s4,以向所述数字内容平台42反馈溯源得到的所述操作信息。

在一个实施例中,所述数字内容追溯系统43可以是由所述数字内容平台42自己建立的,所述数字内容追溯系统43包括的多个区块链节点44中至少有一个区块链节点44是属于除所述数字内容平台42之外的参与方的,以起到监督作用。

在本实施中,所述区块链节点44无需验证数字内容平台42的身份,也即,所述数字内容平台42发送的上链请求和/或溯源请求可以不使用所述数字内容平台42的密钥签名。

在另一个实施例中,所述数字内容追溯系统43可以是属于公有链的,也即,多个数字内容平台42可以将用户在自身平台上对数字内容的操作记录于所述数字内容追溯系统43的同一区块链账本中。

在本实施例中,所述区块链节点44需要验证数字内容平台42的身份,也即,所述数字内容平台42发送的上链请求和/或溯源请求优选地使用所述数字内容平台42的密钥签名,以确保所述上链请求和/或溯源请求的真实性。

由上,采用本发明实施例的方案,利用区块链的能力,记录和追溯用户在数字内容平台上操作的数字内容,能够有效地追溯数字内容在网络上的传播。

进一步地,本发明实施例还公开一种存储介质,其上存储有计算机指令,所述计算机指令运行时执行上述图1至图3所示实施例中所述的方法技术方案。优选地,所述存储介质可以包括诸如非挥发性(non-volatile)存储器或者非瞬态(non-transitory)存储器等计算机可读存储介质。所述存储介质可以包括rom、ram、磁盘或光盘等。

虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

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