(计算机应用技术专业论文)基于对等组的p2p安全通信体系的设计与实现.pdf_第1页
(计算机应用技术专业论文)基于对等组的p2p安全通信体系的设计与实现.pdf_第2页
(计算机应用技术专业论文)基于对等组的p2p安全通信体系的设计与实现.pdf_第3页
(计算机应用技术专业论文)基于对等组的p2p安全通信体系的设计与实现.pdf_第4页
(计算机应用技术专业论文)基于对等组的p2p安全通信体系的设计与实现.pdf_第5页
已阅读5页,还剩48页未读 继续免费阅读

(计算机应用技术专业论文)基于对等组的p2p安全通信体系的设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 i 摘摘 要要 对等网(简称 p2p)技术是近年来业界研究与关注的一个热点,应用领域广泛, 未来发展前景十分广阔。但是,p2p 技术在发展过程中,也产生了一系列急需研究和 解决的问题,通信安全就是其中重要问题之一。由于 p2p 网络自身的特点,使得解 决 p2p 安全通信问题十分复杂。节点需要在一种无在线认证、动态、分散的网络环 境中确立通信对方身份,建立机密通信渠道,安全、完整地将秘密信息传输到对方。 当前在解决 p2p 安全通信问题中比较成熟的技术是 java 平台下的 jxta 技术,但 对特定的 p2p 应用,jxta 技术欠缺通用性、灵活性。 论文主要研究解决.net环境下混合式p2p网络中协同计算应用的节点安全通信 问题。混合式 p2p 网络复杂的网络结构增加了解决访问权限控制、身份认证和加密 渠道建立等与通信相关的安全问题的难度。论文对混合式 p2p 网络结构特点、安全 对等组理论和传统网络安全技术进行了研究分析,提出了基于对等组为混合式 p2p 网络构建安全通信体系的设计思想:通过证书授权机制,将参与 p2p 协同计算应用 的授权节点构建成一个逻辑对等组,运用基于数字证书的身份认证机制对对等组节 点进行身份认证,对组内节点通信进行对称加密和数据完整性验证,实现对等组节 点间的安全通信。论文对在混合式 p2p 网络环境下,安全通信体系的构建和实现方 法进行了研究,给出了基于对等组的授权、身份认证、加密通信等安全机制在.net 平台下的具体实现过程。 关键词:关键词:对等网,安全对等组,授权,身份认证,加密通信,完整性验证 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 ii abstract the study of peer-to-peer(p2p) technology is a hot topic in recent years that has widespread applications, very broad prospects for future development. however, the p2p technology in the course of development, produced a series of urgent problems need to solve. in these problems, secure communication is an important issue. because of the p2p networks structural characteristics, solving the secure communications problems is very complicated. nodes need to establish identity of the other communications, establish secret communication channel and transmit secret information to other side securely and integrally in a non-line authentication, dynamic, decentralized network environment. current mature technology to solve p2p secure communication is jxta, but it lacks universality and flexibility for particular p2p applications. this thesis subject is to solve the secure communication issue of cooperative computing in hybrid p2p network based on .net platform. the increasing complexity of hybrid p2p network structure increases the difficulty to solve secure communication issues, such as: access control issue, authentication and how to establish secure communication channels etc. after analyzed and explored the characteristics of hybrid p2p network, the theory of secure peer group and traditional network security technology, this thesis presents the master plan of building a secure communication system for hybrid p2p network based on peer group, that is: by authorization mechanism based on digital certificate, constructing the authorized nodes into a secure peer group, using digital certificate to support the identity authentication of peer nodes, using cryptographic communication by symmetric keys and data integrity verification methods to ensure peer nodes secure communication. this thesis explores the realization of constructing secure communication system in hybrid p2p network and presents the methods which based on peer group to realize authorization, authentication, cryptographic communication mechanisms on .net platform. key words: p2p, secure peer group, authorization, authentication, cryptographic communication, integrity verification 独创性声明独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个人或 集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在 文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。 学位论文作者签名: 日期: 年 月 日 学位论文版权使用授权书学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权 保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。 本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检 索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密 ,在_年解密后适用本授权书。 本论文属于 不保密。 (请在以上方框内打,) 学位论文作者签名: 指导教师签名: 日期: 年 月 日 日期: 年 月 日 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 1 1 绪绪 论论 1.1 引言引言 随着现代计算机计算、存储性能,网络带宽等硬件技术的不断革新,计算机网 络已深入到政府、军事、文教、生活等诸多社会领域,成为社会发展的重要保证, 越来越多的信息在网络中存贮、传输和处理。有关专家统计,现在每年互联网都会 增加 21018b 的内容,但大概只有 31012b 内容能为公众所用,只相当于总量的 0.00015%,即便是 google 这种功能强大的搜索引擎也只能查找 1.3108b 的内容,有 许多信息还是临时的,要想实时搜索更加困难。虽然许多国家都致力于解决网络带 宽和处理器计算能力,每根光纤的带宽自 1975 年以来每 16 个月就能翻番;处理器 速度越来越快,存储设备容量越来越大,使得网络终端的处理能力相当强大,但带 宽并没有被充分利用到,拥挤的地方还是拥挤;计算还是主要集中在数据中心,使 中心的负载几乎达到极限,而其余终端上的计算能力却大量闲置。为方便资源共享 和定位,在广域网和 internet 环境下,人们提出了多种解决方法,如:分布式数据库 系统、多数据库系统、信息集成、虚拟数据库、数据网格等。但如何充分利用网络 中现有软硬件资源,如何充分挖掘网络资源的潜能,一直未得到很好的解决。p2p 网络与相关技术的出现,为解决上述问题打开了新的突破口。 p2p网络是一种具有较高扩展性的分布式系统结构, 其对等概念是指网络中的物 理节点在逻辑上具有相同的地位,而并非处理能力的对等。p2p技术实质在于将互联 网的集中管理模式引向分散管理模式,将内容从单一节点引向网络的边缘,从而充 分利用互联网中众多终端节点所蕴涵的处理能力和潜在资源。从技术上讲,p2p打破 了传统的客户机/服务器模式,每个节点的地位都是相同的,每个节点既可充当服务 器,为其他节点提供服务,同时也可充当客户机,享用其他节点提供的服务,节点 之间可以直接交换资源和服务而不必通过服务器; p2p的分布式结构则是为有效均衡 负载,充分利用带宽并挖掘计算机空闲的计算能力提供了可能,特定的信息组件可 被有效地放置和分享;而p2p网络不依赖中心服务器,自主进退的特点也克服了传统 网络的单点失效的弊端, 具有更强的适应性和自愈性。如果说internet实现了计算机 硬件的互联和web资源的共享交流,那么p2p技术的诞生,则要实现的是包括信息资 源与计算资源、存储资源、通信资源等大量资源的全面贯通。 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 2 1.2 课题研究的背景与意义课题研究的背景与意义 1.2.1 课题研究的背景课题研究的背景 目前,p2p网络的应用领域越来越广泛,例如:网络社区、电子商务、游戏、并 行计算、协同工作、搜索引擎、病毒防护等等。根据国内外p2p网络应用的发展现状, 从功能角度来说,可以将目前的p2p网络应用主要划分为:对等计算、文件共享、协 同工作、信息检索和即时通讯等几个方面。 (1) 对等计算 对等计算可以充分地把网络中多台计算机暂时不用的计算能力结合起来,使用 积累的能力执行超级计算机的任务。本质而言,对等计算就是网络上cpu资源的共 享。目前,最成功的应用实例是setihome1。 (2) 协同工作 协同工作是指多个用户之间利用网络中的协同计算平台来共同完成某项任务, 共享信息资源等。采用p2p技术,任意两台pc之间都可建立实时联系,创建安全、共 享的虚拟空间,进行交互活动。比较有代表性的应用实例是groove2。 (3) 文件共享 传统的web方式中,要实现文件交换需要web服务器的大力参与,通过将文件上 传到某个特定的网站, 用户再到该网站搜索需要的文件, 然后下载。 而在p2p网络中, 每个用户都可以直接发布共享信息,使大范围的文件交换变得极为容易。这些应用 系统有napster3, gnutella4和freenet5。 (4)信息检索 p2p网络技术使用户能够深度搜索文档,而且这种搜索无需通过web服务器,也 可以不受信息文档格式和宿主设备的限制,可达到传统目录式搜索引擎无可比拟的 深度。这使p2p网络技术成为当前的一个热点技术,著名的搜索引擎公司google就宣 称要采用p2p网络技术来改进其搜索引擎。 (5) 即时通讯 p2p技术当前最为流行的应用是即时通讯。 如采用p2p技术的im, msn messenger, yahoo messenger和腾讯qq等软件,允许用户进行在线多方讨论,可以传送文本、语 音和图像等。 湖北省自然科学基金项目“数据库知识发现基于p2p的查询分解研究”是一 项将数据挖掘和知识发现技术与p2p技术相结合,研究实现p2p结构的数据库环境下 基于数据库表的数据分解、查询和合并的新技术项目,涉及到p2p技术应用的并行计 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 3 算、协同工作以及搜索引擎等多个领域,该技术在p2p研究领域和数据挖掘研究领域 应用前景十分可观。 1.2.2 课题研究的意义课题研究的意义 当前, p2p网络的应用非常广泛, 这些应用给广大用户带来了极大的便利和享受, 取得了很大的成功。但是,同任何一种新兴技术一样,p2p网络还不够成熟和完善, 存在着很多有待解决的问题,如:路由问题,信息检索问题,带宽占用问题,知识 产权问题和安全问题等等。在上述问题中,安全是各种p2p网络应用都必须面临的一 个关键问题,而且在很大程度上决定了p2p网络应用的进一步发展。 在p2p 网络中,因为去中心化特点,p2p网络存在着很大的不确定性,对等点随 时可以加入或退出网络,在大多数情况下节点不易确定临近节点的身份及收到信息 的可信度。由于在p2p网络中节点的硬盘数据需要被其他节点不可见地访问,节点用 户安全意识的缺乏以及p2p协议和pc操作系统的安全漏洞使得节点很容易受到黑客 攻击。文献68均从网络拓扑结构着手,通过设定和根据一定规则修改节点信任值 (或名誉值),将可信度高的节点组成一个逻辑上的信任网络,较好地解决了冒名 顶替和协同作弊等问题。然而,这些文献对p2p通信过程中安全问题的研究甚少。事 实上,由于p2p网络的开放性和动态性、节点行为的自主性和临时性,如果不采取安 全措施,即便是可信程度高的节点间的通信过程也可能遭到网络攻击。在一些诸如 军事和电子商务等重要的p2p应用中,多是跨地域,依靠公众网传输秘密信息,通信 过程的安全显得尤为重要9。因为开放和自治的特点,p2p网络在通信过程中随时都 可能会面临如下的安全威胁: (1) 数据截收。也可称为消极攻击方式,网络攻击的主要目的是通过使用黑客工 具如网络分析仪(snifer)搭线窃听,截取信息包,加以分析,得到商业机密或其他有 价值的信息10。 (2) 假冒欺骗。一种积极主动的攻击方式,能够破坏两台机器之间正常的数据通 信并可能篡改数据。入侵者伪装成另一台不同的主机,和特定主机进行通讯。其目 的是哄骗网络中的其它机器将入侵者当作原始机器而接受诱使其它机器向他发送数 据或允许他修改数据。 (3) 中间人攻击11。一种针对加密数据通信的攻击方法。入侵者隐藏在通信双方 数据传输必经之处,在双方均未察觉的情况下,截获一方加密数据,经过解密处理, 得到有价值信息,然后重新加密,发送给另一方。中间人的存在是数据加密机制的 主要威胁。 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 4 (4) 拒绝服务12。通过向指定主机发送大量没有意义的信息包, 导致对方正常的 网络功能无法发挥。这是一种完全恶意的网络攻击,会给被攻击对象造成巨大经济 损失。 根据对p2p网络通信安全威胁的分析, 研究解决p2p网络安全通信问题对p2p网络 技术的深层次推广使用意义十分重大。 1.3 课题的国内外研究现状课题的国内外研究现状 1.3.1 p2p 开发平台技术研究开发平台技术研究 虽然许多早期的p2p应用系统得到了推广应用, 但没有考虑很多的安全问题。 如: napster不能保证共享内容确实是mp3文件,曾经发生过用户将其他类型文件伪装成 mp3文件进行传输的事例;setihome虽然对节点进行评估,但还是发现有节点对 系统进行了欺骗。后来发展的一些p2p网络应用系统,如groove等,虽然拥有自己的 安全机制,但是它们都是针对特定的应用,不具有通用性,而且安全功能有限,不 能成为p2p网络安全问题的通用解决方案。随着p2p应用的发展,一些国际大公司推 出了自己的p2p应用开发平台,试图为p2p应用提供标准化,通用的安全技术,如: intel公司的ptptl13 ( peer to peer trust library)平台和sun公司的jxta1417平台等。 (1) ptptl平台 intel的ptptl平台建造在openssl18工具包上, 提供对数字证书、 对等节点认证、 安全存储、公私钥加密、对称加密及数字签名等的技术支持。ptptl专门提供了一组 安全程序包来保证p2p应用的安全,包括提供认证服务的identity、提供加密服务的 store和提供密钥管理服务的key程序包等,并且提供了一些c+ api以方便程序员使 用现有的安全服务设施,如:ptptl允许程序员在自己的程序中利用现有的openssl 程序包开发基于ssl的安全p2p应用等。但ptptl没有给出p2p网络应用对于一些通用 问题的解决方法,比如:资源发现、跨域通信等问题,因此不具有普遍性。 (2) jxta平台 鉴于p2p技术的迅猛发展,2001年sun公司提出了jxta(juxtaposition:并列、并 置)技术,希望能解决目前p2p开发应用中互操作性(提供不同的p2p服务,使得对等 节点之间可以相互定位、通信)、平台无关性(与语言、传输协议、部署平台无关) 和广泛性(可以为任何具有“数字心脏”的设备所使用,例如:移动电话、pda等, 不局限于pc机)等问题。jxta是为构建p2p网络而制订的一组协议,由六个协议组 成,这些协议是专为特定的、分布式的、对等的网络计算而设定的。通过这些协议, 对等节点可以互相合作来建立自我组织、自我管理的对等组,而不必关心它们在网 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 5 络中所处的位置(在网络边缘或者防火墙的后面), 并且也不需要集中的管理机构 19。 这六个协议分别是: (a) 对等点发现协议peer discovery protocol (pdp):用于在对等组发现关于任意 节点的广告。 (b) 管道绑定协议pipe binding protocol (pbp):对等节点使用此协议来建立到其 它对等体的通信。 (c) 对等节点信息协议peer information protocol (pip):在一个对等节点被确定 后,它的能力和状态可以被查询。此协议提供了一系列消息来获取对等节点 相关信息。 (d) 对等节点解析协议peer resolver protocol ( prp ):此协议在对等组内传播一 般性查询并识别和返回匹配的结果。 它为建立更高层解析器服务提供了本质 的查询、回应架构。 (e) 端点路由协议peer endpoint protocol (pep): 此协议为消息发送提供到达目的 对等体的路径。通过在对等体路由器间互发查询、请求协议消息完成。对等 体路由器在提供最基本的路由功能的同时为实现高级的路由功能提供了接 口。 (f) 集合点协议rendezvous protocol ( rvp ):此协议负责在对等组内传播消息, 其他协议大量使用此协议提供的功能来完成消息传播。 jxta的对等组(peer group)思想15对于p2p网络安全有着重要意义。对等组是 jxta运行的一个基础。在jxta中,服务是与对等组关联的。服务在组内发布,对 等点只有在成为了某个组的成员后才能访问该组的服务。对等组提供的核心服务有: 发现服务(discovery service)、成员资格服务(membership service)、访问服务(access service)、对等点认证服务(peer authentication service)、管道服务(pipe service)、解 析服务(resovler service).监控服务(monitoring service)等。 jxta架构本身并没有提供安全服务,但可以采用javacard.security安全服务程序 包或jdk中的jsee(java安全套接字扩展)来实现安全p2p应用。 javacard.security 提供 了对公钥技术、对称密钥技术和安全散列技术的支持,而jsee则提供了对ssl 协议 的完整实现。在jxta框架核心层,jxta提供了对p2p应用与服务安全的核心支持, 如:生成或删除一个对等组,并使其他对等点能发现、参加或退出对等组,在节点 之间提供管道通信,设立对等实体监视器来控制一个对等组中某个节点的行为等。 2000年8月, intel、 ibm和hp等公司发起成立了p2p工作组, 目标集中在研究p2p 技术标准、安全性及可靠性等20。目前p2p工作组已经和全球网格论坛ggf (global 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 6 grid forum,一个开发高级的分布式计算技术的组织)合并,成立了统一的分布式计 算标准组织。gcf的安全工作组正在几个领域的标准化方面开展工作,这些工作包 括为网格计算领域设计通用的认证标准,为网格计算的安全基础设施做标准化方面 的工作,而p2p安全问题的解决也将从中受益。 1.3.1 安全通信隧道技术研究安全通信隧道技术研究 当前与p2p安全通信研究相关的一个重要领域是通过标准协议研究开发安全隧 道技术,主要用到的协议是传输层的ssl协议21和tls协议22和ip层的ipsec23协议 等。 (1)ssl协议 ssl(secure socket layer)是netscape制定的安全套接层协议, 是一个介于tcp 和 应用层协议之间的一个可选层协议。 ssl使用公钥和传统加密技术在tcp 层之上实 现了一个安全的加密隧道,保证了信息传输的机密性和完整性。ssl主要包括两个协 议:ssl记录协议和ssl 握手协议,ssl记录协议主要用于定义数据的传输格式,而 ssl 握手协议用于在两个实体之间安全地协商一个秘密密钥以及相关的加密算法。 (2)tls协议 tls(transport level security)是ietf24制定的传输层安全标准。tls的基本设计 目标是为两个通信实体之间提供数据的机密性和完整性。它位于传输层和应用层之 间,能够在网络上提供保密通道以防止窃听、假冒和信息伪造。通过应用程序的支 持来提供网络上两个应用程序通信的安全保障。 (3)ipsec协议 ipsec产生于ipv625的制定过程中, 由ietf在1995年制定。 ipsec是一整套协议包, 集合了多种安全技术,为ip层建立一个安全通信隧道。由于所有支持tcp/ ip协议的 主机进行通信时,都要经过ip层的处理,所以解决了ip层的安全就相当于为整个网络 提供了安全通信的基础。ipsec协议弥补了ip层的安全缺陷,定义了针对ip分组(信息 分组)的加密标头和验证标头,以及如何添加和拆分这些标头。ipsec主要功能为加密 和认证。为了进行加密和认证,ipsec还需要有密钥的管理和交换功能,以便对加密 和认证提供所需要的密钥并对密钥的使用进行管理。 上述技术为解决p2p节点之间的安全通信提供了理论上的支持。例如:ssl中基 于itut (国际电信联盟) 的x.509 数字证书26的双向认证机制能够为p2p网络中各节 点之间的安全通信提供透明认证。 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 7 1.4 论文的主要研究内容论文的主要研究内容 p2p 技术的广泛应用,对 p2p 节点的通信安全提出了越来越高的要求,而 p2p 结构的逐渐复杂化,也不断增加了解决 p2p 安全通信问题的难度。对等点需要在无 中心认证服务器、网络结构动态变化、节点之间互相陌生的环境中确定通信对方的 身份,与对方建立加密渠道,安全、完整地进行数据传输。混合式 p2p 网络与传统 c/s 模式网络存在着根本上的差别,和集中目录式 p2p 网络、纯分布式 p2p 网络结 构也大不相同。节点在网络中的地位存在着较大差异,不同位置的节点间的从属关 系、通信方式各有不同,这使得解决混合式 p2p 安全通信问题尤为复杂。本课题的 研究目的是在.net 平台下实现混合型 p2p 网络下协同计算应用的安全通信问题。根 据课题需要,主要对如下几方面内容展开研究: (1) 理论基础研究。主要是混合式p2p网络结构研究和安全对等组理论研究。网 络结构是p2p应用的基础,研究p2p安全通信问题,必须首先清楚所针对的网络模型 的特点;而安全对等组理论是论文设计解决混合式p2p网络节点安全通信的基础。需 要对安全对等组的原理、作用和实现方法进行研究分析。 (2) 技术基础研究。主要研究传统c/s网络模型下的网络安全技术。这些技术的 工作原理和实现方法对论文研究混合式p2p网络下的安全通信技术提供了重要借鉴 意义。 (3) 对解决混合式p2p网络下安全通信问题方法的研究。主要研究借鉴安全对等 组和传统网络安全技术理论思想,解决实际混合式p2p网络中的节点安全通信问题。 这是论文的重点和难点。 (4) 研究对等组内节点通信的具体实现过程。在混合式p2p网络中,节点所处位 置不同,决定了通信方式的不同以及在通信过程中的地位不同。在实际p2p环境中, 节点端到端直接通信通常都会面对nat服务器或代理服务器穿透问题。因此,需要 研究解决p2p网络中nat或代理服务器的穿透问题。 1.5 论文的组织结构论文的组织结构 论文共分五个部分,各部分的内容组织如下: 第一章 介绍了课题的研究背景和意义、国内外研究现状、课题的主要研究工 作和论文的组织结构。 第二章 与课题相关的基本理论和技术研究 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 8 第三章 基于对等组的p2p网络安全通信体系的设计 第四章 基于对等组的p2p网络安全通信体系的实现 第五章 结束语 最后是致谢和参考文献。 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 9 2 课题相关理论和技术课题相关理论和技术 本章主要对混合式p2p网络结构、 安全对等组理论和网络通信关键安全技术进行 了了研究分析,为课题总体设计思想的提出和实现提供理论和技术基础。 2.1 混合式混合式 p2p 网络网络 从网络拓扑模型上讲,p2p网络发展主要经历了三个阶段:从集中目录式模型到 纯分布式模型再到混合式模型。集中目录式模型在交换数据时通过中央服务器来进 行目录管理,如:napster。由于采用集中式目录管理,因此不可避免地存在单点瓶 颈的问题。纯分布式模型去掉了中间服务器,节点之间更接近于绝对的自由,如: gnutella。因为去掉了中间服务器,形成的纯分布式p2p网络很难进行诸如安全管理、 身份认证等控制。混合式模型在纯p2p分布式模型基础上引入了超级节点的概念,综 合了集中式p2p快速查找和纯p2p去中心化的优势, 典型代表是kazaa27模型, 网络模 型如图2.1所示。 图图 2.1 kazaa 模型模型 kazaa模型将节点按能力不同(计算能力、 内存大小、 连接带宽、 网络滞留时间等) 区分为普通节点和搜索节点两类(也有的进一步分为三类节点,其思想本质相同)。其 中搜索节点与其临近的若干普通节点之间构成一个自治的簇,簇内采用基于集中目 录式的p2p模式, 而整个p2p网络中各个不同的簇之间再通过纯p2p的模式将搜索节点 搜索节点 普通节点 簇 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 10 相连起来,甚至也可以在各个搜索节点之间再次选取性能最优的节点,或者另外引 入一新的性能最优的节点作为索引节点来保存整个网络中可以利用的搜索节点信 息,并且负责维护整个网络的结构。由于普通节点的文件搜索先在本地所属的簇内 进行,只有查询结果不充分的时候,再通过搜索节点之间进行有限的泛洪。这样就 极为有效地消除纯p2p结构中使用泛洪算法带来的网络拥塞、搜索迟缓等不利影响。 同时,由于每个簇中的搜索节点监控着所有普通节点的行为,这也能确保一些恶意 的攻击行为能在网络局部得到控制,并且超级节点的存在也能在一定程度上提高整 个网络的负载平衡。 总的来说, 基于超级节点的混合式p2p网络结构比以往有较大程度的改进。 然而, 这种局部索引的方法仍然存在一定的局限性。 这导致了一种结构化的p2p混合网络模 型的出现。所谓结构化与非结构化模型的根本区别在于每一簇的搜索节点所维护的 邻居是否能够按照某种全局方式组织起来以利于快速查找。 结构化p2p模式是一种采 用纯分布式的消息传递机制和根据关键字进行查找的定位服务,目前的主流方法是 采用分布式哈希表(dht)技术,这也是目前扩展性最好的p2p路由方式之一。由于 dht各节点并不需要维护整个网络的信息,只在节点中存储其临近的后继节点信息, 因此较少的路由信息就可以有效地实现到达目标节点,同时又取消了泛洪算法。该 模型有效地减少了节点信息的发送数量,从而增强了p2p网络的扩展性。同时,出于 冗余度以及延时的考虑,大部分dht总是在节点的虚拟标识与关键字最接近的节点 上复制备份冗余信息,这样也避免了单一节点失效的问题。 dht类结构最大的问题 是dht的维护机制较为复杂,尤其是结点频繁加入退出造成的网络波动会极大增加 dht的维护代价。dht所面临的另外一个问题是dht比较容易实现精确关键词匹配 查询,但难于实现内容/语义等复杂查询。 目前基于dht的代表性的研究项目主要包括加州大学伯克利分校的can28项目 和tapestry29项目, 麻省理工学院的chord30项目, 以及微软研究院的pastry31项目等。 2.2 p2p 安全对等组安全对等组 在p2p网络中,由于各个对等点随时都可能动态地加入或退出网络,因此网络存 在很大的随机性和不确定性。大多数情况下,对等点都无法确定通信对方身份及其 可信度。为解决通信节点间的信任关系,通常做法是构建信任网络模型,如文献 7 p2ptrust7模型和文献8中提到的多粒度模型mgm(multiple-grain model) 8等。但 此类做法在处理p2p网络灵活性、动态性上问题上普遍需要付出比较大的代价。据目 前的统计数据显示,在很大一部分p2p网络应用中,尤其是在p2p协作系统中,通常 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 11 一组成员是在其内部进行相互间的文件共享和工作协作。在这种情况下,网络成员 们通常希望能够建立一个局部的安全环境,以保证其相互间能安全可靠地进行资源 共享和交互。基于此种要求,业界提出了p2p安全对等组概念。 p2p安全对等组是指提供一个通用服务的对等点的集合, 一个由多个对等点构成, 在其内部实施特定安全策略的逻辑网络实体。 安全对等组实质上就是在一个p2p网络 中充当一个虚拟专用网(vpn)。一个vpn只允许几个计算机之间互相交流,而不允许 internet上其他的成员加入,由于vpn传输上采用了加密方式,偷听者无法理解vpn 内部成员交流的信息。安全对等组也可以实现所有的这些功能。实际上也正是由于 安全对等组的存在,使得对p2p网络的安全管理成为可能。各个对等点根据需要组成 一个个对等组,对等组间根据需要还可以组成更大规模的组。利用对等组,可以在 分散结构的p2p网络中实现集中式网络的管理功能。 安全对等组技术特点主要有以下 四点: (1) 对等组提供了一种组织p2p网络并且发布组内特定服务的方式。 对等组的成 员可以无限制的相互交迭,如有必要,任何对等点都可以加入任意多个不同类型的 对等组。一个物理网络(如一个以太局域网、一个广域网的一部分等)可以包括多个对 等组,一个对等组也可以扩展到多个物理网络中,这主要由对等组根据需要自行决 定。对等点只需遵循对等组统一的安全或资源共享等要求即可参与对等组的成员活 动。 (2) 通过在p2p 网络中建立安全对等组,在对等组成员中引入特定的安全机制 (如身份认证、加密机制),实现一个相对可控的安全环境。在该环境外的对等点, 即非安全对等组成员,被拒绝加入这个环境和使用共享资源。节点加入对等组只需 通过对等组的审查机制,即可按对等组统一的安全机制管理,无须为单个节点的加 入、离开安全问题增加额外的开销。 (3) 通过建立安全对等组,实现一个可在局部范围内从事特定工作的区域。如 对等点可在安全对等组的范围内建立搜索引擎以进行共享文件的搜索,或通过协同 工作从事一项具有较高机密性的研究等。 (4) 通过建立安全对等组,实现一个具有监督机制的环境。根据安全级别的高 低,各个成员对等点的某些特定行为可以被监控并作相应记录。 2.3 传统网络安全技术传统网络安全技术 2.3.1 加密技术加密技术 密码学是研究密码系统或通信安全的一门科学,即研究对传输信息采取何种秘 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 12 密的变换以防止第三者对信息的窃取。密码学的基本功能是保证通信的秘密性。数 据加密的基本思想是通过变换信息的表示形式来伪装需要保护的敏感信息,使非授 权者不能了解被保护信息的内容。加密和解密算法的操作通常是在一组密钥控制下 进行的,分别称为加密密钥和解密密钥。一个加密系统采用的基本工作方式称为密 码体制,密码体制的基本要素是密码算法和密钥。根据密钥的特点,可以将密码体 制分为对称和非对称密码体制两种。 (1) 对称密码体制 按照加密方式的不同,又可将对称密码体制分为流密码(stream cipher)和分组密 码(block cipher)两种。在流密码中,将明文消息按字符逐位加密。在分组密码中,将 明文消息分组每组包含多个字符),逐组进行加密。常用的流密码有rc432等,常 用的分组密码是des33。 des算法是目前世界上应用最广泛的加密算法, 由ibm研制, 1997年被美国政府正式采纳,作为数据加密标准(data encryption standard),主要用 在保护金融数据的安全中。其基本思想是采用变换的组合与迭代,将明文中的各组 变为密文组。对称密码体制实现数据加解密的过程如图2. 2所示。 图图 2. 2 对称密码体制加、解密过程对称密码体制加、解密过程 对称密码体制的优点是效率高,算法简单,系统开销小,速度比非对称密码体 制快得多,适合加密大量的数据。主要不足是:发送方和接收方必须预先共享秘密 密钥,而不能让其它任何人知道,密钥的传递需要可靠通道。在网络通信中,需要 使用大量的密钥,假如网络上有n个用户,则需要n* (n-1) /2个密钥,这么多密钥的发 布、共享和管理是一个十分困难的问题。此外,每个用户必须记下与其它n-1个用户 通信所用的密钥,这么多密钥的管理对于普通用户来说也是非常困难的,同时也容 易造成安全问题。对称密码体制无法满足互不相识的人进行私人谈话的保密要求, 难以解决数字签名验证的问题。 (2) 非对称密码体制 非对称密码体制于1976年由w. diffe和m. hellman提出。 这一体制的最大特点是: 公开密钥函数基于数学函数而不是替代和置换,采用两个密钥将加密和解密分开, 一个公开作为公开密钥(public key),一个为用户专用作为私有密钥(private key),通 密文 安全信道 公共信道 明文 加密 解密 对称密钥 明文 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 13 信双方无需事先交换密钥就可以进行保密通信。公开密钥和私有密钥关系紧密,用 公开密钥加密的信息只能用相应的私有密钥解密,反之亦然。而且不能从其中一个 密钥推导出另一个密钥,要想从公开密钥分析出私有密钥,在计算上是不可能的。 因此就可以把公开密钥公开发布,而用户只需秘密保存私有密钥。任何人都可以使 用接收方公开密钥发送加密发送报文,该报文只能用相应的私有密钥解密,而该私 有密钥只有接收方才知道。非对称密码体制实现数据加解密的过程如图2.3所示。 图图 2.3 非对称密码体制加、解密过程非对称密码体制加、解密过程 非对称密码体制不仅可用于数据保密,还可用于数字签名。若以公开密钥作为 加密密钥,以私有密钥作为解密密钥,则可实现多个用户加密的信息只能由一个用 户解读,该过程可以保障数据的保密性;反之,若以用户的私有密钥作为加密密钥而 以公开密钥作为解密密钥,则可实现由一个用户加密的消息可以被多个用户解读, 这一过程即为数字签名。 rsa3435密码体制是典型的、使用最为广泛的一种非对称密码体制,它是以三 位开发人员(ronrivest, adi shamir和leonard adelman)姓的首字母大写命名的。国 际上一些标准化组织如iso, itu等均已将rsa体制作为加密标准。 虽然非对称加密机 制中,知道公钥可以得到获取私钥的途径,但实现过程很困难,通过选择足够长的 密钥,可以使其基本上不可能实现。rsa实验室提到了最近对rsa密钥长度安全性 的研究,这种安全性是基于在1995年可用的因式分解技术。这个研究表明用8个月的 努力花费少于一百万美元可能对512位的密钥进行因式分解。事实上,在1999年,作 为常规rsa安全性挑战的一部分,用了7个月时间才完成对特定rsa 512位数(称为 rsa-155)的因式分解。 另外,密钥长度增加时会影响加密/解密的速度,当模数加倍时,生成密钥的时 间平均将增加为原来的16倍,使用公钥加密的操作时间大致增加为原来的4倍,使用 私钥解密所需的时间增加为原来的8倍。由此可见rsa密钥在实际使用中会占用比较 大的计算资源。因此非对称密码术通常用于简短文本。 2.3.2 完整性验证技术完整性验证技术 明文 密文 公开密钥 私有密钥 明文 公共信道 加密 解密 公开/私有密钥对 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 14 数据完整性验证是指在通信双方对收到的信息进行验证,以保证所收到信息在 传送过程中没有被非法实体增加、删除或篡改。哈希函数(hash function)是实现数据 完整性的主要手段。哈希函数又称为散列函数,它是将任意长度的信息m作为输入, 映射成一个较短的定长输出值h,h称为哈希值或消息摘要或数字指纹。若输入的信 息m改变了,则输出的定长值h也会相应改变。哈希函数的特点是不可逆转的,即不 能从输出值h导出原来的输入值m, 但可以验证任一给定序列m是否与m有相同的输 出值。对哈希函数的特殊要求是:接受的输入报文数据没有长度限制;对输入任何 长度的报文数据能够很方便的生成该定长摘要;极难从指定的摘要生成一个报文, 而由该报文又反推算出该指定的摘要;两个不同的报文极难生成相同的摘要等。 哈希函数按是否有密钥控制划分为两大类,一类是有密钥控制的哈希函数,另 一类是无密钥控制的哈希函数。无密钥控制的哈希函数其哈希值只与数据的信息有 关,任何人都可以计算,因而不具有身份认证功能,只用于检测接收数据的完整性。 而有密钥控制的哈希函数其哈希值不仅与输入有关,而且与密钥有关,只有持此密 钥的人才能计算出相应的哈希值,因而具有身份验证的功能,如mac (message authentication code)。在报文中加入一个“报头”或“报尾”,可以实现对报文的数 据完整性验证。最常用的哈希函数是:md536 和sha 37。 (1) md5 md5是由ron rivest设计的可产生一个128位的散列值的散列算法。其基本原理 是:通过一些初始化处理,将输入文本划分成若干个512位的消息片段,然后将这若 千个消息片段分别处理成16个32位的子片段。算法的输出结果生成4个32位的消息片 段,组合起来即为一个128位的消息摘要。 (2) sha sha由nist(美国国家标准与技术研究院)颁布的一个作为国家标准的单向散 列算法,它可产生一个160位的散列值,更能够抵抗穷举的攻击,是创建数字签名的 常用的散列算法。 2.3.3 数字证书数字证书 公开密钥证书(public key certificates)简称为数字证书,是由证书管理中心ca (certificate authority)签署的一种凭证,其中包含有证书所有者的公开密钥、身份信 息以及其它属性,ca将这些信息用自己的私有密钥进行签名,使其不可伪造。任何 人只要拥有ca的公开密钥就可以对证书进行验证,从而相信用户的公开密钥。 证书中通常包括证书所有者的名字和它的公开密钥,还可以包括其它很多信息, 华 中 科 技 大 学 硕 士 学 位 论 文华 中 科 技 大 学 硕 士 学 位 论 文 15 这类证书称为扩展证书。使用扩展证书,用户不仅能得到其它人的公开密钥,还可 以得到其它的有关信息。一旦用户拥有了一个证书,就可以通过证书的交换,证实 自己的身份。 用户a想拥有自己的数字证书时,需要向证书管理中心ca发送一个证书请求, 其中包括用户的基本信息以及它的公开密钥。证书管理中心ca利用a发送的请求生 成一个特殊的报文,并用它自己的私有密钥对该报文进行签名,然后将报文和签名 返回给用户a,这两部分就组成了a的证书。 当用户b想使用a的公开密钥时,a将自 己的证书传送给b。b用证书管理中心ca的公开密钥验证证书中的签名,如果签

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论