一种基于区块链和IPFS的资源共享方法、设备及介质与流程

文档序号:30071808发布日期:2022-05-18 02:15阅读:125来源:国知局
一种基于区块链和IPFS的资源共享方法、设备及介质与流程
一种基于区块链和ipfs的资源共享方法、设备及介质
技术领域
1.本说明书涉及区块链技术领域,尤其涉及一种基于区块链和ipfs的资源共享方法、设备及介质。


背景技术:

2.随着网络共享时代的到来,为了提供学习效率,越来越多的社会群体会将资源,如学习资料共享到网络,以便于内部人员或外部人员学习使用。
3.当人们将自己的资源进行共享时,属于同一社会群体的用户可能会存在重复的共享内容,这就导致重复的共享资源上传至共享系统中,使得共享系统中产生大量的重复数据,增加了存储成本,也不利于用户对内容的检索。


技术实现要素:

4.本说明书一个或多个实施例提供了一种基于区块链和ipfs的资源共享方法、设备及介质,用于解决如下技术问题:用户进行资源共享时会有重复的共享数据,使得共享系统中产生大量的重复数据,增加了存储成本。
5.本说明书一个或多个实施例采用下述技术方案:
6.本说明书一个或多个实施例提供一种基于区块链和ipfs的资源共享方法,方法包括:获取待共享的资料数据,并确定所述待共享的资料数据的类型;在所述资料共享系统中确定出与所述待共享的资料数据相同类型的已存储的资料数据;根据预先设定的规则,对所述待共享的资料数据与所述已存储的资料数据进行拆分,分别确定出对应的多个资料片段;将所述待共享的资料数据的多个资料片段与所述已存储的资料数据的多个资料片段进行对比,确定出所述待共享的资料数据的多个资料片段与所述已存储的资料数据的多个资料片段相同的重合片段;在所述待共享的资料数据的多个资料片段中,去除所述重合片段,生成共享资料数据;将去重后的所述共享资料数据存储至所述资料共享系统的分布式数据库ipfs中,以便于根据所述共享资料数据生成所述共享资料数据对应的唯一资料编码和资料存储地址;将所述资料编码和所述资料存储地址存储在所述资料共享系统的区块链中,以便于待查看用户通过所述资料编码和所述资料存储地址获取共享资料数据内容,实现资料共享。
7.进一步地,所述将所述待共享的资料数据的多个资料片段与所述已存储的资料数据的多个资料片段进行对比,确定出所述待共享的资料数据的多个资料片段与所述已存储的资料数据的多个资料片段相同的重合片段,具体包括:提取所述待共享的资料数据的多个资料片段中每个指定资料片段的多个字段特征,根据所述多个字段特征生成对应的指定特征标识,确定出所述多个所述待共享的资料数据的多个资料片段分别对应的指定特征标识;根据所述多个指定特征标识,生成指定特征标识库,其中,所述指定特征标识库中包括所述多个指定特征标识,以及每个指定特征标识对应的指定资料片段;提取所述已存储的资料数据的多个资料片段中每个当前资料片段的多个字段特征,根据所述多个字段特征生
成对应的当前特征标识,确定出所述多个当前资料数据分别对应的当前特征标识;计算每个当前特征标识与每个指定特征标识的匹配度,当所述匹配度超过预设阈值时,判定所述当前特征标识和所述指定特征标识相同;根据每个当前特征标识与每个指定特征标识的匹配度,确定出所述当前特征标识和所述指定特征标识相同的重复特征标识;根据所述重复特征标识,确定出所述待共享的资料数据的多个资料片段与所述已存储的资料数据的多个资料片段中的重合片段。
8.进一步地,所述资料编码用于表示所述共享资料的摘要信息,所述资料存储地址用于表示所述共享资料在所述分布式数据库ipfs中的地址信息;所述通过所述资料编码和所述资料存储地址获取共享资料数据,具体包括:根据多个分享用户对应的多个共享资料,将所述多个共享资料对应的所述资料编码和所述存储地址生成所述多个共享资料的查询表;获取所述待查看用户的资料查看请求,其中,所述资料查看请求包括待查看资料的摘要信息;根据所述资料查看请求中的摘要信息,在所述查询表中筛选出与所述资料查看请求中的摘要信息匹配的资料编码;根据所述资料编码,确定出待查看的共享资料;通过所述查询表中与所述资料编码对应的资料存储地址,定位所述待查看的共享资料在所述分布式数据库ipfs中的位置。
9.进一步地,当所述待共享的资料数据为个人科研数据时,所述根据所述共享资料数据生成所述共享资料数据对应的唯一资料编码和资料存储地址,具体包括:根据所述待共享的资料数据,预设多个分配信息,其中,所述分配信息中包括待共享的资料数据中多个数据分别对应的适用对象;将所述共享资料数据分为多个子数据,并根据所述分配信息对所述多个子数据分别设置适用对象的组织标识;根据所述多个子数据生成所述共享资料数据对应的唯一资料编码;将所述多个子数据中,组织标识一致的子数据存储至相同地址的分布式数据库ipfs中,生成多个子数据对应的多个子数据地址,将所述多个子数据地址作为资料存储地址。
10.进一步地,所述待查看用户通过所述资料编码和所述资料存储地址获取共享资料数据,具体包括:接收待查看用户的资料查看请求,所述资料查看请求包括所述待查看用户的组织信息和待查看资料数据,所述组织信息用于表示所述待查看用户所属的组织机构和组织层级;根据所述待查看用户的组织信息,确定所述待查看用户的查看权限;根据所述待查看用户的查看权限,在所述共享资料数据中确定出在查看权限内的多个指定子数据;将所述多个指定子数据对应的组织标识和所述待查看用户的组织信息进行匹配,根据匹配结果确定出与所述待查看用户共享的指定共享资料数据。
11.进一步地,所述根据多个分享用户对应的多个共享资料,将所述多个共享资料对应的所述资料编码和所述存储地址生成所述多个共享资料的查询表,具体包括:将多个共享资料的查看历史存储在智能合约中,并生成每个共享资料的查看频次;按照所述查看频次对所述多个共享资料进行排序,确定出所述多个共享资料的顺序;根据所述多个共享资料的顺序,将对应共享资料的资料编码和存储地址置于所述共享资料的相应位置处,生成多个共享资料的查询表。
12.进一步地,所述提取所述待共享的资料数据的多个资料片段中每个指定资料片段的多个字段特征,具体包括:将所述每个指定资料片段分为多个语句集合,对所述语句集合中的语句进行分词处理,得到具备实际意义的多个分词;将所述具备实际意义的多个分词
输入至预先训练的特征提取模型中,得到多个分词对应的分词特征;根据所述多个分词在所述语句集合中的出现频次和出现位置,为每个分词特征设置权重;根据每个分词特征的权重,确定出所述语句集合中的多个字段特征。
13.进一步地,所述区块链为联盟链,所述区块链包括多个区块链节点;所述区块链节点包括多个待分享用户分别对应的多个分享节点和所述资源共享系统对应的管理节点。
14.本说明书一个或多个实施例提供一种基于区块链和ipfs的资源共享设备,包括:
15.至少一个处理器;以及,
16.与所述至少一个处理器通信连接的存储器;其中,
17.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
18.获取待共享的资料数据,并确定所述待共享的资料数据的类型;在所述资料共享系统中确定出与所述待共享的资料数据相同类型的已存储的资料数据;根据预先设定的规则,对所述待共享的资料数据与所述已存储的资料数据进行拆分,分别确定出对应的多个资料片段;将所述待共享的资料数据的多个资料片段与所述已存储的资料数据的多个资料片段进行对比,确定出所述待共享的资料数据的多个资料片段与所述已存储的资料数据的多个资料片段相同的重合片段;在所述待共享的资料数据的多个资料片段中,去除所述重合片段,生成共享资料数据;将去重后的所述共享资料数据存储至所述资料共享系统的分布式数据库ipfs中,以便于根据所述共享资料数据生成所述共享资料数据对应的唯一资料编码和资料存储地址;将所述资料编码和所述资料存储地址存储在所述资料共享系统的区块链中,以便于待查看用户通过所述资料编码和所述资料存储地址获取共享资料数据内容,实现资料共享。
19.本说明书一个或多个实施例提供的一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
20.获取待共享的资料数据,并确定所述待共享的资料数据的类型;在所述资料共享系统中确定出与所述待共享的资料数据相同类型的已存储的资料数据;根据预先设定的规则,对所述待共享的资料数据与所述已存储的资料数据进行拆分,分别确定出对应的多个资料片段;将所述待共享的资料数据的多个资料片段与所述已存储的资料数据的多个资料片段进行对比,确定出所述待共享的资料数据的多个资料片段与所述已存储的资料数据的多个资料片段相同的重合片段;在所述待共享的资料数据的多个资料片段中,去除所述重合片段,生成共享资料数据;将去重后的所述共享资料数据存储至所述资料共享系统的分布式数据库ipfs中,以便于根据所述共享资料数据生成所述共享资料数据对应的唯一资料编码和资料存储地址;将所述资料编码和所述资料存储地址存储在所述资料共享系统的区块链中,以便于待查看用户通过所述资料编码和所述资料存储地址获取共享资料数据内容,实现资料共享。
21.本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
22.通过对待共享的资料数据和已存储的资料数据进行拆分,并对拆分后的片段进行对比,确定出重复片段,将重复片段在待共享的资料数据中去除,避免了重复上传资料数据的情况。另外,通过链上链下混合式存储的方式提高区块链存储效率,在链下存储中使用分布式数据库ipfs对共享资料数据进行存储,并将共享资料对应的资料编码和资料存储地址
存储至区块链上,利用区块链的不可篡改的特征保证了共享资料的安全,另外,在区块链上只存储共享资料数据的资料编码和资料存储地址,减轻了存储压力,便于用户对分享资料数据的查看和定位。
附图说明
23.为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。在附图中:
24.图1为本说明书实施例提供的一种基于区块链和ipfs的资源共享方法的流程示意图;
25.图2为本说明书实施例提供的一种基于区块链和ipfs的资源共享设备的结构示意图。
具体实施方式
26.为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
27.随着网络共享时代的到来,为了提供学习效率,越来越多的社会群体会将资源,如学习资料共享到网络,以便于内部人员或外部人员学习使用。当人们将自己的资源进行共享时,属于同一社会群体的用户可能会存在重复的共享内容,另外,还会存在待上传的内容与共享系统中存储的共享内容重复的情况。这就导致重复的共享资源上传至共享系统中,使得共享系统中产生大量的重复数据,增加了存储成本,也不利于用户对内容的检索。
28.本说明书实施例提供一种基于区块链和ipfs的资源共享方法,应用于预先存储的资源共享系统,区块链为联盟链,区块链包括多个区块链节点,其中,区块链节点由多个待分享用户分别对应的多个分享节点和资源共享系统对应的管理节点组成。需要说明的是,本说明书实施例的执行主体可以是共享设备,也可以是服务器,在此不作具体限定。图1为本说明书实施例提供的一种基于区块链和ipfs的资源共享方法的流程示意图,需要说明的是,ipfs(inter planetary file system)是一个全球互联的分布式文件系统,如图1所示,方法主要包括如下步骤:
29.步骤s101,获取待共享的资料数据,并确定待共享的资料数据的类型。
30.在实际的应用场景中,用户在进行资源共享时,通过资源共享系统上传待共享的资料数据。由于用户需要进行共享的资源不同,资料数据会呈现不同的数据形式,例如,用户需要共享的资源可能为视频数据,也可以是图片数据,当用户为学生或者是科研工作者时,需要共享的资源可能是学习资料数据。
31.在本说明书的一个实施例中,根据用户上传的共享资源,获取待共享的资料数据,并确定待共享的资料数据的数据类型,以学习资料数据为例,此处的数据类型可以是指学
习资料对应的学科类型,例如语文资料、数学资料以及英语资料等;若待共享的资料数据为视频数据时,例如电影,此处的数据类型可以根据电影的名称进行分类;若待共享的资料数据为科研数据,可以按照研究方向进行分类。
32.在本说明书的一个实施例中,判断待共享的资料数据的数据类型,可以通过神经网络模型实现,将资料数据输入至训练后的神经网络模型中,通过神经网络模型确定数据类型;也可以通过设置用户上传界面,由用户根据待共享的资料数据的类型选择上传界面中的类型选项,本说明书实施例在此不作具体限定。
33.步骤s102,在资料共享系统中确定出与待共享的资料数据相同类型的已存储的资料数据。
34.当用户在资料共享系统中上传共享资料时,在资料共享系统中会存在其他用户上传的共享资料。资料共享系统中存储的共享资料较多,直接从所有的共享资料中获取与待共享的共享资源相同的资料工作量较大。由于不同类型的资料数据,内容也不相同,比如数学资料和语文资料为不同的资料数据,一般情况下两者中不存在重合数据。
35.为了缩小对比范围,减少系统的工作负担,在本说明书的一个实施例中,在共享系统中确定出与待共享的资料数据相同类型的已存储的资料数据。可以为资料数据分别设置类型标识,将类型标识一致的资料数据作为属于相同类型的资料数据。
36.步骤s103,根据预先设定的规则,对待共享的资料数据与已存储的资料数据进行拆分,分别确定出对应的多个资料片段。
37.在确定出与待共享的资料数据属于同一类型的已存储资料数据之后,对待共享的资料数据进行拆分,确定出待共享的资料数据的多个资料片段,可以称作当前资料片段。对已存储的资料数据进行拆分,确定出已存储的资料数据对应的多个资料片段,可以称作指定资料片段。
38.需要说明的是,拆分时可以根据不同的资料数据设置不同的拆分规则,例如,当资料数据为论文数据时,可以按照论文的结构框架拆分成多个部分,例如,将摘要的内容作为一个资料片段,将研究背景的内容作为一个资料片段,将研究内容作为一个资料片段等。当资料数据为图片时,可以按照图片中的图像特征进行拆分,将图像分为人物特征片段和静物特征片段,本说明书在此仅作示例性说明。
39.步骤s104,将待共享的资料数据的多个资料片段与已存储的资料数据的多个资料片段进行对比,确定出待共享的资料数据的多个资料片段与已存储的资料数据的多个资料片段相同的重合片段。
40.在本说明书的一个实施例中,将待共享的资料数据的多个资料片段与已存储的资料数据的多个资料片段进行对比,可以通过提取资料片段特征实现。具体地,提取待共享的资料数据的多个资料片段中每个指定资料片段的多个字段特征。将每个指定资料片段分为多个语句集合,对语句集合中的语句进行分词处理,得到具备实际意义的多个分词,需要说明的是,此处的具备实际意义的分词是指除了连接词、转折词等关系词的名词等具备实际意义的分词。
41.在本说明书的一个实施例中,将具备实际意义的多个分词输入至预先训练的特征提取模型中,得到多个分词对应的分词特征,根据多个分词在语句集合中的出现频次和出现位置,为每个分词特征设置权重,出现次数越多,权重越大,根据句子的结构,对不同位置
处的词语设置权重,例如主谓宾结构中,主语的权重高于宾语,宾语的权重高于谓语。根据每个分词特征的权重,确定出语句集合中的多个字段特征,以便于根据多个字段特征生成每个资料片段对应的指定特征标识,通过上述方法,获取多个资料片段对应的多个指定特征标识,根据多个指定特征标识,生成指定特征标识库,其中,指定特征标识库中包括多个指定特征标识,以及每个指定特征标识对应的指定资料片段。
42.提取已存储的资料数据的多个资料片段中每个当前资料片段的多个字段特征,根据多个字段特征生成对应的当前特征标识,确定出多个当前资料数据分别对应的当前特征标识。需要说明的是,此处的生成当前特征标识的方法,可以按照生成指定特征标识的方法进行,也可以采用其他方法。
43.计算每个当前特征标识与每个指定特征标识的匹配度,此处为了方便操作,计算匹配度可以通过判断当前特征标识与每个指定特征标识是否一致得到,两者一致时,匹配度为100%,两者不一致,匹配度为0,也可以通过其他方法计算匹配度。当匹配度超过预设阈值时,判定当前特征标识和指定特征标识相同,阈值可以根据实际情况设置。根据每个当前特征标识与每个指定特征标识的匹配度,确定出当前特征标识和指定特征标识相同的重复特征标识,以便于根据重复特征标识,确定出待共享的资料数据的多个资料片段与已存储的资料数据的多个资料片段中的重合片段。
44.步骤s105,在待共享的资料数据的多个资料片段中,去除重合片段,生成共享资料数据。
45.在本说明书的一个实施例中,在待共享的资料数据的多个资料片段中,去除重合片段,例如,待共享的资料数据可能包括片段a、片段b、片段c,在已存储的资料数据中可能包括片段a、片段d、片段e,两者的重合片段为片段a,则在待共享的资料数据中去除片段a,生成由片段b、片段c组成的共享资料数据。
46.步骤s106,将去重后的共享资料数据存储至资料共享系统的分布式数据库ipfs中,以便于根据共享资料数据生成共享资料数据对应的唯一资料编码和资料存储地址。
47.在本说明书的一个实施例中,将去重后的共享资料数据存储至资料共享系统的分布式数据库ipfs中,保证了上传的共享资料的唯一性,避免了上传共享资料和存储共享资料重复的情况,另外,将去重后的共享资料数据上传至分布式数据库ipfs,减小了区块链的存储负担。将去重后的共享资料数据存储至资料共享系统的分布式数据库ipfs之后,根据共享资料数据生成共享资料数据对应的唯一资料编码和资料存储地址,唯一资料编码用于标识共享资料数据的摘要信息,可以是字符串的形式,也可以是条形码、二维码的形式,也可以是其他形式,在此不作限定。资料存储地址是至共享资料数据在分布式数据库ipfs中的位置,通过资料存储地址可以在分布式数据库ipfs中定位到共享资源数据。
48.个人科研数据是指某个科研人员或者是科研团队经过科学研究活动产生生的研究数据,此类研究数据的共享是实现科学数据自身潜在价值的根本途径,有利于推动科研事业的发展。个人科研数据在共享中应注意关注数据研发人员的意愿,公开范围也应由科研人员确定。例如,在高校的科研项目中,针对同一课题组的用户共享的内容相对较多,但是对于其他课题组或者是校外组织来说,在科研数据形成发表论文之前,科研人员的科研数据应该避免公开。因此,个人科研数据在共享时还应注意共享的适用对象。
49.具体地,当待共享的资料数据为个人科研数据时,根据共享资料数据生成共享资
料数据对应的唯一资料编码和资料存储地址,具体包括:根据待共享的资料数据,预设多个分配信息,其中,分配信息中包括待共享的资料数据中多个数据分别对应的适用对象;将共享资料数据分为多个子数据,并根据分配信息对多个子数据分别设置适用对象的组织标识;根据多个子数据生成共享资料数据对应的唯一资料编码;将多个子数据中,组织标识一致的子数据存储至相同地址的分布式数据库ipfs中,生成多个子数据对应的多个子数据地址,将多个子数据地址作为资料存储地址。
50.在本说明书的一个实施例中,若待共享的资料数据为个人科研数据,预先根据科研人员的共享意愿,预设多个分配信息。例如,个人科研数据包括对a、b以及c的研究内容,其中,针对a的研究内容部分应该在本课题组内共享,针对b的研究内容针对校内所有课题组共享,针对c的研究内容针对校外组织共享,那么分配信息包括a的研究内容部分适用对象为本课题组内用户,b的研究内容适用对象为校内所有课题组用户,c的研究内容适用对象为校外组织用户。将共享资料数据分为多个子数据,例如,a的研究内容为第一个子数据,b的研究内容为第二个子数据,c的研究内容为第三个子数据。
51.为每个子数据设置适用对象的组织标识,为第一个子数据设置与本课题组对应的组织标识a,为第二个子数据设置与校内所有课题组对应的组织标识b,为第三个子数据设置与校外组织对应的组织标识c。根据多个子数据生成整个共享资料数据对应的唯一资料编码,唯一资料编码用于表示共享资料的摘要信息,可以根据多个子数据分别对应的摘要信息获取共享资料的摘要信息,将摘要信息转换为编码形式,其中资料编码可以是字符串,也可以是二维码、条形码等,本说明书实施例在此不作具体限定。
52.将多个子数据中,组织标识一致的子数据存储至相同地址的分布式数据库ipfs中,生成多个子数据对应的多个子数据地址,将多个子数据地址作为资料存储地址。例如存在第四个子数据,第四个子数据的适用对象为校内其他课题组,可以将第一个子数据和第四个子数据存储至分布式数据库ipfs的相同位置处,根据存储位置生成第一存储地址;将第二个子数据存储至分布式数据库ipfs的其他位置处,生成第二存储地址,将第三个子数据存储至分布式数据库ipfs中的剩余位置处,生成第三存储地址,将第一存储地址、第二存储地址以及第三存储地址作为该个人科研数据的资料存储地址。
53.通过将个人科研数据按照适用对象进行分类,充分考虑共享人的意愿,实现适当共享,既保证了指定数据的完全公开,又保证了隐私数据的范围内公开。
54.步骤s107,将资料编码和资料存储地址存储在资料共享系统的区块链中,以便于待查看用户通过资料编码和资料存储地址获取共享资料数据内容,实现资料共享。
55.在本说明书的一个实施例中,资料编码用于表示共享资料的摘要信息,可以通过资料编码查看共享资料的摘要,以便于用户根据共享资料的摘要确定该共享资料是否为自己需要的数据。资料存储地址用于表示共享资料在分布式数据库ipfs中的地址信息,通过资料存储地址,可以对共享资料在分布式数据库ipfs中的位置进行定位。
56.当待查看用户所需要查看的数据为个人科研数据时,需要根据待查看用户的组织标识确定可以查看的共享资料中的子数据。
57.具体地,待查看用户通过所述资料编码和所述资料存储地址获取共享资料数据,具体包括:接收待查看用户的资料查看请求,资料查看请求包括待查看用户的组织信息和待查看资料数据,组织信息用于表示待查看用户所属的组织机构和组织层级;根据待查看
用户的组织信息,确定待查看用户的查看权限;根据待查看用户的查看权限,在共享资料数据中确定出在查看权限内的多个指定子数据;将多个指定子数据对应的组织标识和待查看用户的组织信息进行匹配,根据匹配结果确定出与待查看用户共享的指定共享资料数据。
58.在本说明书的一个实施例中,当待查看用户需要查询个人科研数据时,发送资料查看请求,查看请求中包括待查看用户的组织信息和待查看资料数据,例如,待查看用户的组织机构为a院校,组织层级为a课题组,那么待查看用户的组织信息为a院校的a课题组,要查看的数据为个人科研数据。根据待查看用户的组织信息,确定出该用户的查看权限,筛选存储的多个资料数据中,在其查看权限内的指定子数据。为了保证筛选的准确性,对指定子数据中的组织标识和用户的组织信息进行匹配,匹配通过,则将指定子数据确定为该用户可以查看的指定共享资源数据。
59.当待查看用户查看共享资料时,在共享系统中可能存在多个共享资料,针对此情况,为了方便用户的查看,可以将多个共享资料组织成查询表的形式。
60.在本说明书的一个实施例中,将多个共享资料的查看历史存储在智能合约中,并生成每个共享资料的查看频次,例如a资料被查看200次,b资料被查看50次,c资料被查看1次,按照查看频次对多个共享资料进行排序,确定出多个共享资料的顺序。也就是多个共享资料的顺序为a资料、b资料、c资料。根据多个共享资料的顺序,将对应共享资料的资料编码和存储地址置于共享资料的相应位置处,生成多个共享资料的查询表,如下表所示。
61.a资料a编码a地址b资料b编码b地址c资料c编码c地址
62.在本说明书的一个实施例中,获取待查看用户的资料查看请求,其中,资料查看请求包括待查看资料的摘要信息。根据资料查看请求中的摘要信息,在查询表中筛选出与资料查看请求中的摘要信息匹配的资料编码。根据资料编码,确定出待查看的共享资料。通过查询表中与资料编码对应的资料存储地址,定位待查看的共享资料在分布式数据库ipfs中的位置。也就是说,根据资料查看请求中的摘要信息,判断出a编码、b编码以及c编码中的a编码对应的摘要信息与资料查看请求中的摘要信息相同,也可以将资料请求信息中的摘要信息转换为资料编码,与现有的编码对比,确定出对应的资料编码,以便于进一步地根据资料编码确定共享资料。获取对应的资料编码之后,根据查询表中与资料编码对应的资料存储地址,定位待查看的共享资料在分布式数据库ipfs中的位置。
63.通过对待共享的资料数据和已存储的资料数据进行拆分,并对拆分后的片段进行对比,确定出重复片段,将重复片段在待共享的资料数据中去除,避免了重复上传资料数据的情况。另外,通过链上链下混合式存储的方式提高区块链存储效率,在链下存储中使用分布式数据库ipfs对共享资料数据进行存储,并将共享资料对应的资料编码和资料存储地址存储至区块链上,利用区块链的不可篡改的特征保证了共享资料的安全,另外,在区块链上只存储共享资料数据的资料编码和资料存储地址,减轻了存储压力,便于用户对分享资料数据的查看和定位。
64.本说明书实施例还提供一种基于区块链和ipfs的资源共享设备,如图2所示,设备包括:
65.至少一个处理器;以及,
66.与至少一个处理器通信连接的存储器;其中,
67.存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够:
68.获取待共享的资料数据,并确定待共享的资料数据的类型;在资料共享系统中确定出与所述待共享的资料数据相同类型的已存储的资料数据;根据预先设定的规则,对待共享的资料数据与已存储的资料数据进行拆分,分别确定出对应的多个资料片段;将待共享的资料数据的多个资料片段与已存储的资料数据的多个资料片段进行对比,确定出待共享的资料数据的多个资料片段与已存储的资料数据的多个资料片段相同的重合片段;在待共享的资料数据的多个资料片段中,去除重合片段,生成共享资料数据;将去重后的共享资料数据存储至资料共享系统的分布式数据库ipfs中,以便于根据共享资料数据生成共享资料数据对应的唯一资料编码和资料存储地址;将资料编码和资料存储地址存储在资料共享系统的区块链中,以便于待查看用户通过资料编码和资料存储地址获取共享资料数据内容,实现资料共享。
69.本说明书一个或多个实施例提供的一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
70.获取待共享的资料数据,并确定待共享的资料数据的类型;在资料共享系统中确定出与所述待共享的资料数据相同类型的已存储的资料数据;根据预先设定的规则,对待共享的资料数据与已存储的资料数据进行拆分,分别确定出对应的多个资料片段;将待共享的资料数据的多个资料片段与已存储的资料数据的多个资料片段进行对比,确定出待共享的资料数据的多个资料片段与已存储的资料数据的多个资料片段相同的重合片段;在待共享的资料数据的多个资料片段中,去除重合片段,生成共享资料数据;将去重后的共享资料数据存储至资料共享系统的分布式数据库ipfs中,以便于根据共享资料数据生成共享资料数据对应的唯一资料编码和资料存储地址;将资料编码和资料存储地址存储在资料共享系统的区块链中,以便于待查看用户通过资料编码和资料存储地址获取共享资料数据内容,实现资料共享。
71.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备、非易失性计算机存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
72.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
73.以上所述仅为本说明书的一个或多个实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书的一个或多个实施例可以有各种更改和变化。凡在本说明书的一个或多个实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1