TCP/IP互联网的先天缺陷主要源自IP协议的无连接、完全开放、无任何安全措施等特性上,所以必须对IP协议进行安全处理。TCP/IP(Transmission Control Protocol/Internet Protocol)的简写,中文译名为传输控制协议/因特网互联协议,又叫网络通讯协议,这个协议是Internet基本的协议、Internet国际互联网络的基础,简单地说,就是由网络层的IP协议和传输层的TCP协议组成的。TCP/IP 定义了电子设备(比如计算机)如何连入因特网,以及数据如何在它们之间传输的标准。TCP/IP是一个四层的分层体系结构。高层为传输控制协议,它负责聚集信息或把文件拆分成更小的包。低层是网际协议,它处理每个包的地址部分,使这些包正确的到达目的地。IPSec 是安全联网的长期方向。它通过端对端的安全性来提供主动的保护以防止专用网络与 Internet 的攻击。在通信中,只有发送方和接收方才是必须了解 IPSec 保护的计算机。在 Windows XP 和 Windows Server 2003 家族中,IPSec 提供了一种能力,以保护工作组、局域网计算机、域客户端和服务器、分支机构(物理上为远程机构)、Extranet 以及漫游客户端之间的通信。
由于IPSec提供的安全服务如源和完整性等都需要用到共享密钥,所以协议还强制了一种机制,即能够为这些服务手工地添加密钥。IPSec的公钥加密用于身份和密钥交换。公钥加密,也被称为"不对称加密法",即加解密过程需要两把不同的密钥,一把用来产生数字签名和加密数据,另一把用来验证数字签名和对数据进行解密。使用公钥加密法,每个用户拥有一个密钥对,其中私钥仅为其个人所知,公钥则可分发给任意需要与之进行加密通信的人。例如:A想要发送加密信息给B,则A需要用B的公钥加密信息,之后只有B才能用他的私钥对该加密信息进行解密。虽然密钥对中两把钥匙彼此相关,但要想从其中一把来推导出另一把,以目前计算机的运算能力来看,这种做法几乎完全不现实。因此,在这种加密法中,公钥可以广为分发,而私钥则需要仔细地妥善保管。
1 代密钥交换协议
现有的IPsec中采用的代密钥交换协议IKE,即RFC2409-IKEv1。ESP、AH协议根据SA规定的参数为IP数据报提供安全服务。
1.1 IKE的交换模式
IKE使用了两个阶段的ISAKMP。阶段建立IKE安全关联,第二阶段利用这个安全关联,为IPSec协商具体的安全关联。有两种阶段1交换、一种阶段2交换以及一个新组交换(用于对安全关联的正确维护)。对阶段1交换来说,IKE采用的是身份保护交换,以及根据基本ISAKMP文档制定的野蛮交换。IKE属于一种混合型协议,由Internet安全关联和密钥管理协议(ISAKMP)和两种密钥交换协议OAKLEY与SKEME组成。IKE创建在由ISAKMP定义的框架上,沿用了OAKLEY的密钥交换模式以及SKEME的共享和密钥更新技术,还定义了它自己的两种密钥交换方式。
为了终建立IKE SA,主模式有三个往返(共使用六条消息),分别是模式协商、Diffie-Hellman交换和nonce交换以及对对方身份的鉴别。主模式的特点包括身份保护和对ISAKMP协商能力的完全利用。由于在Diffie-Hellman交换之后,双方建立了一个共享的密钥,只是没有通过验证,因此必须对共享的密钥进行。
野蛮模式只需用到主模式一半的步骤。由于对消息的数量进行了限制,野蛮模式同时也限制了它的协商能力,而且不提供身份保护功能。
当通过阶段1建立好IKE SA之后,可以用快速模式为其他安全协议(如IPSec)生成相应的SA,并将其填入SADB。对快速模式交换来说,它是在以前建立好的IKE SA的保护下完成的,这些保护包括对快速模式交换的加密和对交换的鉴别。
1.2 IKEv1的缺点
IKEv1的主要缺点是:
(1)算法复杂。往返消息数目太多(多达9条消息),不安全。易受DoS攻击。这是因为响应者具有有限的内存和计算能力。攻击者可以通过随机IP地址发送虚假连接请求,用尽响应者进程中用于连接的内存,以及用于加密的计算能力。
2 下一代IKE协议
IKE协议用于交换和管理密钥,但是IETF安全担心IKEv1过于复杂,以至于难以证明它是安全的。因此推荐新的协议来代替IKEv1,并将其称为下一代IKE(Son of IKE)。现在正在研究的有IKEv2和JFK(Just Fast Keying)。
2.1 IKEv2
IKEv2是在IKEv1的基础之上进行改进的结果。它保留了版本1中的大部分特性,如身份隐藏、PFS、两个阶段协商,同时重新设计了强壮性、高效性、安全性。
2.1.1 IKEv2的特点
IKEv2的特点包括:(1)简单性。基于IKEv1的协议复杂度及安全性而提出。取消了阶段1中的野蛮模式。(2)减少了潜伏期。阶段1交换只需要2个往返的消息对。建立IPsec SA不是通过阶段2来协商,而是搭载阶段1的消息而建立。(3)允许无状态cookie。这样可以预防DoS的攻击,响应者在没有接收到合法的cookie之前,将不保留cookie的任何状态,也不做任何耗时的计算。(4)增强了灵活性。增加了选择符TS和“紧要”比特的概念。
2.1.2 IKEv2协议
阶段1交换是4条消息的交换(两个请求/响应对)。对消息,交换协商加密算法、(可选的)指示信任的CA名字、交换的nonce和Diffie-Hellman交换。如果响应者指示没有一个机密建议是可以接受的,或者发起者选择的Diffie-Hellman 组不是响应者选择的组,或者当响应者正在遭受攻击并且将用只包含一个合法的cookie值来响应IKE-SA请求时,这对消息可以重发。
第二对消息,先前的消息,交换鉴定符和证书并且建立个IPsec SA。这对消息是通过对交换的密钥来加密,因此可隐藏身份以防止偷听。
阶段2是一个请求/响应对,它可以用来创建或删除一个IPsec SA,删除或重新分配IKE-SA,检查IKE-SA的存活性,或者传递诸如错误条件的信息等。在创建IKE-SA过程中,使用协商的密钥来加密并对完整性加以保护。任何一方都可以发起阶段2交换,在阶段2中添加了提供ID的能力,这样可以建立进程到进程的IPsec SA。
2.2 JFK
尽管可以通过对原来的协议打补丁的方式修正存在的问题,但是一些人仍倾向于用其他的协议来替代IKE,以避免IKE中的棘手问题。由于这样的想法,从而起草了新的密钥管理协议,称为JFK(Just Fast Keying)。
2.2.1 JFK的特点
JFK的特点包括:(1)简单性。取消了两个阶段分发密钥的概念,整个过程只有2个往返,4条消息交换。这样可能同时提高了效率。另外还取消了协商,因为一个局部的安全关联协商是在消耗资源,容易遭受DoS攻击。(2)响应者的身份在消息2中是显露的。这样同时避免了发起者受到主动的身份揭露攻击。(3)会话密钥(KE)和应用密钥从g^xy、Ni、Nr派生得出。(4)增强了安全性。提出了两种协议:JFKi和JFKr。二者在许多方面很相似,但有两个主要的区别。JFKi为发起者提供主动的身份保护,而不对响应者提供任何身份保护。
2.2.2 JFK协议
为了节约篇幅,这里仅介绍JFKr协议。
消息1很简单,假定发起者知道响应者可以接受的一个组。它包含了一个组信息(Diffie-Hellman值)和一个nonce。这里,nonce有两个作用。一方面允许在不同会话间使用同一个值,从而确保会话密钥是不同的,另一方面可以区分不同的并行会话。
消息2对响应者的工作量要求很小。惟一的花费是单一的,同时响应者不需要产生任何状态,因为此时不知道发起者是否为一个合法的通信者。这样可以抵抗DoS攻击。 消息3包含了发起者的身份、服务请求以及在nonce和响应者身份上的签名。JFK中参与者使用共享密钥加密身份,这样保证双方身份不被窃听。
消息4包含应用设置的信息(例如响应者的SPI)、双方nonce和幂上的签名。与消息3一样,消息4也使用消息代码保护。
2.3 三种密钥交换协议的对比
三种密钥交换协议的对比。
IKEv2是在IKEv1的基础上发展而来,因此不可避免地具有了IKEv1的一些固有的特征,如两个阶段交换等。同时上边列出的数据还显示IKEv1和IKEv2在身份隐藏和参数协商上具有相似性。
IKEv2的阶段2交换,频繁地重新交换密钥将消耗掉Diffie-Hellman密钥的熵,因此应该限制阶段2的次数。另一个问题是它的安全性极大依赖于Diffie-Hellman幂的随机性。
而JFK是一个新的协议,JFK消除了协商机制。响应者提供了一种服务,有权利设置自己的服务需求,任何由响应者提到的原始的机密是可以接受的。同样消除了响应者要保持的状态,发起者可以接受响应者的请求或者重新启动协议。
JFK抛弃了两个不同阶段的概念。由于快速模式的作用是十分有限的,而且频繁的重新交换密钥是没有必要的,所以正确的方法应该是重新替换密钥。
JFK以上两点的特性,使其效率有很大程度的提高。另外,通过分析协议安全性的方法分析,证明了JFKi和JFKr的安全性。
3 结束语
IKEv2具有IKE中的特征,因此提供商开发时可以先使用IKE过渡到IKEV2的实现。同时JFK小,并且改进了正式的安全分析。JFK是如此简单以至于提供商能够相当快速地开发出来。为了保护交换的消息,JFK取消了PFS,一种方法确保一个密码破解的时候不会危及到其他数据。
在我们的实验中,采用JFK来替代IKE。JFK在安全路由器中已经实现,其功能能够和IPsec无缝地协作,实现了数据包的安全传输,并且运行稳定可靠。
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。