版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要IPSec作为虚拟专用网(VPN)的实现技术之一,具有其他VPN实现技术不具备的诸多优点。IKE是IPSec体系的重要组成部分,它能够动态协商和管理IPSecSA,从而建立IPSecVPN之间安全的通讯隧道。而IKE的改进版本IKEv2进一步增强了通讯隧道的安全性。目前国内研发的同类VPN网关大都没有实现IKEv2动态密钥协商机制,国外成熟产品由于安全原因不能大规模地应用于我国的重要部门,所以研制适合我国国情的IPSecVPN系统具有很好的现实意义。本文首先简要介绍了IPSecVPN的基本原理,阐述了IKE和IPSecVPN之间的关系,同时分析了国内外同类研究的现状,并且说明了课题的来源和意义。然后,分析了IKEv2及其相关技术,提出了本课题的IPSecVPN和IKEv2实现方案,建立了全新的模块架构。在此基础之上,对动态协商模块、内核通讯模块、加密认证算法模块分别进行了设计与实现。本文通过扩展IKEv2改进了动态IP地址环境下IKEv2协商的不足,并且通过BAN逻辑分析证明了扩展方案的可靠性。另外,通过提出增加新的消息类型和扩展项,本文对PF_KEY协议第二版本进行扩展,增加了IKEv2进程和内核中安全策略数据库以及ID-IP映射数据库之间的交互能力。然后,本文分析实现了IKEv2相关的密码学算法,提出了预共享密钥认证方式的整体改进思路。最后,本文对所做工作进行了总结,并讨论了VPN和IKE的发展趋势,提出了课题下一步扩展的若干思路。关键字:IPSec,IKEv2,安全关联,PF_KEY,虚拟专用网作者:指导教师:AbstractComparetootherVPNrealizationtechnologies,IPSechasalotofadvantages.AsanimportantpartofIPSecsystem,IKEmechanismcannegotiateandmanageIPSecSAdynamically,soastobuildthesecurecommunicationtunnelsbetweenIPSecVPNs.IKEv2,theIKE'simprovededition,enhancesthesecurityoftheIPSecVPNcommunicationtunnelsgreatly.Atpresent,mostofdomesticVPNgatewayshavenotimplementedtheIKEv2dynamickeynegotiationmechanism.Andinourcountry,foreignmatureproductscannotbeusedbyimportantdepartmentsinalargescaleduetosecurereasons.SoithasmomentouscurrentsignificancetostudyanddevelopIPSecVPNsystemsthatfitinwithourcountry'ssituation.ThisarticlefirstintroducesthebasicprinciplesofIPSecVPNsimply,elaboratestherelationsbetweenIKEandIPSecVPN.Moreover,itanalyzesthepresentsituationofsimilarresearches,andexplainsthesourceandmeaningofthestudy.Then,thearticleanalyzesIKEv2andrelatedtechnologies,putforwardstherealizationschemesforIPSecVPNandIKEv2,establishesthenewmoduleframework.Basedonaboveworks,thearticledesignsandrealizesthedynamicnegotiationmodule,kernelcommunicationmodule,encryptionandauthenticationmodule.ThearticlerectifiesthedefectofIKEv2negotiationwithdynamicIPaddresstoextendIKEv2.AndthereliabilityoftheextensionschemeisprovedthroughBANlogicanalysis.Byaddingnewmessagetypesanditems,thearticleextendsthePF_KEYsecondeditiontomakeIKEv2processioncontactwithSPDandIDPDinkernel.Torectifiestheinsufficiencyofthesafetyinpre-sharedkeyauthenticationmechanism,thisarticlepresentstheimprovedscheme.Finally,itsummarizesourwork,discussesthedevelopmenttendencyofIPSecandIKE,andgivesourthoughtsaboutthefurtherwork.Keywords:IPSec,IKEv2,SA,PF_KEY,VPN WrittenbyGaoZhendongSupervisedbyZhuYanqin目录TOC\o"1-4"\h\z引言 1第一章课题概述 41.1IPSecVPN概述 41.2IKE与IPSecVPN的关系 51.3国内外研究现状 61.4课题来源和意义 91.5本文主要工作和贡献 111.6小结 12第二章协议分析和总体设计 13基本概念 132.1.1安全关联(SA) 132.1.2安全关联数据库(SAD) 132.1.3安全策略数据库(SPD) 142.2AH和ESP协议 152.3IKE协议 152.4IKEv2协议 162.5PF_KEY协议 172.5.1PF_KEY与IKEv2的关系 172.5.2PF_KEY的优势 172.6VPN与动态密钥协商机制总体结构设计 182.7小结 21第三章动态密钥协商过程 22相关消息格式 223.1.1IKEv2协商消息格式 22消息头和通用载荷头 23载荷类型 253.2IKEv2协商过程 26初始交换 26协商子SA交换 28信息交换 293.3IKEv2协商的扩展设计 293.3.1扩展方案总体思路 293.3.2提交阶段 343.3.3协商主阶段 363.3.4BAN逻辑分析证明 383.4IKEv2的实现 403.4.1总体实现思路 403.4.2提交阶段的实现 433.4.3协商主阶段的实现 453.5小结 51第四章内核通讯机制 524.1PF_KEY协议简介 524.2针对IDPD的扩展设计 544.2.1扩展项类型扩充 544.2.2消息类型扩充 554.3针对SPD的扩展设计 564.3.1扩展项类型扩充 574.3.2消息类型扩充 594.3.3扩展方案应用 614.4PF_KEY的实现 644.4.1PF_KEY协议注册 644.4.2套接字的创建和关闭 644.4.3应用层向内核发送消息 684.4.4内核向应用层发送消息 694.4.5应用层接收内核反馈消息 70小结 71第五章加密认证算法 725.1Diffie-Hellman算法 72预共享密钥认证算法 745.3RSA数字签名认证算法 755.4小结 79第六章系统测试 80网络拓扑结构 806.2IKEv2协商测试 816.2.1功能测试 816.2.2性能测试 856.3IPSecVPN整体测试 866.3.1功能测试 866.3.2性能测试 876.3.3安全性测试 906.4与国内外同类系统的比较 906.5测试结论 916.6小结 91第七章总结与展望 937.1总结 937.2展望 957.2.1VPN的发展趋势 957.2.2IKE的发展趋势 957.2.3椭圆曲线密码体制 96参考文献 97附录缩略语 101致谢 102攻读硕士学位期间公开发表的论文 103引言伴随着网络信息时代的到来,网络安全问题日益突出,已经引起全球的普遍关注。VPN(VirtualPrivateNetwork,虚拟专用网)[1]技术的产生为解决网络安全问题提供了一条有效途径。VPN可以将物理上分布在不同地点的网络通过公用骨干网(Internet)连接成逻辑上直通的虚拟子网。为了保障信息在公共网络传输的安全性,VPN技术采用了加密、认证、存取控制等措施,提供了机密性和数据完整性等安全服务,保证信息在传输过程中不被偷看、篡改和复制。由于使用Internet等公共网络相对租用专线来说,费用极为低廉,所以VPN技术能使企业通过Internet等公共网络廉价又安全地传输数据信息。IPSec(IPSecurity)[2]是VPN实现技术之一,它是IP层的安全体系结构,包括AH(AuthenticationHeader,认证头)[3]、ESP(EncapsulatingSecurityPayload,封装安全载荷)[4]和IKE(Internet动态密钥交换)[5]。IPSec使用AH和ESP这两个安全协议对数据进行安全处理,提供数据源的验证、无连接数据完整性、数据机密性、抗重播和有限业务流机密性等安全服务,利用认证、加密等安全措施为上层协议的应用提供安全保障。各种应用程序可以享用IP层提供的安全服务,而不必设计和实现自己的安全机制,降低了产生安全漏洞的可能性。VPN技术要求在物理上分离的各个网络之间建立高强度的安全通讯隧道,以保证数据能够在这个虚拟的通讯隧道中安全地传输。建立安全通信隧道的安全参数包括通讯双方的认证机制、使用的加密解密算法、密钥等,这些安全参数共同构成SA(SecurityAssociation,安全关联)。SA可以进行手工管理,也可以进行动态管理。在这两种方式中,动态协商管理方式相对手工管理方式更安全、更灵活,可以显著地提高通讯隧道的安全性。IKE协议正是实现这种动态协商管理方式的技术之一,它也是IPSec协议默认的自动密钥协商交换机制,可以用于动态地建立安全关联(SA),为通信双方协商IPSec通信所需的相关信息,例如加密算法、密钥信息、通信双方的身份信息等。IKE建立在ISAKMP定义的框架基础之上,并且实现了两种密钥管理协议OAKLEY和SKEME的一部分功能,它是建立在多个协议基础之上的混合型协议。由于IKE具有很多不足之处,例如协议复杂、理论上容易受到攻击等,所以如何改进IKE已经成为当今业界在IPSecVPN实施方案中关注的焦点。IETF一直在对现有IKE的不合理部分积极征集改进意见,其IPSec工作组也于2004年9月推出了最新的IKE第二版本的草案[6],该草案对IKE进行了全面的优化与改进,使之具有更好的性能、更高的安全性以及更清晰的协议框架。目前,以IKE第二版本取代原有的IKE已经成为业内人士的共识。另外,国内现有的大部分VPN同类产品由于底层操作系统被国外垄断,因此不具备很高的安全性。另外,目前所有的国内同类产品只是实现了原有版本的IKE协议,而在这些产品中,还有一部分虽然宣称具备IKE动态密钥协商功能,但是大部分没有通过权威机构的测评。相对而言,国外的同类研究起步较早,VPN同类产品比较成熟,对新的IKE第二版本已经推出了相关产品实现,极大地提高了VPN的安全性。但是由于国外公司对重要技术的垄断,使用非本国产品存在很多安全隐患,而国外的成熟产品由于安全原因不能大规模应用于我国的重要部门,所以研究开发一套适合我国使用的VPN相关产品具有深远意义。本课题来源于编号为BK2004039的江苏省自然科学基金项目,该基金项目的目标是在Linux平台下建立高强度的VPN安全网关核心系统。为了达到预期目标,本文主要在IPSecVPN网关系统中引入了新的IKEv2动态密钥协商机制。本文在讨论了和IKEv2相关的多种技术规范的基础上,提出了IKEv2的实现框架,并在该框架下详细讨论了相关的模块设计与实现,其中包括动态协商模块、内核通讯模块、加密认证算法模块等。在这个过程中,本文分析研究了IKEv2及其不足,提出了针对动态IP地址环境下进行协商的相应扩展方案,并对内核通讯模块中的PF_KEY协议进行了相应的扩展,增加了新的消息类型,扩充了PF_KEY协议的功能,以满足IKEv2协商进程的需要。针对预共享密钥认证方式安全性不高的弱点,本文在加密认证算法模块中提出了将密钥共享思想和认证方法结合的整体改进思路。为了阐述本人所作工作,本文共分七章,各章的内容安排如下:第一章主要介绍目前国内外相关研究的现状,阐述了课题的来源和意义,并且概括了本文所作的工作。第二章讨论系统涉及的主要技术,并对这些技术进行了简要分析,然后提出了VPN系统的总体结构设计和动态密钥协商机制的实现框架。第三章首先讨论了IKEv2动态协商的具体过程,其中包括了协商消息的格式组成,然后针对IKEv2协商过程中的不足,本文提出了相应的扩展方案,并使用BAN逻辑在理论上证明了该方案的可靠性。第四章讨论了内核通讯模块的设计实现。在分析了PF_KEY协议第二版本的基础之上,本章提出了扩展方案以增强其功能。第五章介绍了加密认证算法模块的设计与实现,包括Diffie-Hellman算法、预共享密钥认证算法和RSA数字签名认证算法。第六章对系统进行了测试,并与国内外的同类系统进行了比较。第七章对所作工作进行了总结,随后阐述了VPN和IKE的发展趋势,提出了系统下一步扩展的思路。第一章课题概述1.1IPSecVPN概述对于传统的企业组网方案,如果要进行远地网络和本地网络互联,一般的解决方法是租用DDN等专线,而对于外出办公人员只能通过拨号线路进入公司内部的局域网。随着业务的发展,公司必须要为此支付昂贵的费用,虚拟专用网(VPN)技术的出现改变了这种情况。VPN是指依靠Internet服务提供商(ISP)和其它网络服务提供商(NSP)在公共网络中建立专用数据通信网络的技术[7]。如图1.1所示,在虚拟专用网中,VPN网关之间的连接没有使用传统专用网络所需要的端到端的物理链路,而是利用某种公共网络资源(如Internet)动态组成。图1.1VPN示意图VPN采用隧道技术在公共网络中形成企业专用的链路网络。为了创建隧道,位于隧道两端的客户机和服务器必须使用相同的隧道协议。目前存在以下几种解决方案[8]:属于第三层隧道协议的IPSec、在数据链路层实现数据封装的PPTP和L2TP以及SSL(存在SOCKS4和SOCKS5两个版本)。另外还有Cisco公司提出的L2F隧道协议。IPSec是目前网络安全领域的热门话题,它是IETF(因特网工程任务组)的IPSec工作组为了在IP层提供通讯安全服务而制定的一套协议簇,它包括安全协议部分(ESP和AH)和密钥协商部分(IKE)。安全协议部分定义了对通讯的安全保护机制,密钥协商部分定义了如何为安全协议协商安全保护参数以及如何对通讯实体的身份进行认证。IPSec是网络层的VPN技术,它独立于应用程序,能够使其它软件无需修改就能自动拥有IPSec提供的安全功能。IPSec使用自己的数据包封装原始的IP信包,因此可以保护所有应用协议的信息。另外,IPSec比其他同类协议具有更好的兼容性,密钥自动管理功能也使IPSec优于PPTP和L2TP。IPSecVPN安全网关的基本原理是对子网内经过网关的IP数据包进行数据加密和摘要认证,并且附加新的数据包头,然后以公网的数据包格式发送至公共网络中,在到达对方子网的IPSecVPN网关后,对数据包进行验证和解密,恢复原始的IP数据包,再将其发送至子网内相应的主机完成整个通讯过程。由于原始数据包已经被加密处理,所以即使在公共网络中被截获,对于截取者来说也只是无用的内容。即使截取者最终能够将截获的数据包解密,其花费的时间将使解密工作毫无意义,因为此时主机之间的通讯已经完成。1.2IKE与IPSecVPN的关系IPSecVPN安全网关为了实现在不安全的公共网络中建立一个安全的、验证过的通讯隧道,必须要和通讯另一端的IPSecVPN网关协商通讯隧道的安全参数,即安全关联(SA)。安全关联描述了IPSecVPN安全网关之间通信所使用的加密和认证算法、密钥、传输模式、密钥生存期、密钥的更新频率、安全关联生存期以及其他附加参数。利用这些安全参数,两个IPSecVPN网关可以安全地在通讯隧道中传输数据。目前安全关联(SA)的管理方法有以下两种:手工配置手工配置方式通常是用户或者系统管理员在通讯隧道两端的VPN网关手工配置安全关联,提供与其他IPSecVPN网关进行安全通讯所需要的加密密钥以及其他安全参数。手工配置管理技术虽然原理简单,但是有以下诸多缺点:通讯隧道两端的IPSecVPN网关如果不隶属于同一个组织,隧道两端的网关就有可能不能被很好地配置。由于系统管理员要为每个可能参加通讯的IPSecVPN网关手工配置安全关联,所以造成管理工作非常复杂。当网络规模扩大的时候,这种管理上的复杂性也随之成倍增加。安全关联中的通讯密钥等安全参数不能得到及时地更新。人工介入安全关联的管理也带来了潜在的安全隐患。综上所述,手工管理安全关联的方式并不适合大型网络,它只能适用于小范围或者静态的网络环境。动态协商动态协商管理方式相对于手工管理方式更灵活、更安全。它通过使用动态密钥协商协议,可以自动地创建、协商密钥和其他安全要素。动态协商管理方式极大地降低了管理上的复杂性,提高了安全关联的安全性,也为变化的、较大型的分布式系统提供了更大的扩展性,并且避免了位于不同组织之间的网关互通管理问题。对于动态协商过程,VPN网关可以使用多种协议,但是IKE目前已经成为事实上的工业标准。对于IPSecVPN实现来说,IKE是目前实现动态密钥协商的首选机制,同时也是IPSecVPN的重要组成部分。没有IKE动态密钥协商机制的支持,包含密钥的安全关联只能通过手工进行配置管理,这样IPSecVPN的安全性将受到极大地影响。所以综上所述,IKE能够在很大程度上提高IPSecVPN的安全性,是IPSecVPN必不可少的组成部分。1.3国内外研究现状目前,IPSec相关技术在国内正处于蓬勃发展时期,一些国内厂商已经陆续推出自己单独的VPN产品,例如北京天融信公司的TOPSECVPN网关产品。而另外一些厂商在防火墙中加载了VPN模块,以实现VPN的部分功能[9][10][11],例如东软、华为、联想等。目前国内比较流行的VPN产品有北京天融信、上海华依、广州天网等品牌。另外,国内很多相关产品在Windows平台上实现VPN功能,由于底层操作系统被国外垄断,所以此类产品不具备很高的安全性,也就不适合运用于我国的要害部门。此类产品有深圳惠尔顿信息技术的e地通IPSecVPN系统[12]和上海东显通讯科技的VPN系统[13]等。作为IPSecVPN的重要技术之一的IKE,对IPSecVPN的安全性有着非常重要的作用。而原有版本的IKE具有很多缺点,遭到了业界的广泛批评[14]。随着技术的发展,原有的IKE已经不能很好地满足业界的需要,制定一个全新的替代协议成为迫切的需求。IKEv2作为对IKE的全面修复、改进的协议,自从IETF于2002年推出了第一版草案之后,迅速成为了业界关注的焦点。在业内众多国外知名厂商的支持下,IKEv2已经先后推出了17个草案版本,在这一过程中,IKEv2得到了不断地扩充与完善。相信在不久的将来,IKEv2将很快成为得到广泛支持的RFC正式标准。目前,国内对IKEv2的研究正处于起步阶段。由于IKEv2草案推出的时间并不是很长,很多国内VPN厂商只是在自己的产品中实现了原有版本的IKE,还没有引入IKEv2。这样,国内厂商的VPN产品就不能发挥IKEv2的各种优势,不同程度地存在原有版本潜在的安全漏洞与问题。另外,国内也没有出现专门的IKEv2第三方安全工具包。所以,在IKEv2的相关研究方面,我国明显落后于国外。国外对IPSecVPN的研究起步较早,大多数VPN都是在专用平台下实现,与操作系统绑定得比较紧密,并且VPN服务器正朝着专用硬件化与软件实现相结合的方向发展。国外主流的VPN产品有Cisco、Avaya、NetScreen、朗讯、NETGEAR等公司品牌。在国外,针对IKEv2的相关研究正如火如荼地进行。在国外比较流行的VPN产品的供应商中,Cisco公司已经计划在2005年底在自己的VPN产品中实现IKEv2[15]。而全球网络安全解决方案的领先供应商SafeNet公司也宣布推出了针对电信行业的QuickSec。这是市场上第一款基于电信的IPSec和IKEv2安全工具包,可以无缝地把IKEv2协议集成到高级网络解决方案中[16]。Intoto公司作为业界领先的安全集成供应商,也宣布已经在iGatewayVPN系列产品中实现了IKEv2[17],以便提供更好的性能、安全性、可靠性以及远程访问能力。另外,CreekSideNetworks公司宣布推出了npsIKEv2引擎[18],该IKEv2引擎基于IKEv2的第8个草案实现,适用于多种应用场合。Unicoi公司也在自己的产品中提供了升级到IKEv2的方式[19],为IKEv2即将成为RFC标准做好准备。在IPv6领域享有盛名的Interpeak公司在2005年初也宣布了对IKEv2的支持,在公司的产品中实现了IKEv2,以便利用IKEv2的各种优势提高产品的安全性以及性能[20]。在开源项目方面,Xelerance公司已经计划在著名的VPN开源项目Openswan中加入IKEv2的实现[21],因为原有的Openswan只实现了原有版本的IKE。而在互联网著名的SOURCEFORGE开源项目社区中,一个名为“IKEv2”的项目也于2005年7月正式启动[22]。该项目的目标是在类似UNIX的平台下以守护进程的方式实现IKEv2动态密钥协商机制。此外,关于IKEv2的相关理论研究也在继续进行。根据目前相关的标准RFC文档,无论是原有版本的IKE还是新的IKEv2协议都不能在具有动态IP地址的网络环境建立VPN隧道,这给很多中小型企业带来了很多不便之处。因为电信运营商目前提供的接入方式有虚拟拨号和专线接入,前者为用户提供动态IP,后者为用户提供固定IP,两者的费用差价很悬殊。由于固定IP地址的月租费比较昂贵,过去只有银行、政府和大型企业等少数单位才能负担得起,甚至国内有些地区根本就不提供固定公网IP地址租用业务,这极大地限制了VPN的应用范围。而随着ADSL等廉价高效的宽带接入方式的不断普及,使用动态IP地址可以让中小企业以非常低廉的费用接入Internet。为此IETF推出了IKEv2的扩展方案MOBIKE[23][24]以解决IP地址变动情况下进行IKEv2密钥交换协商的问题,这些扩展方案目前还处于草案阶段。但是,值得注意的是,MOBIKE扩展方案只是考虑了IKEv2协商双方在协商过程结束之后IP地址发生变化的情况,并没有考虑到在IKEv2协商过程之前参加协商的IPSecVPN网关的公网IP地址已经发生变化这种情况,也就是说在以动态IP接入互联网的情况下,IKEv2协商双方无法进行协商。本文针对以上问题,在后面的章节提出了相应的扩展方案。目前,一些厂商已经陆续推出了以下几种动态IP地址环境下建立VPN隧道的解决方案。(1)使用动态域名服务(DDNS)动态域名服务(DDNS)为使用动态IP接入Internet的系统提供固定的域名,可以帮助解决建立动态IP地址环境下的VPN隧道。在这种方式下,VPN服务器要求安装DDNS相关软件,并为自己申请域名和主机名,其IP地址更新后,自动在DDNS上通过验证来更新自己的IP地址。当VPN网关之间或者VPN客户端需要进行IKE协商的时候,使用VPN服务器的域名呼叫VPN服务器,由DDNS服务器负责将域名解析为VPN服务器的IP地址,这样就能使IKE建立VPN隧道。这是一种比较常见的动态地址协商的解决方案,如美国NETGEAR公司的VPN系列产品、居易公司的Vigor系列、天网安公司的安全网关SNSG-800等。此类产品的共同特点是支持ADSL、CableModem等宽带接入方式,一般支持IPSec、PPTP、L2TP等协议,提供完整的动态域名解决方案,内置第三方DDNS服务商的DDNS客户端软件。基于DDNS的动态协商机制简便易行,但还存在一些问题。如需要专门的第三方服务提供商支持,而一些DDNS注册服务程序繁琐。如果DDNS服务提供商停止服务,会给用户带来不可预见的风险。DDNS最初是为动态IP提供Web服务设计的,DDNS客户端与DDNS服务器之间的通信存在安全隐患。另外,一些DDNS服务是有偿的,需要投入长期的服务成本。(2)Web寻址深信服公司的WebAgent专利技术是一种支持全动态IP接入的纯软件VPN方案。该方案通过基于Web的动态寻址,使VPN产品可以支持各种上网方式,无需固定IP或有效IP,为企业选择合适的ISP提供了极大的方便。WebAgent为一普通的文件,只要求网站支持ASP或PHP即可。用户完全可以将WebAgent置于自己的网站上,建立完全属于自己的VPN全套系统。与动态域名技术相比,WebAgent动态寻址更安全,更稳定,更节省成本(不因寻址而增加额外费用),不依赖于专门的第三方服务提供商,但客户端与服务器之间的通讯同样存在安全风险,Web安全问题值得关注。1.4课题来源和意义本课题来源于名为“基于PKI、ECC的高强度VPN安全网关技术与核心系统的研究”的江苏省自然科学基金项目,项目编号为BK2004039。该基金项目是在课题组对VPN与IPSec前期研究的基础上,在密钥协商协议IKE/IKEv2中引入PKI体系,并在PKI现有RSA算法外研究新的高强度算法,对椭圆曲线加密(ECC)、基于ECC的密钥交换、数据加密、数字签名、快速算法与优化以及在VPN和IKE/IKEv2中使用PKI、ECC认证和优化进行研究,研制基于PKI、ECC的高强度VPN安全网关原型与核心系统。目前IPSecVPN的研究是网络安全领域的热门话题,本课题所属项目的研发具有很强的现实意义:(1)目前VPN的应用大大增加了企事业单位的办公效率,它能使分离的网络之间通过廉价的公共网络(Internet)互相访问,而不是使用昂贵的专线,极大地节省了成本。另外VPN的扩展性良好,因为Internet的无处不在决定了增加或减少用户接入数目是非常容易的。而专线则不同,如果要增加接入的用户个数,必须增加专线所需要的接入点,而且必须进行工程布线等繁琐的工作。(2)由于IPsecVPN采用了加密技术,因此国家党政机关、事业单位和军队不可能直接采用国外现有产品来搭建整个VPN网络,而且使用国外的IPSecVPN产品也不利于我国使用自己的加密体系。(3)目前很多国内厂家的VPN产品建立在Windows操作系统之上,由于操作系统被国外垄断,所以不利于我国大规模地运用于要害部门。Linux作为开放源代码的操作系统,使开发方可以对VPN系统拥有全面的安全控制。因此本课题在Linux平台上实现IPSecVPN网关系统,具有很好的现实意义。本文所作工作是该基金项目的重要组成部分,在整个项目中具有重要地位和意义:(1)VPN网关之间的安全通讯需要安全关联(其中包括密钥等安全参数)的保护,而目前安全关联的管理存在动态协商和手工管理两种方式。由于动态协商方式能够动态地生成和改变安全关联,相对于手工方式具有安全性高、灵活性好等优点,所以是否支持安全关联的动态协商机制已经成为衡量VPN产品优劣的一项重要指标。(2)虽然IKE能够动态协商保护IPSecVPN通讯隧道的IPSec安全关联,但是原有版本的IKE存在许多弱点,很多学者和厂商一直在进行IKE的改进工作。IKE弱点的根源在于IKE本身的复杂机制,这不仅让攻击者有可能设计出成功的破解方法,而且带来了协同工作的问题,增加了在不同厂商VPN设备之间建立VPN隧道的困难,并且导致了性能的降低。而IKEv2与原有版本的IKE相比更加安全,并且易于使用,它提供了较少的VPN设备配置参数,从而节省了花费在设备配置上的时间。另外,IKEv2也减少了需要用户填写的域,降低了人为错误的发生概率,而这些人为错误往往是难于发现和更正的。所以使用新一代的IKEv2对于提高VPN的安全性和性能具有重要意义。(3)目前国内虽然有很多厂商推出了自己的VPN产品,但是真正完整地实现整个IPSec协议体系的安全产品还比较缺乏。目前IKEv2的相关研究和应用在国内刚刚起步,国内绝大部分厂商还没有在自己的VPN产品中引入IKEv2,所以本文的工作具有一定的先进性和进步性。(4)本课题提出的动态IP地址下IKEv2扩展协商机制解决了目前中小型企业使用动态IP地址无法建立VPN隧道的问题,必将促进VPN与IKE协商机制的进一步发展。目前,跟踪研究国外IPSec相关技术和产品的发展,开发具有自主版权的IPSecVPN产品已经成为国内众多安全厂家的努力目标。综上所述,本文的研究具有重要意义和良好的应用前景。1.5本文主要工作和贡献本课题在Linux操作系统下使用C语言进行开发,整个系统主要分为以下三大部分:(1)应用层的IKEv2协议实现部分。(2)应用层IKEv2进程与内核空间相关数据库的交互部分,本课题使用了PF_KEY。(3)内核空间的IPSec(ESP与AH)处理部分。这一部分由课题组其他成员完成。为了实现以上三大部分的功能,本文主要进行了以下三部分工作:(1)动态密钥协商机制本文为了解决IPSecVPN安全网关中安全关联手工管理方式以及传统的IKE导致的一系列不足之处,引入了IKEv2动态密钥协商机制,并对IKEv2机制进行了扩展,提出了一种能够在动态IP地址环境下建立VPN隧道的IKEv2协商扩展机制。目前业内使用的动态IP环境下建立VPN隧道的主要方式包括DDNS和网站寻址交换技术这两种,它们本质上是同一类技术,都是为公众服务的,因为网站是供所有人看的,服务质量定位于信息发布,所以安全性比较差。另外网站寻址机制采用虚拟主机技术,稳定性比较弱。而本文提出的IKEv2扩展方案是一种高安全级别的服务技术,隐蔽性强,相对于DDNS和网站寻址交换技术具有更高的稳定性和安全性。(2)内核通讯机制IKEv2协商进程运行于应用层空间,它需要和内核中的相关数据库进行交互。本文为了满足IKEv2协商进程的需要,使用了PF_KEY协议作为接口。因为PF_KEY协议本身位于应用层与内核之间,所以本文对Linux内核直接进行了改造,部分功能在内核空间得到实现。而国外的产品如FreeS/WAN[25]软件以及以它为基础发展而来的Openswan和Strongswan[26]由于采用外挂处理模块的方式,它们和内核的交互以及对IP包的处理所花费的时间必然大大高于直接改造内核的程序。所以从这个角度分析,本课题的性能在此方面是优于外挂式的安全网关程序的。另外,由于目前还没有正式的RFC标准文档描述PF_KEY如何和内核中的安全策略数据库进行交互,所以本文为此提出了相应的PF_KEY扩展方案,以赋予PF_KEY针对安全策略数据库的交互能力。此外,本文针对动态IP环境下IKEv2协商建立VPN隧道的不足,提出了相应的扩展方案。为了满足扩展方案的需要,本文又对PF_KEY进行了必要的相关扩展。(3)加密认证算法由于IKEv2协商进程需要通过不安全的公共网络和其他VPN网关的IKEv2协商进程进行通讯协商,所以协商过程的安全性显的非常重要。本文为此提供了若干种重要的加密认证算法,以保障协商过程的安全性。另外,针对预共享密钥认证方法安全性弱的缺点,本文提出了一种整体改进思路试图提高该认证方法的安全性。1.6小结本章主要介绍了IPSecVPN以及IKE的基本情况,讨论了国内外研究现状,阐述了本课题的意义,概括了本文的主要工作和贡献。在下一章,本文将简要介绍动态密钥协商机制的相关技术,并在此基础之上提出本课题的VPN和IKEv2实现框架。第二章协议分析和总体设计IPSecVPN网关是综合多种技术机制的结合体。比如,AH和ESP提供了对进出网关数据包的加密认证等安全服务,在提高IP协议安全性的基础上提供了IPSecVPN的基本功能。AH和ESP对进出网关的数据包提供安全服务时需要检索内核中的安全关联和安全策略等数据库,确定有无策略指定的安全关联,如果不存在就通过内核通讯机制通知应用层的IKEv2守护进程启动IKEv2协商过程在VPN网关之间协商IPSecSA,以此创建安全的通讯隧道。IKEv2协商得到的安全关联将通过通讯机制更新内核中的安全关联数据库。本章在分析了以上几种协议机制之后,提出了本课题的VPN网关的结构设计,并且在此基础上建立了IKEv2机制的实现框架和模块划分。安全关联(SA)安全关联(SA)[27]的概念是IPSecVPN的基础,有些文献又把它称之为安全联盟[28]。安全关联定义了各种类型的安全参数,它是通信对等方之间对一些安全要素的一种约定,例如IPSec协议的操作模式、密码算法、密钥以及密钥的生存期等,它同时也是两个IPSecVPN网关之间的一个单向逻辑连接。安全关联决定了保护什么、如何保护以及由谁来保护通讯数据[29],它可以通过IKE、IKEv2协议在通信对等方之间动态协商。一个安全关联可以由一个三元组唯一标识,该三元组包含一个安全参数索引(SecurityParameterIndex,SPI)、一个源或者目的IP地址以及一个特定的IPSec协议(例如AH或者ESP)。安全关联数据库(SAD)安全关联数据库是与安全关联相关的参数集合。每个安全关联在安全关联数据库中都有一个条目,为使用这个安全关联的IP数据包指定实现IPSec处理必需的内容。下面的参数定义了一个安全关联条目:(1)安全参数索引(SPI)。(2)用于安全关联的协议(ESP或者AH)。(3)IPSec协议运行模式(隧道模式或者传输模式)。(4)序列号计数器。(5)反重传窗口。(6)路径最大传送单元MTU(MaximumTransmissionUnit)。(7)安全关联的源和目的IP地址。(8)使用的验证算法和它的验证密钥。(9)加密算法和它的加密密钥。(10)身份验证和加密密钥的生命周期。(11)安全关联的生命周期。安全策略数据库(SPD)安全策略数据库[30][31]定义了对于特定的IP数据流使用哪种安全服务和格式。系统管理员可以通过安全策略数据库控制IPSec的处理范围,从而控制经过安全网关的数据流。IPSec协议要求在所有数据流处理过程中都必须查询SPD,不管数据流是输入还是输出。IP数据包的进出处理过程中需要查询SPD,以便判断为这个数据包提供哪些安全服务。对于所有进出的数据流,IPSecVPN网关有三种处理方法:丢弃信包、旁路IPSec处理和进行IPSec处理。丢弃信包处理方法是指不允许信包访问目的主机,所以信包在经过网关的时候必须被丢弃。旁路IPSec处理方法是指通信是被允许的,但是通信过程不需要IPSec提供保护措施。第三种选择进行IPSec处理是指通讯是被允许的,而且还需要IPSec提供保护。这种情况需要查询SPD,并通过对应的策略条目在SAD中得到相应的安全关联,这个得到的安全关联指出了以上IPSec处理所使用的安全协议、模式和算法等参数。目前IPSec允许SPD中存在以下主要内容:(1)目的IP地址(2)源IP地址(3)传输层协议(4)源端口(5)目的端口(6)SAD关联入口(7)名称2.2AH和ESP协议AH和ESP协议属于IPSecVPN体系中的安全协议部分,设计它们的目的是为了增强IP数据包的安全性。AH协议为IP数据包提供了无连接的完整性、数据源认证和抗重放保护服务,而ESP协议为IP数据包提供完整性校验、身份认证、数据加密以及重放攻击保护等安全服务,即在AH协议提供的安全服务基础上增加了机密性服务。AH和ESP协议都可以在原始的IP数据包的基础上加入自己的数据包头以加强整个IP数据包的安全性。2.3IKE协议IKE协议属于IPSecVPN体系的动态密钥协商部分,它是可供选择的动态密钥交换机制之一,目前已经成为事实上的工业标准。IKE协议用来进行虚拟专用网VPN的认证与SA会话密钥的协商,它沿用了Internet安全关联和密钥交换协议(ISAKMP)[32]的基础、Oakley密钥确定协议[33]的模式以及SKEME协议的共享和密钥更新技术。IKE协议可以动态地建立安全关联,为通信双方提供IPSec安全通信所需的相关信息,例如加密算法、会话密钥、通信双方身份认证等。IKE协议为自动密钥交换奠定了框架,其高强度与可靠性是IPSecVPN数据安全传输的先决条件和保证。IKE是个非常复杂的协议,整个IKE协议规范分为三个部分:ISAKMP、IKE、DOI(DomainofInterpretation)。另外,在整个IKE协议规范中,ISAKMP和IKE的区分是比较模糊的。IKE机制协商的目的是产生一个通过验证的密钥和提供双方同意的安全服务,即最终提供IPSec安全关联(IPSecSA)使IPSecVPN之间能够建立安全的数据通讯隧道。IKE通过两个阶段的协商过程来建立IPSec安全关联(IPSecSA)。第一阶段建立ISAKMPSA,第二阶段利用第一阶段得到的ISAKMPSA建立IPSecSA。ISAKMPSA和IPSecSA的区别在于前者是双向的。IKE把动态协商过程定义成两个阶段的原因是为了提高IKE的协商效率。因为第一阶段协商的结果可以应用于多个第二阶段协商过程,而第二阶段协商过程可以同时进行多个,这样就能减少传输往返和幂运算,从而大大提高了协商的效率[34]。对于协商过程的第一阶段,IKE存在两种模式:主模式和积极模式。主模式是一种身份保护交换模式,而积极模式基于ISAKMP的野蛮交换法。在第二阶段,IKE提供了快速交换模式,它的作用是为IKE之外的其它协议协商安全服务。对于参与密钥交换的双方,如果建立了ISAKMPSA,那么不管谁是发起者,任何一方都可以主动发起第二阶段的交换。第一阶段中的主模式提供了身份保护,当身份保护不必要时,可以使用积极模式进一步减少传输往返。在IKE整个协商过程中,ISAKMP消息(或者称为IKE消息)被用来进行安全关联的协商交互。IKE是一种混合型协议,其复杂性一直受到业界广泛的批评。另外,IKE还存在以下问题[35]:(1)原有标准提供的某些功能基本上不被使用,数据结构存在简化的空间。(2)建立IPSec安全关联的过程需要进行多次消息交互。(3)IKE协议本身的缺陷导致了其受拒绝服务攻击、重放攻击、中间人攻击等危险,所以有必要增强其抵御能力。2.4IKEv2协议为了解决原有IKE的诸多缺点,IKEv2主要对IKE进行了以下改进:(1)在单一的文档中定义了IKEv2,取代了原有的RFC2407(IPSecDOI)、RFC2408(ISAKMP)、RFC2409(IKE)以及随后补充的关于NAT穿透、扩展认证和获取远程访问地址等分散的文档。(2)用4条消息交换取代了原有的9条消息,提高了协商效率。(3)删除了原有协议中的DOI、SIT以及域名标识符、提交位这些功能不强且难以理解、容易混淆的数据结构。(4)修复了多处公认的密码学方面的安全漏洞。(5)定义了独立的通讯量选择载荷,分担了原有ID载荷的部分功能,增加了协议灵活性。IKEv2将原有第一阶段的3次消息交换修改为初始阶段的IKE_SA_INIT和IKE_AUTH两个消息交换。IKE_SA_INIT交换中的消息没有进行加密处理,它协商了IKE_SA中包含的各种安全参数,其中包括密码学相关算法,并且进行Nonce值以及Diffle-Hellman交换,最后建立IKE_SA。而IKE_AUTH消息交换则使用了IKE_SA_INIT阶段生成的密钥材料进行了加密处理,并对IKE_SA_INIT消息交换过程进行了认证,最终建立起第一个CHILD_SA。接下来的CREATE_CHILD_SA交换阶段对应原有IKE的第二阶段,可以由任意一方发起。初始阶段建立的安全关联用于保护这一阶段的消息交换,最终建立起CHILD_SA,即IPSecSA。在IKEv2中,还定义了消息交换。在这个交换中,IKEv2协商双方一般发送关于错误或者通知事件的控制消息。消息交换一定要在IKE_SA_INIT消息交换结束后进行,交换过程同样受到安全保护。2.5PF_KEY协议2.5.1PF_KEY与IKEv2的关系应用层的IKEv2守护进程在运行过程中需要修改和查询内核中的安全关联、安全策略等相关数据库,这就需要某种机制提供内核和应用层之间交互的通道,PF_KEY提供了这种能力。值得注意的是,描述PF_KEY的RFC2367并没有赋予PF_KEY对安全策略数据库的操作能力[36],而本课题对PF_KEY进行了扩展,增加了它和安全策略数据库进行交互的能力。IKEv2守护进程和PF_KEY的关系如图2.1所示。图2.1IKEv2守护进程和PF_KEY的关系2.5.2PF_KEY的优势Linux本身已经提供了以下几种进程间的通讯机制:管道、信号、共享内存和消息队列等。本课题并没有采用以上几种已有的通讯机制,而是采用了PF_KEY协议,这主要是因为PF_KEY存在以下优势:(1)本课题使用的PF_KEY是专门为操作内核中的安全关联、安全策略等相关数据库设计的,具有很强的针对性。(2)Linux本身提供的进程通讯机制无法很好地实现应用层空间和内核空间之间的进程通讯。例如信号机制只能实现内核向应用层进程发送信号,而不能接收来自应用层的信号[37]。另外,共享内存机制常常需要与其他机制配合才能完成进程之间的通讯[38]。(3)PF_KEY本质上是一个套接字机制。它能够借助内核已有的套接字机制很好地嵌入内核从而达到两个运行空间的交互。在国内外的IPSecVPN的实现中,PF_KEY机制并不是唯一的选择。有些实现选用了Linux的消息队列机制实现内核和应用层的通讯[39][40]。总体来说,由于PF_KEY机制表现为套接字形式,所以使用PF_KEY比其他同类机制更有效、更方便。2.6VPN与动态密钥协商机制总体结构设计图2.2描述了本课题的IPSecVPN网关的总体结构设计。图2.2IPSecVPN网关的总体结构设计考虑到VPN系统的互操作性和兼容性,本课题的VPN网关的总体结构设计大体遵循了已有的相关RFC标准,另外为了扩展IKEv2在动态IP地址环境下的协商能力,本课题对VPN网关的总体结构也进行了相应地扩展,在内核已有的SAD和SPD的基础上增加了IDPD数据库,以支持应用层空间的IKEv2协商。如图2.2所示,本课题的整个VPN网关的结构主要包括以下部分:(1)IKEv2守护进程动态密钥协商守护进程(IKEv2守护进程)运行在用户空间即应用层空间,它的主要功能是和其它VPN网关的动态密钥协商守护进程协商双方安全通讯的各种安全参数,即安全关联。动态密钥协商守护进程主要由IKEv2动态协商模块、内核通讯模块、加密认证算法模块以及系统管理配置模块等四个功能模块组成。UDP500或者4500端口和其他VPN网关的IKEv2守护进程进行协商,最终得到CHILD_SA,即IPSecSA。然后IKEv2守护进程调用内核通讯模块,利用PF_KEY将协商得到的安全关联传入内核空间的SAD,以便以后可以再次使用。由于本课题针对动态IP环境下的IKEv2协商进行了部分扩展,所以IKEv2守护进程的具体协商过程与IKEv2草案提出的标准过程有些差异,具体设计与实现可以参考第三章。图2.3VPN网关之间的动态密钥协商内核通讯模块主要使用PF_KEY提供了应用层和内核空间的交互接口,这种接口能够使应用层的IKEv2守护进程对内核中相关数据库的修改实时生效而不需要重新启动VPN网关。本文将在第四章详细讨论内核通讯模块的具体设计与实现。由于VPN通讯隧道建立在不安全的公共网络中,所以建立安全通讯隧道所使用的安全关联必须建立在安全的协商过程之上,而要保证协商过程的安全性需要对协商过程进行加密、认证等安全处理。加密认证算法模块提供了在协商过程中对数据包进行加密和认证的手段,其中包括密钥的协商、交换和数字签名算法的实现。第五章将讨论加密认证模块包含的几种重要的安全算法以保证安全关联的协商过程是可靠、安全的。用户空间的用户管理配置进程为使用者提供了友善的管理界面,它可以进行内核中安全关联等相关数据库以及相关认证、加密算法和生存时间等参数的实时配置。它负责与IKEv2守护进程中的系统管理配置模块联系,由系统管理配置模块具体实施用户的配置和管理操作。系统管理配置模块主要接收用户管理配置进程的指令,将配置项的改动直接与IKEv2协商过程联系起来,或者将用户对配置的改动直接写入内核中相应的SPD、SAD以及IDPD中,供IPSec处理使用。同时它还负责将用户的配置信息与操作过程记录在配置文件和日志文件中。IKEv2交互后得到的信息也可以直接写入日志文件。由于系统管理配置模块主要由课题组其他成员完成,这里就不再详细介绍。(2)PF_KEY通讯接口PF_KEY通讯接口提供了应用层的IKEv2守护进程和内核中各个相关数据库的交互能力。在本课题的VPN总体结构设计中,内核内部存在SAD、SPD和IDPD三个数据库,其中SAD和SPD是遵守RFC标准而存放于内核中,IDPD是为了满足IKEv2扩展的需要而新增加的,主要作用是存放IKEv2协商方的相关信息,例如协商方当前的公网IP地址等。由于目前相关的RFC标准文档只描述了应用层的IKEv2守护进程和位于内核的SAD的交互方法,而没有规范IKEv2守护进程和SPD、IDPD如何进行交互,所以本课题对目前只具备针对SAD交互能力的PF_KEY协议进行扩展,使它的交互能力涵盖SPD和IDPD。(3)内核IPSec处理部分内核IPSec处理部分负责对经过网关的IP数据包进行相应的IPSec处理,在处理过程中有时需要在SAD和SPD中查询所需的安全关联或安全策略。如果在SAD不存在安全策略指定的安全关联,内核则通过本文提供的内核通讯模块通知应用层的IKEv2守护进程和其它VPN网关的IKEv2守护进程进行安全关联的动态协商。协商完成之后IKEv2协商进程使用PF_KEY接口将协商得到的安全关联存入内核中的SAD,IPSec处理模块则使用安全关联应用于AH、ESP协议对IP数据包提供数据源认证和无连接的数据完整性验证,通过在不安全的网络上传输加密后的数据来保证数据的安全性。对于AH和ESP存在两种操作模式:传输模式和隧道模式。由于这部分由其他同学完成,所以本文不再对这部分进行详细阐述。2.7小结本章首先介绍了VPN和动态密钥协商机制实现的一些相关概念和技术,其中包括安全关联及其相关数据库、AH和ESP协议、原有的IKE协议以及新推出的IKEv2等。为了解决应用层进程(例如IKEv2守护进程)和内核的交互通讯问题,本章采用PF_KEY协议,并且分析了它的优势。最后,本章提出了本课题的VPN系统包括动态密钥协商机制的总体设计和模块划分。下一章将详细讨论IKEv2动态协商模块的相关内容,以建立IPSec安全关联确保VPN通讯隧道的安全性。第三章动态密钥协商过程IPSecSA包含了密钥、加密认证算法等安全参数,它可以使VPN网关之间建立安全的、经过认证的通讯隧道以保障数据的安全传输。手工管理安全关联存在诸多缺点,不具备很高的安全性,而原有版本的IKE协议虽然能够动态地协商IPSec安全关联,但是IKE本身存在协议复杂、易受攻击、效率低下等缺陷。IKEv2作为IKE的继任者,在继承IKE的优势基础之上全面修复了IKE的诸多缺点,极大地提高了协商过程的安全性与性能,从而有力地提高了整个VPN的安全性与性能。传统的IKE只能在固定IP地址的情况下进行IPSecSA的协商,IKEv2的扩展草案MOBIKE虽然提出了相应的扩展方案,但是草案只是考虑了IPSecSA协商之后地址改变的情况,也就是说只能在VPN隧道建立之后才允许IP地址发生变化,这极大地限制了动态密钥协商机制的应用范围。本章为了解决以上局限,对IKEv2协议进行了进一步地扩展,提出了一种全新的IKEv2动态协商过程,它能够使IPSec安全关联在动态IP地址环境下通过IKEv2动态协商模块动态地、安全地得到与更新,并且能在动态IP地址环境下及时地发现IKEv2协商对方是否在线,具有及时发现故障的能力,从而提高了IKEv2协议的协商能力,扩展了VPN的应用范围。3.1相关消息格式IKEv2协商消息格式标准的IKEv2协商过程使用IKEv2消息进行交互协商。如图3.1所示,IKEv2消息均以IKEv2消息头开始,然后紧跟以通用载荷头为首的各种载荷。图3.1IKEv2消息格式消息头和通用载荷头在IKEv2中,消息头的具体格式如图3.2所示。图3.2IKEv2消息头格式消息头各个域的含义如下:(1)发起者的安全关联索引发起者的安全关联索引由协商的发起者选择以声明一个唯一的IKE安全关联。这个域始终不为零。(2)响应者的安全关联索引响应者的安全关联索引和发起者安全关联索引类似,它是由响应者选择以声明一个唯一的IKE安全关联。这个域在IKEv2初始阶段的第一条消息中必须置为零,而在其他消息中则必须设置为非零。(3)下一载荷类型这个8比特域说明了消息头后面的载荷类型,即消息中的第一个载荷类型。(4)主版本指定了所用IKE协议的主版本号。这里必须设置为2。(5)副版本这个域说明了IKE协议的副版本号。这里必须设置为0。(6)交换类型这个8比特域指定了目前进行的消息交换的种类。例如IKEv2的初始交换(IKE_SA_INIT)、协商子SA交换(CREATE_CHILD_SA)等。(7)标志这个域主要说明了IKEv2消息的若干标记,用于表明当前消息的发送者是发起者还是响应者、IKEv2消息是否能够和更高版本的IKE消息进行交互等等。(8)消息ID这个域主要用于控制消息的重发以协调协商双方,这是对原有IKE的改进,可以有效抵御重放攻击。(9)消息长度消息长度域的长度为4个8位字节,包含了整个消息包括IKEv2消息头和所有载荷的长度。在本课题实现中消息头的具体定义如下:structikev2_hdr{u_int64_tinitiator_SPI[SPI_SIZE]; /*发起者的安全关联索引*/u_int64_tresponder_SPI[SPI_SIZE]; /*响应者的安全关联索引*/u_int8_tnext_payload; /*下一个载荷类型 */u_int8_t version; /*高4位:主版本 *//*低4位:副版本 */u_int8_texchange_type; /*交换类型 */u_int8_tflags; /*标记 */u_int32_tmsg_id; /*消息ID */u_int32_tmsg_length; /*消息长度 */};其中u_int8_t、u_int32_t、u_int64_t是本课题自定义的数据类型。IKEv2消息头后面紧跟各种载荷,而各种载荷都是以通用载荷头开始的。通用载荷头明确定义了各种载荷的边界,:图3.3通用载荷头格式图3.3中各个域的含义如下:(1)下一载荷类型主要指出当前载荷后面的载荷类型。如果当前载荷是整个消息的最后一个载荷,则这个域就被置为0。(2)C域描述了消息发送者允许接收者在不理解载荷类型的情况下作出的处理。这个域是IKEv
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年建筑劳务分包项目招标详细协议一
- 海洋平台防腐施工合同
- 2024年度专业弱电工程技术服务协议版
- 会议室墙面装饰施工协议
- 2024年度标准空地租赁协议修订版一
- 建筑防爬行类害安全施工协议
- 核电工程合同毛利评估
- 2024年专业酒店用品供应及采购合同合同版
- 技术门市租赁合同样本
- 药品研发材料储存外仓租赁合同
- 初中语文古诗词教学实践研究
- 2024年秋初中生物七年级上册教学设计(教案)第二节 细菌
- 人教版小学一年级语文上册全册试卷全套含答案
- EASL-EASD-EASO代谢相关脂肪性肝病-MASLD-临床实践指南解读幻灯
- 2024年秋季新苏教版一年级上册数学课件 期末复习 第3课时 图形的认识
- 华中师大版七年级上册信息技术 4.2信息的合理存放-文件及文件夹的合理存储 教案
- 防雷与接地作业指导书
- 施工组织设计-汽研中心风洞试验室工程
- 突发环境事件应急预案评审会汇报课件-(模板)
- 楚雄彝族自治州楚雄市2022-2023学年七年级上学期期末数学试题
- JT∕T1180.4-2018交通运输企业安全生产标准化建设基本规范第4部分:道路普货运输
评论
0/150
提交评论