P2P技术与互联网安全
电信研究院标准所 高级工程师 谢玮
一、P2P的核心理念和技术优势
P2P(Peer to Peer)技术,是互联网业务网构架的一种理念。基于P2P技术开发的各种互联网应用,都可以看作是在目前实际网络之上的通过应用层查询和路由机制实现的覆盖网(overlay-network)的一种。
P2P网络通常不存在中心节点(或中心服务器),当然在少数具体应用中,为了一些特定功能(例如,登记注册),也会设置一个单独的服务器。每一个参与P2P应用的节点(用户主机)都会同时担负信息提供、查询、获取等各种功能,它们的权利和义务都是完全对等的。“人人为我、我为人人”是P2P网络的核心理念。
实际上,基于P2P技术的应用在网络中的流行,是互联网发展历程中一个非常有趣的轮回。互联网最初的设计思路,就是建立一个可以让主机间自由共享信息的网络。很多早期的应用都有着P2P的影子,例如Telnet 、Usenet 等。后来,WWW应用将互联网带到了全世界,以服务器为中心信息共享方式才成为了网络的主流。P2P技术的再次回归是从著名的下载应用Napster开始的,虽然最初的先驱变成了先烈,但是它所带回的P2P的理念却重新在互联网中的得到了新生。P2P技术的应用领域已经从最初的文件下载,已经扩展到了点对点通信、游戏等方面,同时也有力的带动了原先一直徘徊在实验室里的基于P2P开发的各种新型科研成果走向商用的步伐,比如,互联网分布式海量存储、网络计算能力共享、可以应用于网络电视业务的P2P应用层组播等等。
P2P技术从根本上改变了用户主机的角色和地位,进一步发掘了用户主机中空闲的资源,使其服务于大众,应该说为创建高效的信息共享网络提供成功的范例,是非常符合互联网端到端透明、开放、平等的设计理念的。
相比较传统的C/S模式,P2P具有很多良好的技术特性,可以以较低的成本解决原有互联网应用中很多难题。例如:
¨ 解决业务应用扩展过程中的硬件瓶颈和扩展成本问题
在P2P网络中,每个参与者都会自动承担一部分信息提供者的角色,并且将自身的硬件资源贡献出来,以扩充业务网的整体性能。也就是说,随着业务应用的扩展,用户的增加,提供服务的硬件资源也在自动平滑的补充进来,始终保持着一个较为平衡的状态。而且,资源的增加是每个参与者的自动行为,没有成本、资金的困扰。因此理论上,采用P2P技术的业务应用的扩展根本不存在资源瓶颈问题。
¨ 提高业务节点失效后的自动恢复效率
在传统的互联网应用中,为了提高业务网的可靠性,必须采用各种成本高昂的备份技术以防备业务/网络节点的失效。由于P2P的最初设计理念是利用用户主机来完成业务的实现,而用户主机的一个最明显的特征就是频繁的退出和加入,因此,所有P2P网络的设计者都会充分考虑到这一特征,通过良好的自适应算法在某些节点不工作的时候,自动调整网络,保证业务不受影响。
从某种角度讲,P2P模式业务网比C/S模式业务网具有更高的业务可靠性,且安全保障的成本要低的多。
¨ 提高信息存储、共享过程中的安全
安全一直是困扰互联网重要问题之一。而网络中信息的存储和共享传送安全则是重中之重。
首先,信息存储安全。一样东西如何才能保证其存放的安全性?中国有句成语“狡兔三窟”,言简意赅,说明了其中的道理。如果存在多个存放地点,自然能够提高东西的存放安全性。那么再进一步,把一样东西分成若干份,分别存在不同的地点,那安全性就更高。利用P2P技术不仅可以做到把一份文件分开存放,还可以自由的变幻存放的位置,以提高信息存储的安全性。
说到信息共享过程中的安全问题,实际上,由于利用P2P技术进行信息共享过程中,信息的流量流向,参与者都不固定,任何一次通信都可能包含许多潜在的用户,因此攻击者也很难确定其攻击/截获/篡改的目标,从而在一定程度上保证信息传送的安全。
二、P2P技术带来的网络安全隐患
在互联网的世界中,一切事物无不遵循着自下而上的发展历程,大到互联网自身,小到一个新鲜应用的发明到流行(比如博客),都是如此,这一特征使得互联网成为创新者的乐园,给予了人们在现实社会中难以获得的平等自由的空间。然而,互联网自下而上的发展特性同时也带来了一个非常大的问题,公共管理机制的先天缺失。在互联网中,用户自律是最初的基本理念之一,绝大多数技术协议的设计都是以获取最高的性能、最好的扩展性为目标,包括安全在内的很多公共政策问题很长时间以来都不是设计者/发明者最关注的问题。基于P2P的各种新应用的开发也是如此。
前面提到了,P2P的核心理念是人人平等,用户同时也承担着服务/信息提供者角色。这一特征带来的好处自不必言,但同时正是由于用户平等参与,为互联网也带来了一些新的安全问题。
¨ 去中心化带来的管理真空
这里面包括业务网自身的管理、用户的管理、内容的管理都会出现一些新的安全隐患。前面分析了P2P技术的特性优势,比如健壮性、可扩展性等等,实际上这些优点的都是由P2P技术的一个最基本特性引申出来的,这就是去中心化。P2P网络中每个节点的地位都是平等的,原本应该由网络承担的职责被分散给了每个P2P的参与者,没有集中的服务器,原本互联网中相对集中化的信息共享方式被完全颠覆。前文谈到,这样可以避免可能的瓶颈,使网络的负载能够自动保持均衡,大大提高资源利用率。但是,在一个没有中心、没有权威的环境中,任何管理策略的实施都对遇到极大的挑战。就好像在一个环境里,如果假设每个人都是嫌疑犯,安全就太难做了。
在基于P2P技术的业务网络中,通常情况下,业务的参与者都是自愿且匿名的,也就是说这些用户是不能事先假设成为完全可以信任的。在一个没有信用保证,大家都隐身匿名的环境中,各种各样的安全隐患都有可能出现。
就目前的现实状况看,几乎绝大多数互联网P2P应用的设计者和运营者都没有太多的从网络的角度考虑安全问题的解决,而是把维护安全的责任更多的推给了每一个P2P的参与者。实际上,在现有的P2P业务网络中,运营者对业务网络中的信息基本上不负任何责任,用户也只是通过本机的防病毒软件尽可能保护自身的健康。至于业务网络以及网络中传送的信息的安全监管,则出现了真空。这种做法按说也无可非议,享受多少权利就应该尽多少义务,但是如果把安全保障建立在公众的自觉、自律的基础上,在越来越接近现实的互联网虚拟社会中,显然是不牢靠的。必须参照现实社会,建立起虚拟社会的安全保障机制,其中最重要的就是针对破坏者的定位和惩戒。对于P2P技术而言,如何能够提供有效的手段保证对做坏事者的溯源,将会是决定其今后能否持续健康发展的重要因素。
同时对于政府以及互联网的行业管理者,互联网大量涌现的P2P应用也带来了监管的难题。其中最令人头疼的问题就是不良信息的传播和知识性产权冲突。
对于不良信息传播,由于对P2P应用中传送的信息缺乏有效的监听手段,可以说,P2P技术的广泛应用将大大增加对互联网不良信息监管的难度。
在P2P共享网络中普遍存在着知识产权保护问题。尽管目前Gnutella、Kazaa等P2P共享软件宣传其骨干服务器上并没有存储任何涉及产权保护的内容的备份,而仅仅是保存了各个内容在互联网上的存储索引。但无疑的是,P2P共享软件的繁荣加速了盗版媒体的分发,提高了知识产权保护的难点。如何在不影响现有P2P共享软件性能的前提下,一定程度上实现知识产权保护机制是需要解决的一个重要问题。毕竟P2P除了共享盗版软件,还可以共享相当多的有益的信息。
现在已经有一部分P2P网站与影视公司或唱片公司合作,利用P2P平台进行正版影视以及音乐的推广。比如台湾的KKBOX、华纳兄弟家庭娱乐公司在欧洲提供的Peer to Peer网络电影观看业务等。
¨ 参与者的匿名性、不固定性、无限可扩展性导致了业务安全域的建立困难
通常情况下,在互联网中,会采取为某个特定应用/群体建立安全域,以保证在某个范围内的安全。而安全域的建立一般会采用实体间认证的方式。在实体间都互相认证了解的小型网络中,要建立信任是很容易的。但是当一个网络应用扩展到常规的社会力量不再满足要求时,建立信任的难度就会变得大起来。尤其是在P2P环境中,参与应用的实体匿名性、不固定性、数量的无限可扩展性,都为P2P安全域的建立设置了的障碍。
我们必须对现有的互联网认证授权技术以及P2P技术加以改进,使其能够真正有效的用于P2P安全域的建立。
¨ 利用P2P应用,恶意代码的传播将更快、更隐蔽,更难以控制
据趋势科技统计,IM 、IRC 和 P2P 通讯有关安全威胁持续成长:2005年与 IM 、IRC 和 P2P 通讯有关的安全威胁在整体安全威胁散播媒介中占了 16%。
由于P2P网络中逻辑相邻的节点,地理位置可能相隔很远,而参与P2P网络的节点数量又非常大,因此通过P2P系统传播的病毒,波及范围大、覆盖面广,造成的损失会很大。在短时间内可以造成网络拥塞甚至瘫痪,共享信息丢失,机密信息失窃,甚至通过网络病毒可以完全控制整个网络。
由于现有的P2P应用都具有很强的防火墙穿越能力,因此将很有可能成为恶意代码的帮凶,更进一步加强它们的传播能力,更加难以控制。
¨ 网络资源占用问题
基于P2P技术的下载类应用目前的应用作为广泛,在为用户提供了更为便捷的信息共享渠道的同时,资源占用问题也使很多网络运营商非常头疼。
首先,由于某些类型的P2P应用使用了洪泛式(flooding)的查询技术,这就会导致大量的广播消息充斥整个网络,增加网络流量。其次,由于P2P类的下载应用,用户不仅下载信息,同时还会向有需要的对端上传数据,随着参与者的不断增加,也会在一定程度上增加网络中的流量。由于P2P下载类应用最大程度上开发了蕴藏在群众中的能力,包括硬件能力和信息源,建立了一个极其好用、又拥有无限信息资源的共享平台,其后果就是改变了网民们原有的网络是用方式,使得在很短时间内,下载类的数据流很快超过了其他类型的数据流,同时也改变了原有互联网数据流的突发特性。因此原本以流量突发特性为依据建立的原有的网络设计和成本投入立时显得力不从心了。
客观的讲,P2P下载类应用极大的释放了终端用户使用互联网网络资源的潜力,使网络中数据的流量流向趋于均衡,应该是一种更为先进的应用模式。但是在现有互联网网络条件(大收敛比的网络设计)和运营模式(基本上都是包月计费,按时长计费)下,依靠运营商单方面扩容来满足这类应用对网络资源的需求,可能是运营商难以接受的。
三、面对P2P,我们的态度
前文,从正反两方面分析了P2P技术的特性。抛开安全和资源占用问题不谈,应该说P2P是一种先进的、代表未来技术发展方向的技术。有人甚至预言,P2P技术可能会带来整个社会的信息传播的革命。至少从国际上始终站在互联网技术前沿领先地位上的各大信息技术科研机构,目前都在积极开展围绕P2P的各个领域的新技术、新应用的研究和试验。包括美国PlanetLab计划中的Tapestry DOLR网络和Oceanstore项目等等
对于P2P,作为技术研究者,积极的寻找其最适合的应用领域、加紧研究相关的安全技术使其能够更加完善是我们摆在我们面前的重要课题。
长远的角度讲,研究如何在P2P环境中建立一整套有效的安全机制是一个方向。在目前的技术条件下,尤其是目前互联网本身的安全机制都很不完善的情况下,如何找到P2P最适合的应用环境也是很有意义的。P2P最大的优点就是自组织、健壮、建设成本和管理成本都很低,业务防攻击能力强。在业务应急和灾难备份领域最需要就是这些特性。例如利用P2P技术,可以以很低的成本、很快的速度迅速建立起一套应急通话系统,它完全可以作为正常的网络通信业务的应急备份,当业务服务器出现问题是,仍然可以让用户之间进行通信。其次,利用基于P2P技术开发的网络分布式数据存储应用(典型的如OceanStore),可以大大降低企业进行网络数据灾难应急备份的成本,并且提高备份数据的安全性。