1.本发明涉及区块链技术领域,尤其涉及一种基于区块链的文件溯源验证方法、装置、电子设备及可读存储介质。
背景技术:2.自区块链之初就以其不可篡改的特性广泛应用于各种存证溯源系统,而对于文档,由于其较大的体积,难以对其进行结构化的追溯,当前的区块链系统只能通过简单文件对比或者hash对比判断文件是否被篡改。对于多人共同编辑的文档难以追踪到文档修改的路径与其对应的人员,而当文档被恶意篡改时也难以定位到是经由谁泄露出去的。
3.现有的区块链系统的身份认证也是一个难题,或者是通过一个前置系统对所有请求进行校验并转发请求到区块链系统,使得区块链系统变成了一个中心化的系统,不再具有区块链的去中心化的特性,或者是通过证书体系来确定用户身份而这对于大多有自己it系统的企业而言,需要改造自己的权限系统才能与区块链系统进行适配这意味着庞大的工作量与不确定的风险。
4.为了解决上述问题,本发明亟需提供一种新的基于区块链的文件溯源验证方法。
技术实现要素:5.本发明提供一种文件溯源验证方法、装置、电子设备及计算机可读存储介质,其主要目的在于通过智能合约和预言机系统使得区块链与外部网络进行交互,通过区块链保存认证服务的返回的信息,以确保文件的每次操作都是由对应组织的认证服务所授权。
6.为实现上述目的,本发明提供的文件溯源验证方法,应用于电子设备,所述方法包括:
7.构建至少两个参与组织的区块链联盟链;其中,每个参与组织均包括权限认证服务系统、区块链系统以及文件服务系统,所述区块链系统包括智能合约、预言机系统,每个参与组织通过所述智能合约注册所属的权限认证服务;
8.通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份标识进行验证;其中,每个待处理文件对应有所属的参与组织,每个访问者对应有身份标识;
9.验证通过后,通过所述预言机系统访问所述文件服务系统对所述待处理文件进行处理,从而获取所述待处理文件的相关信息。
10.可选地,每个参与组织还包括:区块链服务模块和星际文件存储系统,所述区块链系统还包括peer节点、order节点、其中,
11.所述区块链服务模块,用于在每个参与组织中各个模块或者节点之间进行数据交互;
12.所述peer节点,用于区块链文件的存储、智能合约的启动与调用、对各个参与组织的交易进行背书、与其他参与组织的peer节点的数据进行同步、以及从所述order节点拉取
区块文件;
13.所述order节点,用于收集各个参与组织的peer节点提交的交易,并将所述交易进行排序并打包成区块分发给各个peer节点;
14.所述星际文件存储系统,用于存储分割成多个片段的文件。
15.可选地,所述区块链服务模块包括两种服务类型,分别为读操作和写操作,其中,
16.在所述区块链服务模块进行读取操作时,
17.当所述区块链服务模块向所述peer节点发送读取请求时,通过所述peer节点验证所述区块链服务模块发送请求的相关证书信息;
18.验证通过后,通过所述peer节点将所述读取请求发送至所述智能合约;
19.通过所述智能合约读取所述peer节点上的账本信息,并根据所述智能合约预先编写的流程进行执行;
20.在所述区块链服务模块进行写操作时,
21.当所述区块链服务模块向所述peer节点发送写操作请求时,通过所述peer节点验证所述区块链服务模块发送请求的相关证书信息;
22.通过所述peer节点将所述写操作请求发送至所述智能合约;
23.通过所述智能合约进行模拟操作,并将本次请求的读写集返回反馈给所述peer节点;
24.通过所述peer节点收集读写信息,并将收集到的读写信息返回所述区块链服务模块;
25.通过所述区块链服务模块将收集到的读写信息发送至所述order节点;
26.通过所述order节点将所述读写信息打包成区块文件并分发给对应的peer节点;
27.通过所述peer节点拉取所述区块文件,并保存至所述peer节点的账本中;
28.通过所述peer节点将所述区块文件同步给其他的peer节点。
29.可选地,所述通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份标识进行验证,包括:
30.通过所述区块链服务模块向所述区块链系统发送请求;
31.通过所述智能合约验证所述请求中待处理文件所属的参与组织与所述参与组织预先注册的权限认证服务地址是否一致;
32.通过所述预言机系统访问对应的权限认证服务系统,验证所述访问者身份标识。
33.可选地,所述通过所述预言机系统访问所述文件服务系统对所述待处理文件进行处理,所述处理包括校验处理、下载处理和上传处理;
34.若对所述待处理文件进行校验处理,则根据待处理文件的特征码,获取待处理文件的原文件的相关信息,具体步骤包括:
35.通过所述文件服务系统对所述待处理文件进行解析,获取所述待处理文件的特征码;
36.通过所述特征码获取所述待处理文件的相关信息并返回给相对应的智能合约,所述相关信息包括所述待处理文件的原地址、文件摘要、版本的录入人员、录入时间、版本的下载人员、下载时间;
37.通过所述智能合约将所述相关信息反馈给所述访问者。
38.可选地,对所述待处理文件进行下载处理,则在所述待处理文件中加入新的特征码、下载人员的信息,并将下载地址返回给访问者,包括如下步骤:
39.在所述待处理文件中加入新特征码,并将加入新特征码的待处理文件上传至所述星际文件存储系统并将存储地址返回给相对应的智能合约;
40.通过所述智能合约将所述存储地址反馈给访问者。
41.可选地,对所述处理文件进行上传处理,判断所述待处理文件是否是首次上传文件,若否,将所述待处理文件的不同版本相互关联,并获取保存地址,若是,保存所述待处理文件并获取保存地址,具体步骤包括:
42.通过所述文件服务系统对上传后的所述待处理文件进行解析,根据解析结果判断是否是为首次上传文件;
43.若解析结果中存在特征码,则所述待处理文件不是首次上传文件;
44.根据解析获取的特征码,获取所述待处理文件之前的版本,将不同版本的待处理文件保存至所述星际文件存储系统,并将文件存储地址以及获取的特征码反馈给相对应的智能合约;
45.若解析结果中不存在特征码,则所述待处理文件是首次上传文件;
46.将所述待处理文件保存至所述星际文件存储系统,并获取文件存储地址;
47.将获取的文件存储地址反馈给相应的智能合约。
48.为了解决上述问题,本发明还提供一种文件溯源验证装置,所述装置包括:
49.区块链联盟链构建模块,用于构建至少两个参与组织的区块链联盟链;其中,每个参与组织包括权限认证服务系统、区块链系统以及文件服务系统,所述区块链系统包括智能合约、预言机系统,其中,每个参与组织通过所述智能合约注册所属的权限认证服务;
50.验证模块,用于通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份标识进行验证;其中,每个待处理文件对应有所属的参与组织,每个访问者对应有身份标识;
51.文件处理模块,用于验证通过后,通过所述预言机系统访问所述文件服务系统对所述待处理文件进行处理,从而获取所述待处理文件的相关信息。
52.为了解决上述问题,本发明还提供一种电子设备,所述电子设备包括:
53.至少一个处理器;以及,
54.与所述至少一个处理器通信连接的存储器;其中,
55.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的文件溯源验证方法的步骤。
56.为了解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器执行以实现上述所述的文件溯源验证方法。
57.本发明实施例通过构建至少两个参与组织的区块链联盟链;其中,每个参与组织包括权限认证服务系统、区块链系统以及文件服务系统;通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份标识进行验证;验证通过后,通过所述预言机系统访问所述文件服务系统对所述待处理文件进行处理,从而获取所述待处理文件的相关信息。本发明通过智能合约和预言机系统使得区块链与外部网络进行交互,通过区块链
保存认证服务的返回的信息,以确保文件的每次操作都是由对应组织的认证服务所授权。
附图说明
58.图1为本发明一实施例提供的文件溯源验证方法的流程示意图;
59.图2为本发明一实施例提供的文件溯源验证装置的模块示意图;
60.图3为本发明一实施例提供的实现文件溯源验证方法的电子设备的内部结构示意图。
61.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
62.在下面的描述中,许多具体的细节被阐述。然而,应当理解的是,本发明的实施例可以在没有这些具体细节的情况下实现。在其他实例中,众所周知的方法、结构、和技术没有被详细地示出,以免模糊对本说明书的理解。对“一个实施例”、“实施例”、“示例性实施例”、“各种实施例”等等的参考表示本发明所描述的该实施例可包括特定的特征、结构、或特性,但并不是每一个实施例都必须包括该特定特征、结构、或特性。此外,短语“在一个实施例中”的反复使用不一定是指同一个实施例,尽管有可能是。
63.如本文所使用的,除非另外指明,使用序数形容词“第一”、“第二”、“第三”等等来描述公共的物体仅表明类似物体的不同实例正被参考,并且不意图暗示如此描述的该物体必须依照给定的顺序,无论在时间上、空间上、顺序上还是任何其他的方式。
64.如本文所使用的,除非另外指明,术语“移动设备”和/或“设备”一般是指无线通信设备,并且更具体地指以下的一个或多个:便携式电子设备、电话(例如,蜂窝式电话、智能手机)、计算机(例如,膝上型电脑、平板电脑)、便携式媒体播放器、个人数字助理(pda)、或具有联网能力的任何其他电子设备。
65.对本技术实施例进行进一步详细说明之前,对本技术实施例中涉及的名词和术语进行说明,本技术实施例中涉及的名词和术语适用于如下的解释。
66.本发明提供一种基于区块链的文件溯源验证方法。参照图1所示,为本发明一实施例提供的文件溯源验证方法的流程示意图。该方法可以由一个装置执行,该装置可以由软件和/或硬件实现。
67.在本实施例中,文件溯源验证方法,包括:
68.s1:构建至少两个参与组织的区块链联盟链;其中,每个参与组织均包括权限认证服务系统、区块链系统以及文件服务系统,所述区块链系统包括智能合约、预言机系统,每个参与组织通过所述智能合约注册所属的权限认证服务;
69.s2:通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份标识进行验证,其中,每个待处理文件对应有所属的参与组织,每个访问者对应有身份标识;
70.s3:验证通过后,通过所述预言机系统访问所述文件服务系统对所述待处理文件进行处理,从而获取所述待处理文件的相关信息。
71.在步骤s1中,每个参与组织还包括:区块链服务模块和星际文件存储系统,所述区块链系统还包括peer节点、order节点、其中,
72.所述区块链服务模块,用于在每个参与组织中各个模块或者节点之间进行数据交互;
73.所述peer节点,用于区块链文件的存储、智能合约的启动与调用、对各个参与组织的交易进行背书、与其他参与组织的peer节点的数据进行同步、以及从所述order节点拉取区块文件;
74.所述order节点,用于收集各个参与组织的peer节点提交的交易,并将所述交易进行排序并打包成区块分发给各个peer节点;
75.所述星际文件存储系统,用于存储分割成多个片段的文件。
76.在本发明的实施例中,所述区块链服务模块包括两种服务类型,分别为读操作和写操作,在所述区块链服务模块进行读取操作时,
77.当所述区块链服务模块向所述peer节点发送读取请求时,通过所述peer节点验证所述区块链服务模块发送请求的相关证书信息;
78.验证通过后,通过所述peer节点将所述读取请求发送至所述智能合约;
79.通过所述智能合约读取所述peer节点上的账本信息,并根据所述智能合约预先编写的流程进行执行。
80.其中,在所述区块链服务模块进行写操作时,当所述区块链服务模块向所述peer节点发送写操作请求时,通过所述peer节点验证所述区块链服务模块发送请求的相关证书信息;
81.通过所述peer节点将所述写操作请求发送至所述智能合约;
82.通过所述智能合约进行模拟操作,并将本次请求的读写集返回反馈给所述peer节点;
83.通过所述peer节点收集读写信息,并将收集到的读写信息返回所述区块链服务模块;
84.通过所述区块链服务模块将收集到的读写信息发送至所述order节点;
85.通过所述order节点将所述读写信息打包成区块文件并分发给对应的peer节点;
86.通过所述peer节点拉取所述区块文件,并保存至所述peer节点的账本中;
87.通过所述peer节点将所述区块文件同步给其他的peer节点。
88.在本发明的实施例中,在区块链联盟链中,参与的维度是组织,每个参与组织是平行的关系,如果在一个网络中有多个组织加入那么各个参与组织相互之间可以进行数据共享。
89.其中,每一个参与组织需要只少有一个peer节点。peer节点是在区块链网络中必须隶属于某一组织,它在网络中负责区块链文件的存储、智能合约的启动与调用、对交易进行背书、与其他peer节点的数据同步功能、从order节点拉取区块文件。
90.order节点是用来收集各个参与组织的peer节点提交的交易,并将其进行排序然后打包成区块然后分发给peer节点。区块链服务提供了与区块链参与组织内部的交互相关功能。智能合约的作用是实现文件溯源的相关逻辑,通过预言机访问文件服务系统及权限认证服务。预言机系统使得区块链网络可以读取到区块链系统以外的数据。
91.权限认证服务的作用是提供权限认证功能,一般情况下每个参与组织都有自己的权限认证服务,这个服务会依赖于组织自身的数据,例如公司自己的员工管理系统。在本系
统中是通过智能合约对接参与组织原有的权限系统,在对文件进行操作时需首先完成对身份的校验。
92.文件服务系统作用是对文件进行处理,在文档下载时生成文件的特征码并写入文件,在文件校验及二次上传时能够解析到当前文件中的特征码以供智能合约进行使用。
93.星际文件存储系统是一套去中心化的分片存储技术,把文件分割成多个片段存储在系统的各个节点上。
94.组织是参与区块链的基本单元,一个区块链网络可以由多个组织组成,这里的组织表示,任意一个想要提供文件溯源认证服务的组织。
95.在步骤s2中,所述通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份标识进行验证,包括如下步骤:
96.s21:通过所述区块链服务模块向所述区块链系统发送请求;
97.s22:通过所述智能合约验证所述请求中待处理文件所属的参与组织与所述参与组织预先注册的权限认证服务地址是否一致;
98.s22:通过所述预言机系统访问对应的权限认证服务系统,验证所述访问者身份标识。
99.在本发明的实施例中,参与组件首先需要通过智能合约注册自己的权限认证服务。例如组织a想要使用文件溯源进行文件的相关分享,那么它需要实现自己的权限认证服务,然后在智能合约中把这个服务注册进来,当它想要把某个文件的权限赋予其他组织(例如组织b或者本组织的某人时),只需要保证自己的认证服务可以通过即可,每份文件在上传过程中必须标明自己的所属组织,属于哪个组织就由哪个组织的认证服务进行认证。
100.其中,用户(访问者)依据文件所属组织通过权限认证服务获取相应的权限凭证。每份文件都有自己的所属组织,属于哪个组织就由哪个组织的认证服务进行认证。用户通过所属的区块链服务将文件、文件所属足足、身份标识发送至区块链系统,区块链系统根据注册的组织信息通过预言机系统访问对应的权限系统进行身份验证。
101.在步骤3中,在对所述待处理文件进行校验处理时,通过所述文件服务系统对所述待处理文件进行解析,获取所述待处理文件的特征码;
102.通过所述特征码获取所述待处理文件的相关信息并返回给相对应的智能合约,所述相关信息包括所述待处理文件的原地址、文件摘要、版本的录入人员、录入时间、版本的下载人员、下载时间;
103.通过所述智能合约将所述相关信息反馈给所述访问者。
104.其中,在对所述待处理文件进行下载处理时,在所述待处理文件中加入新特征码,并将加入新特征码的待处理文件上传至所述星际文件存储系统并将存储地址返回给相对应的智能合约;
105.通过所述智能合约将所述存储地址反馈给访问者。
106.其中,在对所述处理文件进行上传处理时,通过所述文件服务系统对上传后的所述待处理文件进行解析,根据解析结果判断是否是为首次上传文件;
107.若解析结果中存在特征码,则所述待处理文件不是首次上传文件;
108.根据解析获取的特征码,获取所述待处理文件之前的版本,将不同版本的待处理文件保存至所述星际文件存储系统,并将文件存储地址以及获取的特征码反馈给相对应的
智能合约;
109.若解析结果中不存在特征码,则所述待处理文件是首次上传文件;
110.将所述待处理文件保存至所述星际文件存储系统,并获取文件存储地址;
111.将获取的文件存储地址反馈给相应的智能合约。
112.具体地,在本发明的实施例中,验证通过后,智能合约通过预言机访问文件服务系统:其中,若请求类型为校验,则返回文件特征码及除去特征码之后的文件摘要。其中,特征码是文件服务系统根据文件生产的一组唯一标识,在文件上传完成之后,在下载的时候会生成特征码并将其隐藏在文件中,在之后的校验、再次上传的过程中,文件服务系统可以解析到文件的中的特征码,依据特征码可以在区块链网络中定位到相关信息。若请求类型为下载,则在文件中加入新的特征码,将文件上传至星际文件存储系统并将新文件地址返回。若请求类型为上传则解析文件原有特征码。
113.并且,智能合约基于文件服务系统解析的结果进行处理,包括三种情况:
114.第一种:若请求类型为校验,则根据特征码在区块链网络中定位到原文件的文件摘要、此版本下录入人员、录入时间的相关信息、此文件的下载人员、下载时间等相关信息,通过对文件摘要进行对比判断文件是否发生篡改。
115.每个文件记录中包含认证服务返回的身份信息,文件摘要,文件在星际文件系统中的位置,时间信息,所属组织以及文件下载时对应的特征码。
116.第二种:若请求类型为下载则在区块链系统中保存文件特征码,下载人相关信息。也就是说,每个下载记录中包含认证服务返回的身份信息,文件摘要,文件在星际文件系统中的位置,时间信息,所属组织以及文件的特征码。
117.第三种:若请求类型为上传文件,如果其中有特征码则根据其中特征码定位到他之前的版本把两份文件进行关联并保存相关信息,如果没有则认为它是首次上传保存相关信息。也就是说,每个文件版本都可以对应到它是基于那个版本以及哪次下载记录所进行的修改。
118.本发明提供的基于区块链的文件溯源验证方法,通过智能合约和预言机系统使得区块链与外部网络进行交互,所有区块链上的组织可以自有实现自己的权限系统,不必把权限相关内容放在区块链上,使得对接更加方便,给与使用者更大的灵活性;在保证灵活性的同时,区块链也保存了认证服务的返回的信息,确保文件的每次操作都是由对应组织的认证服务所授权。使得文件的分享更加可控,隶属于自己组织的文件访问权限完全由组织自己掌控。当文件被篡改时,系统不仅能发现文件是否被修改,还能定位到这份文件当时是谁在什么时间下载的。详细记录了文件的编辑过程,能向有权限的人展示多人合作下文件编辑的全过程。
119.本发明实施例通过构建至少两个参与组织的区块链联盟链;其中,每个参与组织包括权限认证服务系统、区块链系统以及文件服务系统;通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份标识进行验证;验证通过后,通过所述预言机系统访问所述文件服务系统对所述待处理文件进行处理,所述处理包括校验处理、下载处理和上传处理。本发明通过智能合约和预言机系统使得区块链与外部网络进行交互,通过区块链保存认证服务的返回的信息,以确保文件的每次操作都是由对应组织的认证服务所授权。
120.如图2所示,是本发明文件溯源验证装置的功能模块图。本发明所述文件溯源验证装置100可以安装于电子设备中。根据实现的功能,所述基于区块链的文件溯源验证装置100可以包括:区块链联盟链构建模块101、验证模块102、文件处理模块103。本发明所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
121.在本实施例中,关于各模块/单元的功能如下:
122.区块链联盟链构建模块101,用于构建至少两个参与组织的区块链联盟链;其中,每个参与组织均包括权限认证服务系统、区块链系统以及文件服务系统,所述区块链系统包括智能合约、预言机系统,其中,每个参与组织通过所述智能合约注册所属的权限认证服务;
123.验证模块102,用于通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份标识进行验证;其中,每个待处理文件对应有所属的参与组织,每个访问者对应有身份标识;
124.文件处理模块103,用于验证通过后,通过所述预言机系统访问所述文件服务系统对所述待处理文件进行处理,从而获取所述待处理文件的相关信息。
125.本发明实施例通过构建至少两个参与组织的区块链联盟链;其中,每个参与组织包括权限认证服务系统、区块链系统以及文件服务系统;通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份标识进行验证;验证通过后,通过所述预言机系统访问所述文件服务系统对所述待处理文件进行处理,所述处理包括校验处理、下载处理和上传处理;其中,若对所述待处理文件进行校验处理,则根据待处理文件的特征码,获取待处理文件的原文件的相关信息;若对所述待处理文件进行下载处理,则在所述待处理文件中加入新的特征码、下载人员的信息,并将下载地址返回给访问者;若对所述处理文件进行上传处理,判断所述待处理文件是否是首次上传文件,若否,将所述待处理文件的不同版本相互关联,并获取保存地址,若是,保存所述待处理文件并获取保存地址。本发明通过智能合约和预言机系统使得区块链与外部网络进行交互,通过区块链保存认证服务的返回的信息,以确保文件的每次操作都是由对应组织的认证服务所授权。
126.如图3所示,是本发明实现语义识别方法的电子设备的结构示意图。
127.所述电子设备1可以包括处理器10、存储器11和总线,还可以包括存储在所述存储器11中并可在所述处理器10上运行的计算机程序,如文件溯源验证程序12。
128.其中,所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:sd或dx存储器等)、磁性存储器、磁盘、光盘等。所述存储器11在一些实施例中可以是电子设备1的内部存储单元,例如该电子设备1的移动硬盘。所述存储器11在另一些实施例中也可以是电子设备1的外部存储设备,例如电子设备1上配备的插接式移动硬盘、智能存储卡(smart media card,smc)、安全数字(secure digital,sd)卡、闪存卡(flash card)等。进一步地,所述存储器11还可以既包括电子设备1的内部存储单元也包括外部存储设备。所述存储器11不仅可以用于存储安装于电子设备1的应用软件及各类数据,例如数据稽核程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。存储器可以存储内容,该内容可由电子设备显示或被发送到其他设备(例如,耳机)以由其他设备来显示或播放。存储器还可以存储从其他设备接收的内容。该来
自其他设备的内容可由电子设备显示、播放、或使用,以执行任何必要的可由电子设备和/或无线接入点中的计算机处理器或其他组件实现的任务或操作。
129.所述处理器10在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(central processing unit,cpu)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器10是所述电子设备的控制核心(control unit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器11内的程序或者模块(例如数据稽核程序等),以及调用存储在所述存储器11内的数据,以执行电子设备1的各种功能和处理数据。电子还可包括芯片组(未示出),其用于控制一个或多个处理器与用户设备的其他组件中的一个或多个之间的通信。在特定的实施例中,电子设备可基于架构或架构,并且处理器和芯片集可来自处理器和芯片集家族。该一个或多个处理器104还可包括一个或多个专用集成电路(asic)或专用标准产品(assp),其用于处理特定的数据处理功能或任务。
130.总线可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述总线被设置为实现所述存储器11以及至少一个处理器10等之间的连接通信。
131.此外,网络和i/o接口可包括一个或多个通信接口或网络接口设备,以提供经由网络(未示出)在电子设备和其他设备(例如,网络服务器)之间的数据传输。通信接口可包括但不限于:人体区域网络(ban)、个人区域网络(pan)、有线局域网(lan)、无线局域网(wlan)、无线广域网(wwan)、等等。用户设备102可以经由有线连接耦合到网络。然而,无线系统接口可包括硬件或软件以广播和接收消息,其使用wi-fi直连标准和/或ieee 802.11无线标准、蓝牙标准、蓝牙低耗能标准、wi-gig标准、和/或任何其他无线标准和/或它们的组合。
132.无线系统可包括发射器和接收器或能够在由ieee 802.11无线标准所支配的操作频率的广泛范围内操作的收发器。通信接口可以利用声波、射频、光学、或其他信号来在电子设备与其他设备(诸如接入点、主机、服务器、路由器、读取设备、和类似物)之间交换数据。网络可包括但不限于:因特网、专用网络、虚拟专用网络、无线广域网、局域网、城域网、电话网络、等等。
133.显示器可包括但不限于液晶显示器、发光二极管显示器、或由在美国马萨诸塞州剑桥城的e ink公司(e ink corp.of cambridge,massachusetts)所制造的e-inktm显示器。该显示器可用于将内容以文本、图像、或视频的形式显示给用户。在特定的实例中,该显示器还可以作为触控屏显示器操作,其可以使得用户能够藉由使用某些手指或手势来触摸屏幕以启动命令或操作。
134.图3仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图3示出的结构并不构成对所述电子设备3的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
135.例如,尽管未示出,所述电子设备1还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器10逻辑相连,从而通过电
源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备1还可以包括多种传感器、蓝牙模块、wi-fi模块等,在此不再赘述。
136.进一步地,所述电子设备1还可以包括网络接口,可选地,所述网络接口可以包括有线接口和/或无线接口(如wi-fi接口、蓝牙接口等),通常用于在该电子设备1与其他电子设备之间建立通信连接。
137.可选地,该电子设备1还可以包括用户接口,用户接口可以是显示器(display)、输入单元(比如键盘(keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是led显示器、液晶显示器、触控式液晶显示器以及oled(organic light-emitting diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备1中处理的信息以及用于显示可视化的用户界面。
138.应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
139.所述电子设备1中的所述存储器11存储的文件溯源验证程序12是多个指令的组合,在所述处理器10中运行时,可以实现:
140.构建至少两个参与组织的区块链联盟链;其中,每个参与组织均包括权限认证服务系统、区块链系统以及文件服务系统,所述区块链系统包括智能合约、预言机系统,每个参与组织通过所述智能合约注册所属的权限认证服务;
141.通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份标识进行验证;其中,每个待处理文件对应有所属的参与组织,每个访问者对应有身份标识;
142.验证通过后,通过所述预言机系统访问所述文件服务系统对所述待处理文件进行处理,从而获取所述待处理文件的相关信息。
143.具体地,所述处理器10对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。需要强调的是,为进一步保证上述每组待处理语义单元的相似度语义处理结果的私密和安全性,上述每组待处理语义单元的相似度语义处理还可以存储于一区块链的节点中。
144.进一步地,所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)。
145.在本发明的实施例中,计算机可读存储介质,所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器执行以实现上述所述的文件溯源验证方法的步骤,具体方法如下:
146.构建至少两个参与组织的区块链联盟链;其中,每个参与组织均包括权限认证服务系统、区块链系统以及文件服务系统,所述区块链系统包括智能合约、预言机系统,每个参与组织通过所述智能合约注册所属的权限认证服务;
147.通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份
标识进行验证;其中,每个待处理文件对应有所属的参与组织,每个访问者对应有身份标识;
148.验证通过后,通过所述预言机系统访问所述文件服务系统对所述待处理文件进行处理,从而获取所述待处理文件的相关信息。
149.在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
150.所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
151.另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
152.以上参考根据本发明的示例性实施例的系统和方法和/或计算机程序产品的框图和流程图描述了本发明的某些实施例。应当理解的是,框图和流程图中的一个或多个方框、以及在框图和流程图中的方框的组合,可以分别由计算机可执行程序指令实现。同样地,根据本发明的一些实施例,框图和流程图中的一些方框可以不必按照所呈现的顺序执行,或者甚至可以完全不需要执行。
153.这些计算机可执行程序指令可以被加载到通用计算机、专用计算机、处理器、或其他可编程数据处理装置上以产生特定机器,使得在计算机、处理器、或其他可编程数据处理装置上执行的指令创建用于实现在流程图方框或多个方框中所指定的一个或多个功能的构件。这些计算机程序产品还可以存储在计算机可读存储器中,其可以指导计算机或其他可编程数据处理装置以特定的方式运行,使得存储在计算机可读存储器中的指令产生制品,该制品包括实现在流程图的方框或多个方框中指定的一个或多个功能的指令构件。例如,本发明的实施例可提供计算机程序产品,其包括其中包含有计算机可读程序代码或程序指令的计算机可用介质,所述计算机可读程序代码适于被执行以实现在流程图方框或多个方框中指定的一个或多个功能。计算机程序指令还可以被加载到计算机或其他可编程数据处理装置上,以致使一系列操作元素或步骤在计算机或其他可编程装置上执行易产生计算机实现的程序,使得在计算机或其他可编程装置上执行的指令提供用于实现在流程图方框或多个方框中指定的功能的元素或步骤。
154.相应地,框图或流程图中的方框支持用以执行指定功能的构件的组合、用于执行指定功能的元素或步骤与用于执行指定功能的程序指令构件的组合。还应当理解的是,框图和流程图中的每个方框以及框图和流程图中的方框的组合可由执行指定功能、元素或步骤的专用的基于硬件的计算机系统实现,或由专用硬件或计算机指令的组合实现。
155.本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品
服务层以及应用服务层等。
156.对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
157.因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
158.虽然本发明的某些实施例已经结合目前被认为是最实用的且各式各样的实施例进行了描述,但应当理解,本发明并不限于所公开的实施例,而是意在覆盖包含在所附权利要求书的范围之内的各种修改和等价布置。虽然本文采用了特定的术语,但它们仅以一般性和描述性的意义使用,而不是用于限制的目的。
159.最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
技术特征:1.一种文件溯源验证方法,应用于电子设备,其特征在于,所述方法包括:构建至少两个参与组织的区块链联盟链;其中,每个参与组织均包括权限认证服务系统、区块链系统以及文件服务系统,所述区块链系统包括智能合约、预言机系统,每个参与组织通过所述智能合约注册所属的权限认证服务;通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份标识进行验证;其中,每个待处理文件对应有所属的参与组织,每个访问者对应有身份标识;验证通过后,通过所述预言机系统访问所述文件服务系统对所述待处理文件进行处理,从而获取所述待处理文件的相关信息。2.如权利要求1所述的文件溯源验证方法,其特征在于,每个参与组织还包括:区块链服务模块和星际文件存储系统,所述区块链系统还包括peer节点、order节点、其中,所述区块链服务模块,用于在每个参与组织中各个模块或者节点之间进行数据交互;所述peer节点,用于区块链文件的存储、智能合约的启动与调用、对各个参与组织的交易进行背书、与其他参与组织的peer节点的数据进行同步、以及从所述order节点拉取区块文件;所述order节点,用于收集各个参与组织的peer节点提交的交易,并将所述交易进行排序并打包成区块分发给各个peer节点;所述星际文件存储系统,用于存储分割成多个片段的文件。3.如权利要求1所述的文件溯源验证方法,其特征在于,所述区块链服务模块包括两种服务类型,分别为读操作和写操作,其中,在所述区块链服务模块进行读取操作时,当所述区块链服务模块向所述peer节点发送读取请求时,通过所述peer节点验证所述区块链服务模块发送请求的相关证书信息;验证通过后,通过所述peer节点将所述读取请求发送至所述智能合约;通过所述智能合约读取所述peer节点上的账本信息,并根据所述智能合约预先编写的流程进行执行;在所述区块链服务模块进行写操作时,当所述区块链服务模块向所述peer节点发送写操作请求时,通过所述peer节点验证所述区块链服务模块发送请求的相关证书信息;通过所述peer节点将所述写操作请求发送至所述智能合约;通过所述智能合约进行模拟操作,并将本次请求的读写集返回反馈给所述peer节点;通过所述peer节点收集读写信息,并将收集到的读写信息返回所述区块链服务模块;通过所述区块链服务模块将收集到的读写信息发送至所述order节点;通过所述order节点将所述读写信息打包成区块文件并分发给对应的peer节点;通过所述peer节点拉取所述区块文件,并保存至所述peer节点的账本中;通过所述peer节点将所述区块文件同步给其他的peer节点。4.如权利要求1所述的文件溯源验证方法,其特征在于,所述通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份标识进行验证,包括:通过所述区块链服务模块向所述区块链系统发送请求;通过所述智能合约验证所述请求中待处理文件所属的参与组织与所述参与组织预先
注册的权限认证服务地址是否一致;通过所述预言机系统访问对应的权限认证服务系统,验证所述访问者身份标识。5.如权利要求1所述的文件溯源验证方法,其特征在于,所述通过所述预言机系统访问所述文件服务系统对所述待处理文件进行处理,所述处理包括校验处理、下载处理和上传处理;若对所述待处理文件进行校验处理,则根据待处理文件的特征码,获取待处理文件的原文件的相关信息,具体步骤包括:通过所述文件服务系统对所述待处理文件进行解析,获取所述待处理文件的特征码;通过所述特征码获取所述待处理文件的相关信息并返回给相对应的智能合约,所述相关信息包括所述待处理文件的原地址、文件摘要、版本的录入人员、录入时间、版本的下载人员、下载时间;通过所述智能合约将所述相关信息反馈给所述访问者。6.如权利要求5所述的文件溯源验证方法,其特征在于,对所述待处理文件进行下载处理,则在所述待处理文件中加入新的特征码、下载人员的信息,并将下载地址返回给访问者,包括如下步骤:在所述待处理文件中加入新特征码,并将加入新特征码的待处理文件上传至所述星际文件存储系统并将存储地址返回给相对应的智能合约;通过所述智能合约将所述存储地址反馈给访问者。7.如权利要求5所述的文件溯源验证方法,其特征在于,对所述处理文件进行上传处理,判断所述待处理文件是否是首次上传文件,若否,将所述待处理文件的不同版本相互关联,并获取保存地址,若是,保存所述待处理文件并获取保存地址,具体步骤包括:通过所述文件服务系统对上传后的所述待处理文件进行解析,根据解析结果判断是否是为首次上传文件;若解析结果中存在特征码,则所述待处理文件不是首次上传文件;根据解析获取的特征码,获取所述待处理文件之前的版本,将不同版本的待处理文件保存至所述星际文件存储系统,并将文件存储地址以及获取的特征码反馈给相对应的智能合约;若解析结果中不存在特征码,则所述待处理文件是首次上传文件;将所述待处理文件保存至所述星际文件存储系统,并获取文件存储地址;将获取的文件存储地址反馈给相应的智能合约。8.一种文件溯源验证装置,其特征在于,所述装置包括:区块链联盟链构建模块,用于构建至少两个参与组织的区块链联盟链;其中,每个参与组织包括权限认证服务系统、区块链系统以及文件服务系统,所述区块链系统包括智能合约、预言机系统,其中,每个参与组织通过所述智能合约注册所属的权限认证服务;验证模块,用于通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份标识进行验证;其中,每个待处理文件对应有所属的参与组织,每个访问者对应有身份标识;文件处理模块,用于验证通过后,通过所述预言机系统访问所述文件服务系统对所述待处理文件进行处理,从而获取所述待处理文件的相关信息。
9.一种电子设备,其特征在于,所述电子设备包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至7中任一所述的文件溯源验证方法的步骤。10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一所述的文件溯源验证方法。
技术总结本发明涉及区块链技术领域,提供一种文件溯源验证方法、装置、电子设备及计算机可读存储介质,其中方法包括:构建至少两个参与组织的区块链联盟链,每个参与组织均包括权限认证服务系统、区块链系统以及文件服务系统;通过所述区块链系统对待处理文件、待处理文件所属的参与组织以及访问者身份标识进行验证;验证通过后,通过所述预言机系统访问所述文件服务系统对所述待处理文件进行处理,从而获取所述待处理文件的相关信息。本发明主要目的在于通过智能合约和预言机系统使得区块链与外部网络进行交互,通过区块链保存认证服务的返回的信息,以确保文件的每次操作都是由对应组织的认证服务所授权。认证服务所授权。认证服务所授权。
技术研发人员:张旭
受保护的技术使用者:深圳壹账通智能科技有限公司
技术研发日:2022.07.21
技术公布日:2022/11/1