首页 / 专利库 / 资料储存系统 / 根哈希 / 基于P2P的文件快速安全分发方法及系统

基于P2P的文件快速安全分发方法及系统

阅读:86发布:2023-03-14

专利汇可以提供基于P2P的文件快速安全分发方法及系统专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于P2P的文件快速安全分发方法,包括:a.明文文件在分发传输前进行对称加密形成密文文件并制成 种子 文件放到服务端通过P2P方式分发;b.客户端根据用户信息登录,并选择种子文件,通过P2P方式下载后进行身份验证;c.服务端向通过验证的客户分发经加密的文件加密密钥;d.客户端通过对密钥和加密文件进行对称解密获取明文文件。本发明还公开了一种基于P2P的文件快速安全分发系统,包括服务端和客户端;服务端包括 数据库 、种子文件列表 服务器 、P2P下载 跟踪 服务器和文件上传服务器;客户端包括种子文件浏览模 块 、P2P下载模块、解密模块。本方法能满足特定条件下快速且安全分发传输文件的需求。,下面是基于P2P的文件快速安全分发方法及系统专利的具体信息内容。

1.一种基于P2P的文件快速安全分发方法,包括以下步骤:
a.明文文件D在进行分发传输前进行对称加密形成密文文件C,密文 文件C制作成种子文件T,存放到服务端提供浏览下载;
b.客户端输入用户信息进行登录,并发送请求获得种子文件列表,客 户端用户选择种子文件T,在P2P下载跟踪服务器的指引下,分下载原 始密文文件C,下载完后根据登录时输入的用户信息到服务端进行身份验 证;
c.客户端通过服务端的身份验证之后,服务端向该客户端通过验证的 合法用户分发经过加密的文件加密密钥K2;
d.客户端在获取加密的文件加密密钥K2后对所述的加密的文件加密 密钥K2进行对称解密得到文件加密密钥K,再通过文件加密密钥K对加 密文件C进行对称解密,获取明文文件D。
2.根据权利要求1所述的基于P2P的文件快速安全分发方法,其特征 在于:所述的服务端保存用户信息,包括用户名和密码。
3.根据权利要求1所述的基于P2P的文件快速安全分发方法,其特征 在于:步骤b所述的客户端根据登录时输入的用户信息向服务器进行身份 验证方法包括以下步骤:
b1.客户端下载获取加密文件C后,向服务端发送身份验证请求;
b2.服务端收到身份验证请求后产生随机字符串R回复给客户端;
b3.客户端接收到服务端发送的随机字符串R后,用登录时所保存的 密码哈希值H作为AES密钥对所述的随机字符串R进行对称加密,得到 加密字符串S,发回给服务端;
b4.服务器获得S后,根据已保存的信息库中取出对应用户名的密码 哈希值H将随机字符串R进行加密后,与S进行对比,若对比结果相同, 则判断该用户为合法用户,否则为非法用户。
4.根据权利要求1所述的基于P2P的文件快速安全分发方法,其特征 在于:所述的客户端得到文件加密密钥K方法包括以下步骤:
c1.服务端将文件加密密钥K,用用户的密码哈希值H进行对称加密 后,得到加密后密钥K2,发送给客户端;
c2.客户端获得密钥K2后,用登录时所保存的密码哈希值H对其进行 对称解密,获得原始文件加密密钥K。
5.根据权利要求3所述的基于P2P的文件快速安全分发方法,其特征 在于:步骤b1中所述的身份验证请求包括了客户端用户的用户名和密码 信息。
6.一种基于P2P的文件快速安全分发系统,其特征在于包括服务端和 客户端两部分;
所述的服务端包括以下部分:
数据库:用于保存用户的基本信息、文件加密信息、种子文件信息、 用户下载信息;
种子文件列表服务器:用于保存根据加密文档形成的种子文件,并提 供客户端进行种子文件的浏览和下载;
P2P下载跟踪服务器:收集所有下载节点的下载文件、进度、地址等 信息,并告知其他下载节点;
文件上传服务器:提供完整原始文件的下载服务;
所述的客户端包括以下部分:
种子文件浏览模块:用于获取保存在服务器端的种子文件列表并进行 浏览、下载;
P2P下载模块:用于密文文件的P2P方式快速下载;并用于发送身份 验证请求,完成身份验证,获取密文文件的加密密钥;
解密模块:用于解密密文文件获得明文文件。

说明书全文

技术领域

发明涉及计算机电子文件的传输分发领域,尤其涉及基于P2P的文 件的快速安全分发方法及系统。

背景技术

当前,电子文件的传输分发有两种主要手段。一是使用传统的 HTTP/FTP下载(可以统称C/S下载模式),用户可以登录某一网站或FTP 服务器,选择相应的文件进行下载,达到文件的传输分发的目的;另一种 是使用P2P下载模式,用户事先在电脑上安装某些P2P软件,然后使用这 些软件进行文件的快速下载。
C/S下载模式和P2P下载模式一个最大的不同是,在C/S模式中,用 户只和HTTP/FTP服务器发生通信,各用户之间都是独立的;但P2P下载 模式中,各用户不仅和服务器保持通信,用户之间也有通信,各用户之间 不是独立的,而且互相下载文件内容。因此C/S下载模式中服务器是整个 系统的瓶颈,当有大量用户同时进行文件下载时,会造成下载速度变慢甚 至会导致服务器当机。而在P2P方式中则不用因为用户量过多而导致下载 变慢等问题,相反,同时下载同一文件的用户数越多,下载速度反而越快。 下载速度慢以及效率低是C/S模式相比P2P模式的劣势。
但是大多数的P2P文件共享系统都是基于Internet的匿名共享服务, 它们存在很多的安全问题。它们的共同特点是资源的互操作性,高度的自 治性、动态性、匿名性等。这是符合Internet的特点的,因为Internet由不 同接入速度、带宽可以相差数个数量级的用户、不同类型、地理距离相隔 很远的网络组成。因此这些P2P文件分发系统的开发重点在于保持它们的 通用性以符合一般用户的需求,其中包括有效的信息查询机制、数据下载 效率以及下载公平性等,而并不太考虑特定场景中文件分发过程中的安全 通讯、授权访问等问题。这样就会造成某些机密文件被非法用户获得,造 成损失。而采用C/S模式则可以较好地进行用户权限的控制,可以根据不 同的授权情况来控制用户获得文件,能够较为安全进行文件的分发传输。 可以安全地进行文件分发是C/S模式相比P2P模式的一个优势。
专利号为200710068611.X的发明专利公开了一种P2P网络信息安全 共享的系统和方法,应用该发明系统和方法,在信息安全共享过程中,不 需要在用户间建立加密的会话通道,减轻了服务器的压。其涉及到了复 杂的非对称加密技术,并且将文件进行分割加密,而且用户在获得文件加 密密钥过程中没有进行身份认证。因此实现较为复杂,且还存在一定的安 全问题。

发明内容

本发明将现有的快速P2P文件传输方式和传统的C/S下载模式中的安 全控制手段进行有机结合,从而既能够对文件进行快速传输分发,也能有 效进行安全控制,使文件安全快速地分发到合法用户。
一种基于P2P的文件快速安全分发方法,包括以下步骤:
a.明文文件D在进行分发传输前进行对称加密形成密文文件C,密文 文件C制作成种子文件T,存放到服务端提供浏览下载;
服务端保存了所有合法用户的用户信息,包括用户名和密码和密文文 件的加密密钥K;
b.客户端使用用户名和密码进行登录,并发送请求获得种子文件列 表,得到种子文件T的信息,客户端根据需要选择相关的种子文件T,在 P2P下载跟踪服务器的指引下,分下载原始密文文件C,下载完后根据 登录时输入的用户信息(即用户的用户名和密码)到服务端进行身份验证;
客户端根据登录时输入的用户信息向服务器进行身份验证方法包括 以下步骤:
b1.客户端下载获取加密文件C后,向服务端发送身份验证请求,身 份验证请求包括了用户的用户名和密码信息;
b2.服务端收到身份验证请求后产生随机字符串R回复给客户端;
b3.客户端接收到服务端发送的随机字符串R后,用登录时所保存的 密码哈希值H作为AES密钥随机字符串R进行对称加密,得到加密字符 串S,发回给服务端;
b4.服务端获得S后,根据已保存的信息库中取出对应用户名的密码哈 希值H将随机字符串R进行加密后,与S进行对比,若对比结果相同, 则判断该用户为合法用户并向合法用户发送经过加密的文件加密密钥 K2,若对比结果不相同,则验证失败,判定为非法用户,并向客户端发送 验证失败信息M。
c.客户端通过服务端的身份验证之后,服务端向该客户端通过验证的 合法用户分发经过加密的文件加密密钥K2;
客户端得到文件加密密钥K方法包括以下步骤:
c1.服务端将文件加密密钥K,用用户的密码哈希值H进行对称加密 后,得到加密后密钥K2,发送给客户端;
c2.客户端获得密钥K2后,用登录时所保存的密码哈希值H对其进行 对称解密,获得原始文件加密密钥K。
d.客户端在获取加密的文件加密密钥K2后对所述的加密的文件加密 密钥K2进行对称解密得到文件加密密钥K,再通过文件加密密钥K对加 密文件C进行对称解密,获取明文文件D。
一种基于P2P的文件快速安全分发系统,其特征在于包括服务端和客 户端两部分;
所述的服务端包括以下部分:
数据库:用于保存用户的基本信息、文件加密信息、种子文件信息、 用户下载信息;
种子文件列表服务器:用于保存根据加密文档形成的种子文件,并提 供客户端进行种子文件的浏览和下载;
P2P下载跟踪服务器和文件上传服务器:共同配合提供文件的快速分 发下载;其中P2P下载跟踪服务器收集所有下载节点的下载文件、进度、 地址等信息,并告知其他下载节点;文件上传服务器提供完整原始文件的 下载服务;
所述的客户端包括以下部分:
种子文件浏览模块:用于获取保存在服务器端的种子文件列表并进行 浏览、下载;
P2P下载模块:用于密文文件的P2P方式快速下载,且用于发送身份 验证请求,完成身份验证,获取密文文件的加密密钥;
解密模块:用于解密密文文件获得明文文件。
本发明采用BitTorrent方式作为一种快速传输文件的方式,突破了传 统C/S模式的服务器端网络带宽瓶颈约束,可以极大挖掘潜在带宽来提高 传输速度。而且本发明通过改进添加一套身份验证机制以及加密手段来保 证文件传输安全。本发明可以应用在会议、招标等场景中,在这些场景中, 可能需要根据用户不同的权限分发不同的电子文档。使用本发明方法,既 能够满足对大量用户的进行快速分发文件,又能保证文件不被没有特定权 限的下载者获得。
附图说明
图1是本发明方法的流程图
图2是本发明方法身份验证和密钥分发交互图;
图3是本发明的系统架构图;
图4是本发明方法的总体结构示意图。

具体实施方式

下面结合附图对本发明的基于P2P的文件快速安全分发方法及系统 通过实施例进行详细说明。
如图1所示,一种基于P2P的文件快速安全分发方法,包括以下步骤:
a.明文文件D在进行分发传输前采用128位密钥AES进行对称加密形 成密文文件C,同时加密密钥K在服务端文件信息表中进行记录更新;密 文文件C通过ctorrent制作成种子文件T,并通过服务端运行的ctorrent 进行做种上传,存放到服务端,开始提供种子文件和密文文件的下载服务, 文件通过P2P方式进行分发,P2P传输的方式选用了BitTorrent方式来进 行文档数据的分发下载,BitTorrent服务器采用了开源的BNBT,客户端 采用了开源的ctorrent。
种子文件T中保存了P2P下载跟踪服务器的地址信息,加密文档C 的名称、长度、文件分块长度、块数等信息。客户端根据种子文件中的这 些信息,间断性地通过HTTP/HTTPS协议向P2P下载跟踪服务器发送GET 请求,告知自己当前的下载情况,并从服务器获取其他节点的下载信息, 这样下载者之间通过P2P下载跟踪服务器获得其他下载者信息,接着下载 者之间进行通信,进行不同数据块的相互分发传输,可以快速完成文件下 载。
服务端设有用于存储用户信息的数据库,数据库中保存了所有合法用 户的用户信息,包括用户名和密码和密文文件的加密密钥K;数据库中建 立了用户信息表,包括用户名、密码MD5值(即密码哈希值H,该值的长 度为128位);用户名和密码字段都是字符串类型,用户名长度为16;数 据库中也建立了文档信息表,包括了电子文档名称及与其对应的对称加密 密钥,文档名称和加密密钥字段都是字符串类型,文档名称长度为256。
b.客户端使用用户名和密码进行登录,通过HTTP方式向服务端发送 请求获得种子文件列表并进行显示,得到种子文件T的信息,服务端开启 BNBT提供P2P下载跟踪服务,客户端的用户可以根据需要选择相关的种 子文件T,通过ctorrent开始进行BitTorrent方式的分块文件下载获取加密 文件C,客户端在下载完文件时将发送信息告知服务端进行身份验证阶 段,并根据登录时输入的用户信息到服务端进行身份验证;
在BitTorrent协议中,客户端在下载文件过程中,会周期性地向服务 端BNBT发送HTTP GET请求,告知文档下载情况以及从服务端请求获 取其他客户端下载情况。服务端则会将其他客户端下载信息通过b编码返 回给客户端。这一基本过程在BNBT和ctorrent中已经得到实现。当客户 端完成某文档的下载时,会发送带有“event=completed”参数的HTTP GET 请求,通知服务器已完成某文档下载。此时,通过修改ctorrent和BNBT, 使得在客户端完成下载后,在HTTP GET请求中添加一个参数值 “user=xxx”来通知服务器进行身份验证,其中xxx为登录时输入的用户 名。
如图2所示,客户端根据登录时输入的用户信息向服务器进行身份验 证方法包括以下步骤:
b1.客户端通过BitTorrent下载获取加密文件C后,向服务端发送身份 验证请求,身份验证请求包括了用户的用户名和密码信息;
b2.服务端收到身份验证请求后对从客户端获得下载文件名以及用户 信息进行保存,并产生随机字符串R按照BitTorrent服务端编码规则b编 码进行编码后回复给客户端;
b3.客户端接收到服务端发送的随机字符串R后,计算登录时所保存 的密码哈希值H作为AES密钥随机字符串R进行对称加密,得到加密字 符串S,同样通过HTTP GET请求,添加字段“S=xxx”发回给服务端, 其中xxx是指具体的加密字符串S;
b4.服务端获得S后,根据已保存的信息库中取出对应用户名的密码哈 希值H将随机字符串R进行加密后,与S进行对比,若对比结果相同, 则判断该用户为合法用户并向合法用户发送经过加密的文件加密密钥 K2,若对比结果不相同,则验证失败,判定为非法用户,并向客户端发送 验证失败信息M。
c.客户端通过服务端的身份验证之后,服务端向该客户端通过验证的 合法用户分发经过加密的文件加密密钥K2;
客户端得到文件加密密钥K方法包括以下步骤:
c1.服务器根据客户端发送的下载完成的文档名称,从数据库文档信息 表中获取该文档加密密钥K,用客户端的该文档的用户的密码哈希值H对 文件加密密钥K进行AES对称加密后,得到加密后密钥K2,按照BitTorrent 服务端编码规则b编码进行编码后,发送给客户端;
c2.客户端获得密钥K2后,用登录时所保存的密码哈希值H对其进行 对称解密,获得原始文件加密密钥K。
d.客户端在获取加密的文件加密密钥K2后对所述的加密的文件加密 密钥K2进行AES对称解密得到文件加密密钥K,再通过文件加密密钥K 对加密文件C进行AES对称解密,获取明文文件D。
如图3所示,一种基于P2P的文件快速安全分发系统,其特征在于包 括服务端和客户端两部分;
所述的服务端包括以下部分:
数据库:用于保存用户的基本信息、文件加密信息、种子文件信息、 用户下载信息;
种子文件列表服务器:用于保存根据加密文档形成的种子文件,并提 供客户端进行种子文件的浏览和下载;
P2P下载跟踪服务器:收集所有下载节点的下载文件、进度、地址等 信息,并告知其他下载节点;
文件上传服务器:提供完整原始文件的下载服务;
P2P下载跟踪服务器和文件上传服务器共同配合提供文件的快速分发 下载;
所述的客户端包括以下部分:
种子文件浏览模块:用于获取保存在服务端的种子文件列表并进行浏 览、下载;
P2P下载模块:用于密文文件的P2P方式快速下载;并用于发送身份 验证请求,完成身份验证,获取密文文件的加密密钥;
解密模块:用于解密密文文件获得明文文件。
基于P2P的文件快速安全分发系统总体结构示意图如图4所示,明文 文件在服务器端完成对称加密,形成密文文件;将用户的基本信息、文件 加密信息、种子文件信息、用户下载信息保存在数据库中;在种子文件列 表服务器、P2P下载跟踪服务器和文件上传服务器的支持下密文文件通过 BitTorrent协议进行P2P方式的快速分发。客户端完整获得密文文件并通 过服务端身份验证后,从服务器处安全获取文件加密密钥,解密密文文件, 重新获得明文文件。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈