CN109918867B - 基于区块链的对等系统文件溯源方法 - Google Patents

基于区块链的对等系统文件溯源方法 Download PDF

Info

Publication number
CN109918867B
CN109918867B CN201910131469.1A CN201910131469A CN109918867B CN 109918867 B CN109918867 B CN 109918867B CN 201910131469 A CN201910131469 A CN 201910131469A CN 109918867 B CN109918867 B CN 109918867B
Authority
CN
China
Prior art keywords
node
block chain
transaction
file
organization
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910131469.1A
Other languages
English (en)
Other versions
CN109918867A (zh
Inventor
何倩
覃幸
王士成
江炳城
李雪聪
王勇
覃匡宇
杨指挥
周水明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guilin University of Electronic Technology
Original Assignee
Guilin University of Electronic Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guilin University of Electronic Technology filed Critical Guilin University of Electronic Technology
Priority to CN201910131469.1A priority Critical patent/CN109918867B/zh
Publication of CN109918867A publication Critical patent/CN109918867A/zh
Application granted granted Critical
Publication of CN109918867B publication Critical patent/CN109918867B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02ATECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
    • Y02A10/00TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE at coastal zones; at river basins
    • Y02A10/40Controlling or monitoring, e.g. of flood or hurricane; Forecasting, e.g. risk assessment or mapping

Abstract

本发明公开一种基于区块链的对等系统文件溯源方法,包括基于区块链的对等系统文件溯源方法和用户通过区块链进行对等系统文件下载的信息溯源过程。本发明可以让更多的参与方加入,一起维护一个账本,越多参与方加入,维护的数据越多,可以增加更多的信任背书,文件溯源更加可信。克服中心化系统的弊端,强有力的证书认证能避免人为纂改数据或数据意外丢失的问题,修改等操作必须通过所有组织的同意,大大提高了安全性。

Description

基于区块链的对等系统文件溯源方法
技术领域
本发明涉及信息安全和通信技术领域,具体涉及一种基于区块链的对等(Peer toPeer,P2P)系统文件溯源方法。
背景技术
随着用户对文件下载速率和流媒体质量要求的不断提升,P2P几乎已经成为大型通信系统中不可缺少的技术,深入网民的生活。在P2P世界中,用户可以方便地免费拥有原先必须花钱才能获得的各种资源和服务,随之而来的问题是版权纠纷问题,盗版泛滥,盗版问题举证困难,维权成本过高。此外,用户还会下载到虚假的P2P文件,导致电脑中病毒,导致用户财产损失。因此需要一种有效的技术来保障版权保护和避免用户下载到虚假P2P文件的问题。
发明内容
本发明所要解决的是在P2P文件资源难以溯源而所导致的盗版泛滥过和虚假P2P种子所导致的电脑中病毒的问题,提供一种基于区块链的对等系统文件溯源方法。
为解决上述问题,本发明是通过以下技术方案实现的:
基于区块链的对等系统文件溯源方法,包括步骤如下:
步骤1、上传用户通过浏览器上传P2P文件到一台种子服务器,种子服务器自动做种,生成此P2P文件种子;
步骤2、种子服务器将自身的IP地址、生成种子的时间、种子对应的P2P文件的名称和上传资源的用户名通过JMS消息中间件自动发送给该种子服务器所对应的区块链组织的区块链客户端;
步骤3、该区块链组织的区块链客户端将接收到的这些信息当做P2P文件下载信息的交易,并向该区块链组织的背书节点提交交易;
步骤4、该区块链组织的背书节点对交易的合法性进行校验;若校验通过,则模拟该交易的执行结果,并将模拟执行结果反馈给该区块链组织的区块链客户端,否则,丢弃该交易;
步骤5、该区块链组织的区块链客户端接收到模拟执行结果后,向所属超级账本区块链系统的排序服务节点提交该区块链客户端的签名和模拟执行结果的交易;
步骤6、排序服务节点转发这笔交易给Kafka;
步骤7、排序服务节点订阅Kafka所发布的包含区块链客户端签名的交易,并对交易进行排序生成区块后,广播区块给所属超级账本区块链系统的各个区块链组织的主节点;
步骤8、每个区块链组织的主节点分别校验区块里面的交易的合法性;若校验通过,则主节点将该区块同步到同一个区块链组织的背书节点和记账节点中,否则,丢弃该交易;
步骤9、背书节点和记账节点在与主节点进行区块同步过程中,背书节点和记账节点同时对交易的合法性进行校验;若背书节点和记账节点均校验通过,则将该交易保存到该记账节点、背书节点和主节点对应的区块链组织中,否则,丢弃该交易;
步骤10、下载用户使用浏览器从种子服务器下载所需下载的P2P文件的种子,并该种子导入到相应的下载节点,下载节点开始下载,直到下载任务完成;
步骤11、下载节点将自身的IP地址、下载完成时间、下载的P2P文件名和下载用户信息经由JMS消息中间件自动发送给该下载节点所对应区块链组织里面的区块链客户端;
步骤12、溯源用户把P2P文件名输入任意一个区块链组织的区块链客户端;
步骤13、区块链客户端与其对应的区块链组织中安装有智能合约的节点进行通信;
步骤14、安装有智能合约的节点调用智能合约,并向该安装有智能合约的节点所属的区块链组织发起查询请求;如果查询成功,则并将历史信息返回给安装有智能合约的节点,否则,将空值返回给安装有智能合约的节点,中止查询;
步骤15、安装有智能合约的节点将所查询到的P2P文件的历史信息返回给区块链组织的区块链客户端供溯源用户查看。
上述方案中,安装有智能合约的节点为区块链组织的主节点、背书节点或记账节点。
与现有技术相比,本发明具有如下特点:
1、可以让更多的参与方加入,一起维护一个账本,越多参与方加入,维护的数据越多,可以增加更多的信任背书,文件溯源更加可信。克服中心化系统的弊端,强有力的证书认证能避免人为纂改数据或数据意外丢失的问题,修改等操作必须通过所有组织的同意,大大提高了安全性。
2、打破信息的孤立,多方参与共同维护同一个账本,减少多个组织重复对账的成本问题,提高数据的实时共享性,数据的共享更加安全方便,快速达成信息的一致性,减少溯源过程中成本过高的问题,减少P2P文件数字版权维权的成本高的问题,降低多组织的存在而导致信息的漏上传的概率。减少用户下载到恶意虚假种子的概率,从而减少对计算机的危害。
附图说明
图1为基于区块链的P2P文件的溯源系统的示意图。
图2为本发明所述方法的P2P文件下载信息上链流程图。
图3为用户通过区块链对P2P文件下载的信息溯源的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实例,并参照附图,对本发明进一步详细说明。
图1为基于区块链的P2P文件的溯源系统的示意图,其主要包括以下组成部分:
(1)P2P系统:
用户:包括上传P2P文件的用户,下载P2P文件的用户(一个用户对应一个下载节点)和进行溯源操作的用户。
种子服务器:可以有一个或者多个,本实施例为1个种子服务器。用户上传P2P文件到种子服务器,该种子服务器是生成P2P文件种子和提供初始完整的P2P文件服务的提供方。种子服务器自动生成P2P文件种子。
JMS即Java消息服务应用程序接口:是一个Java平台中关于面向消息中间件的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信,在文中称为JMS消息中间件。
下载节点:运行在计算机中,能够连接种子服务器或者其他有P2P文件的下载节点进行文件下载,完成下载后自动通过JMS消息中间件将P2P文件下载的相关信息(即下载节点的用户名,IP地址,P2P文件名,下载完成时间)上传到超级账本区块链系统。
(2)超级账本区块链系统:
排序服务节点:本实施例包括一个排序服务节点,其主要负责对交易进行打包。
Kafka:本实施例包括1个Kafka,中文名为卡夫卡,其是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。
区块链组织:本实施例包括4个区块链组织。每个区块链组织(如图2所示)包含:背书节点,主节点,记账节点和区块链客户端。
每个区块链组织包括背书节点、主节点、记账节点、智能合约和区块链客户端。区块链客户端是使用超级账本软件开发工具包编写,它能够对超级账本区块链进行相关操作。智能合约是区块链客户端和超级账本区块链的之间的桥梁,通过智能合约区块链客户端可以向超级账本区块链发起交易查询。
本发明默认所有用户和所有的区块链客户端都已经获取授权,能接入区块链和P2P系统,进行相应的操作。背书节点是一个应用程序,主要负责对交易进行校验。记账节点是一个应用程序,主要负责把区块加入区块链。主节点是一个应用程序,主要负责接收排序服务节点发送的区块。区块链系统接收下载节点通过JMS消息中间件传输的P2P文件下载的相关信息。本发明中的交易指的是P2P文件下载的信息的交易,以下统称交易。本发明在下载过程中下载的是同一个P2P文件。
超级账本区块链系统对各下载节点发送过来的P2P文件下载的信息的交易进行记录和校验,校验通过即记录到区块链,校验不通过就丢弃。由于区块链不可篡改的特性。基于以上过程完成存储的信息的不可篡改,大大提高溯源的可信度。因此超级账本区块链系统是溯源的重要基础设施。
基于区块链的对等系统文件溯源方法,其具体包括如下步骤:
1、对等系统(Peer to Peer,P2P)文件下载信息上链过程,如图2所示。每个区块链组织里的节点选任意一个节点分别安装相同的智能合约,即第一区块链组织任选一个节点安装一个合约,第二区块链组织任选一个节点安装一个合约,第三区块链组织任选一个节点安装一个合约。其中任意一个节点指:主节点、背书节点、记账节点。本发明中的交易指的是P2P文件下载的信息的交易,以下统称交易。
(1)上传P2P文件的用户通过浏览器上传P2P文件到一台种子服务器,种子服务器自动做种,生成此P2P文件种子;
(2)种子服务器将自身的IP地址、生成种子的时间、种子对应的P2P文件的名称和上传资源的用户名通过JMS消息中间件自动发送给其对应第一区块链组织中的区块链客户端;
(3)区块链客户端将接收到的这些信息当做P2P文件下载信息的交易,下文统称交易;区块链客户端向其对应组织里的背书节点提交交易;
(4)背书节点对上述区块链客户端提交的交易的合法性进行校验,校验成功之后,模拟该交易的执行结果,并将模拟执行结果反馈给区块链客户端,否则,丢弃校验失败的交易;
(5)区块链客户端接收到模拟执行结果后,区块链客户端提交此区块链客户端的签名和模拟执行结果的交易给排序服务节点;
(6)排序服务节点转发这笔交易给Kafka;
(7)排序服务节点订阅Kafka发布的包含区块链客户端签名的交易,对交易进行排序生成区块,并广播区块给各个区块链组织的对应的主节点;
(8)各个区块链组织的对应的主节点校验区块里面的交易,若校验通过,则主节点将该区块同步到同一个区块链组织的背书节点和记账节点中,否则,丢弃校验失败交易;
(9)背书节点和记账节点在与主节点进行区块同步过程中,各个区块链组织的记账节点和背书节点校验交易,校验通过保存区块到该记账节点、背书节点以及主节点所对应的区块链组织中,否则丢弃该交易;此时,对等系统(Peer to Peer,P2P)文件下载的信息实现信息上链;
(10)下载用户使用浏览器从种子服务器下载所需下载的P2P文件的种子,并该种子导入到下载节点,下载节点开始下载,直到下载任务完成;
(11)下载节点将自身的IP地址、下载完成时间、下载的P2P文件名和用户信息经由JMS消息中间件自动发送给其对应区块链组织里面的区块链客户端。然后执行执行步骤(3)到步骤(19)。
P2P文件的下载过程已经被写入区块链中,该下载过程已经是不可篡改的记录到区块链中,大大提高了信息储存的安全性,溯源的可信度。
2、用户通过区块链进行对等系统(Peer to Peer,P2P)文件下载的信息溯源过程,如图3所示。溯源信息指的是:(1)P2P文件被生成种子时的生成时间,所用的服务器的IP地址,此P2P文件的种子创建者,即上传P2P文件的用户,P2P文件名。P2P文件从种子服务器被生成种子后,此P2P文件被下载节点1从种子服务器下载。(2)各个下载相同P2P文件的下载节点的用户名,该P2P文件下载完成的时间,此P2P文件的名字,各个下载相同P2P文件的下载节点的IP地址。
(1)溯源用户把P2P文件名输入到各个区块链组织中的任意一个区块链客户端。
(2)上述区块链客户端与其对应的区块链组织中安装有智能合约的区块链节点进行通信,即区块链客户端发送P2P文件的种子文件名等信息来向该安装有智能合约的区块链节点进行溯源查询的请求;
(3)该区块链节点调用智能合约,智能合约接收到P2P文件的种子文件名等信息,智能合约向其所在的区块链节点的区块链组织发起查询请求,区块链组织对P2P文件的历史信息进行查询;如果查询不到该P2P文件的历史信息,则返回空值,就中止查询;
(4)智能合约返回上述执行结果给上述区块链节点,区块链节点将P2P文件的种子文件溯源结果返回给区块链客户端供用户查看。用户进行溯源操作后,获取P2P文件的溯源信息。用户清晰的知道,该P2P文件的种子由哪个用户创建的、创建的时间,创建该种子的所用的服务器地址,该P2P文件被各下载节点的用户下载完成的时间,用户清晰的知道此P2P文件下载的一系列过程。
需要说明的是,尽管以上本发明所述的实施例是说明性的,但这并非是对本发明的限制,因此本发明并不局限于上述具体实施方式中。在不脱离本发明原理的情况下,凡是本领域技术人员在本发明的启示下获得的其它实施方式,均视为在本发明的保护之内。

Claims (2)

1.基于区块链的对等系统文件溯源方法,其特征是,包括步骤如下:
步骤1、上传用户通过浏览器上传P2P文件到一台种子服务器,种子服务器自动做种,生成此P2P文件种子;
步骤2、种子服务器将自身的IP地址、生成种子的时间、种子对应的P2P文件的名称和上传资源的用户名通过JMS消息中间件自动发送给该种子服务器所对应的区块链组织的区块链客户端;其中JMS即Java消息服务应用程序接口是一个Java平台中关于面向消息中间件的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信,称为JMS消息中间件;
步骤3、该区块链组织的区块链客户端将接收到的这些信息当做P2P文件下载信息的交易,并向该区块链组织的背书节点提交交易;
步骤4、该区块链组织的背书节点对交易的合法性进行校验;若校验通过,则模拟该交易的执行结果,并将模拟执行结果反馈给该区块链组织的区块链客户端,否则,丢弃该交易;
步骤5、该区块链组织的区块链客户端接收到模拟执行结果后,向所属超级账本区块链系统的排序服务节点提交该区块链客户端的签名和模拟执行结果的交易;
步骤6、排序服务节点转发这笔交易给Kafka;排序服务节点负责对交易进行打包;Kafka即卡夫卡是一种高吞吐量的分布式发布订阅消息系统,它用于处理消费者规模的网站中的所有动作流数据;
步骤7、排序服务节点订阅Kafka所发布的包含区块链客户端签名的交易,并对交易进行排序生成区块后,广播区块给所属超级账本区块链系统的各个区块链组织的主节点;
步骤8、每个区块链组织的主节点分别校验区块里面的交易的合法性;若校验通过,则主节点将该区块同步到同一个区块链组织的背书节点和记账节点中,否则,丢弃该交易;
步骤9、背书节点和记账节点在与主节点进行区块同步过程中,背书节点和记账节点同时对交易的合法性进行校验;若背书节点和记账节点均校验通过,则将该交易保存到该记账节点、背书节点和主节点对应的区块链组织中,否则,丢弃该交易;
步骤10、下载用户使用浏览器从种子服务器下载所需下载的P2P文件的种子,并该种子导入到相应的下载节点,下载节点开始下载,直到下载任务完成;
步骤11、下载节点将自身的IP地址、下载完成时间、下载的P2P文件名和下载用户信息经由JMS消息中间件自动发送给该下载节点所对应区块链组织里面的区块链客户端;
步骤12、溯源用户把P2P文件名输入任意一个区块链组织的区块链客户端;
步骤13、区块链客户端与其对应的区块链组织中安装有智能合约的节点进行通信;
步骤14、安装有智能合约的节点调用智能合约,并向该安装有智能合约的节点所属的区块链组织发起查询请求;如果查询成功,则并将历史信息返回给安装有智能合约的节点,否则,将空值返回给安装有智能合约的节点,中止查询;
步骤15、安装有智能合约的节点将所查询到的P2P文件的历史信息返回给区块链组织的区块链客户端供溯源用户查看。
2.根据权利要求1所述的基于区块链的对等系统文件溯源方法,其特征是,安装有智能合约的节点为区块链组织的主节点、背书节点或记账节点。
CN201910131469.1A 2019-02-22 2019-02-22 基于区块链的对等系统文件溯源方法 Active CN109918867B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910131469.1A CN109918867B (zh) 2019-02-22 2019-02-22 基于区块链的对等系统文件溯源方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910131469.1A CN109918867B (zh) 2019-02-22 2019-02-22 基于区块链的对等系统文件溯源方法

Publications (2)

Publication Number Publication Date
CN109918867A CN109918867A (zh) 2019-06-21
CN109918867B true CN109918867B (zh) 2023-04-18

Family

ID=66962041

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910131469.1A Active CN109918867B (zh) 2019-02-22 2019-02-22 基于区块链的对等系统文件溯源方法

Country Status (1)

Country Link
CN (1) CN109918867B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111144133B (zh) * 2019-12-23 2023-05-26 传神语联网网络科技股份有限公司 基于区块链的翻译文稿关键词修改溯源系统与方法
CN111353177A (zh) * 2020-05-25 2020-06-30 杭州趣链科技有限公司 一种基于区块链的隐私大文件存储系统
CN117076464B (zh) * 2023-10-16 2024-01-26 中国民航信息网络股份有限公司 一种附加服务订单状态跟踪方法、装置及设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107257341A (zh) * 2017-06-21 2017-10-17 济南浪潮高新科技投资发展有限公司 一种基于区块链的学籍追溯认证方法
CN107835166A (zh) * 2017-10-31 2018-03-23 济南浪潮高新科技投资发展有限公司 一种基于区块链的高价值晶体追溯方法及装置
CN108804928A (zh) * 2018-07-09 2018-11-13 武汉工商学院 一种溯源系统中数据的安全可信任区块链及管理方法
CN109063169A (zh) * 2018-08-17 2018-12-21 福建省农村信用社联合社 一种基于区块链的客户数据管理系统
CN109064063A (zh) * 2018-09-11 2018-12-21 北京工商大学 一种基于区块链的食品安全风险溯源分析系统及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170085555A1 (en) * 2015-07-14 2017-03-23 Fmr Llc Point-to-Point Transaction Guidance Apparatuses, Methods and Systems

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107257341A (zh) * 2017-06-21 2017-10-17 济南浪潮高新科技投资发展有限公司 一种基于区块链的学籍追溯认证方法
CN107835166A (zh) * 2017-10-31 2018-03-23 济南浪潮高新科技投资发展有限公司 一种基于区块链的高价值晶体追溯方法及装置
CN108804928A (zh) * 2018-07-09 2018-11-13 武汉工商学院 一种溯源系统中数据的安全可信任区块链及管理方法
CN109063169A (zh) * 2018-08-17 2018-12-21 福建省农村信用社联合社 一种基于区块链的客户数据管理系统
CN109064063A (zh) * 2018-09-11 2018-12-21 北京工商大学 一种基于区块链的食品安全风险溯源分析系统及方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Yan Huang ; ."Drugledger: A Practical Blockchain System for Drug Traceability and Regulation".《2018 IEEE International Conference on Internet of Things (iThings) and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData)》.2018, *
基于区块链技术的中药材质量追溯研究与体系构建;徐科等;《现代计算机(专业版)》;20181115(第32期);全文 *
运用区块链技术构建数字化古籍管理体系模型的研究;高利等;《图书情报工作》;20190205(第03期);全文 *

Also Published As

Publication number Publication date
CN109918867A (zh) 2019-06-21

Similar Documents

Publication Publication Date Title
EP3704620B1 (en) System and method for blockchain-based notification
CN109936457B (zh) 区块链多方见证方法、装置、设备及计算机可读存储介质
CN108769173B (zh) 运行智能合约的区块链实现方法及设备
CN110348830B (zh) 一种基于区块链的网络系统、认证方法、设备及存储介质
KR102566892B1 (ko) 블록체인 합의 방법, 디바이스 및 시스템
JP2020144838A (ja) ビジネスプロセスシステム、ビジネスデータ処理方法及び装置
CN109918867B (zh) 基于区块链的对等系统文件溯源方法
WO2020173500A1 (zh) 一种基于公链的子链业务系统
JP2019115026A (ja) ユーザ情報の共有のための分散型台帳装置、分散型台帳方法、トランザクション情報のブロードキャスト装置及び方法
US20200267074A1 (en) Secure route identification method and apparatus
CN111314067A (zh) 区块存储方法、装置、计算机设备及存储介质
WO2021082340A1 (zh) 数据处理方法、装置、系统和存储介质
CN112883015A (zh) 区块链数据管理方法、设备及存储介质
CN113328997B (zh) 联盟链跨链系统及方法
CN110519127B (zh) 网络延时的探测方法、装置和存储介质
WO2015140745A2 (en) A system and method for managing workflows associated with a document exchanged between a first service provider and a second service provider
CN109377220B (zh) 基于区块链的传媒数据交易方法及系统、计算机存储介质
CN114567643B (zh) 跨区块链的数据流转方法、装置及相关设备
CN111835514A (zh) 一种前后端分离数据安全交互的实现方法及系统
CN110096511B (zh) 基于私有链的数据一致性验证方法、装置、设备及介质
CN114244851B (zh) 一种基于区块链的数据分发方法
CN113706313A (zh) 基于区块链的融资方法、系统及计算机可读存储介质
CN113497827B (zh) 信息共享方法及设备
CN109410049A (zh) 区块链记账方法、装置、计算机设备和存储介质
CN115378605A (zh) 基于区块链的数据处理方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant