WEP WPA/WPA2 WPA-PSK/WPA2-PSK的相互关系

无线网络最初采用的安全机制是WEP(有线等效私密),但是后来发现WEP是很不安全的,802.11组织开始着手制定新的安全标准,也就是后来的802.11i协议。但是标准的制定到最后的发布需要较长的时间,而且考虑到消费者不会因为为了网络的安全性而放弃原来的无线设备,因此Wi-Fi联盟在标准推出之前,在802.11i草案的基础上,制定了一种称为WPA(Wi-Fi Procted Access)的安全机制,它使用TKIP(临时密钥完整性协议),它使用的加密算法还是WEP中使用的加密算法RC4,所以不需要修改原来无线设备的硬件,WPA针对WEP中存在的问题:IV过短、密钥管理过于简单、对消息完整性没有有效的保护,通过软件升级的方法提高网络的安全性。在802.11i颁布之后,Wi-Fi联盟推出了WPA2,它支持AES(高级加密算法),因此它需要新的硬件支持,它使用CCMP(计数器模式密码块链消息完整码协议)。在WPA/WPA2中,PTK的生成依赖PMK,而PMK获的有两种方式,一个是PSK的形式就是预共享密钥,在这种方式中PMK=PSK,而另一种方式中,需要认证服务器和站点进行协商来产生PMK。

  在无线局域网中,移动终端和AP采用静态WEP加密,AP和它所联系的所有移动终端都使用相同的加密密钥,这便带来如下问题: 一旦其中一个用户的密钥泄漏,其他用户的密钥也无法保密了。为了改善WEP的这些安全性缺陷,Wi-Fi联盟提出一种新的方法——WPA,用以改善网络的 安全性。WPA的出现给用户暂时提供了一个完整的认证机制。

  在802.11中有一个对数据基于共享密钥的加密机制,称为“有线对等保密WEP”(Wired Equivalent Privacy)的技术, WEP/WEP2是一种基于RC4算法的40bit、128bit、256bit加密技术。移动终端和AP采用静态WEP加密。AP和它所联系的所有移动 终端都使用相同的加密密钥,因此带来如下问题: 一旦其中一个用户的密钥泄漏,其他用户的密钥也无法保密了。

  WEP的开放认证和共享认证的区别

  开放式系统验证和共享密钥验证两种模式中,每个移动客户端都必须针对访问点进行验证。开放式系统验证其实可以称为“无验证”,因为实际上没有进行验证——工作站说“请求验证”,而AP也不管是否密钥是否正确,先“答应了再说”,但最终ap会验证密钥是否正确,决定是否允许接入——这种验证方式的ap,往往你随便输入一个密码,都可以连接,但如果密码不正确,会显示为“受限制”。共享密钥验证稍微强大一些,工作站请求验证,而访问点(AP)用WEP加密的质询进行响应。如果工作站的提供的密钥是错误的,则立即拒绝请求。如果工作站有正确的WEP密码,就可以解密该质询,并允许其接入,因此,连接共享密钥系统,如果密钥不正确,通常会立即显示“该网络不存在等提示”。
  说实话,WEP已经基本上无安全可言。但至少,共享密钥系统稍微安全一点。

  为了改善WEP的这些安全性缺陷,Wi -Fi联盟提出一种新的方法——WPA,用以改善网络的安全性。WPA的出现给用户提供了一个完整的认证机制,AP根据用户的认证结果决定是否允许其接入 无线网络中;认证成功后可以根据多种方式(传输数据包的多少、用户接入网络的时间等)动态地改变每个接入用户的加密密钥。另外,对用户在无线中传输的数据 包进行MIC编码,确保用户数据不会被其他用户更改。作为802.11i标准的子集,WPA的核心就是IEEE802.1x和TKIP(Temporal Key Integrity Protocol)。

  图1所示为WEP到WPA的转变内容。


  三大部分组成WPA

  WPA系统一般由三部分构成,即用户认证、密钥管理、数据完整性保证。

  1.认证

  WEP是数据加密算法,它不完全等同于用户的认证机制,WPA用户认证是使用802.1x和扩展认证协议(Extensible Authentication Protocol,EAP)来实现的。

  WPA考虑到不同的用户和不同的应用安全需要,例如:企业用户需要很高的安全保护(企业级),否则可能会泄露非常 重要的商业机密;而家庭用户往往只是使用网络来浏览 Internet、收发E-mail、打印和共享文件,这些用户对安全的要求相对较低。为了满足不同安全要求用户的需要,WPA中规定了两种应用模式。

  ● 企业模式:通过使用认证服务器和复杂的安全认证机制,来保护无线网络通信安全。

  ● 家庭模式(包括小型办公室):在AP(或者无线路由器)以及连接无线网络的无线终端上输入共享密钥,以保护无线链路的通信安全。

  根据这两种不同的应用模式,WPA的认证也分别有两种不同的方式。对于大型企业的应用,常采用“802.1x+ EAP”的方式,用户提供认证所需的凭证。但对于一些中小型的企业网络或者家庭用户,WPA也提供一种简化的模式,它不需要专门的认证服务器。这种模式叫 做“WPA预共享密钥(WPA-PSK)”,它仅要求在每个WLAN节点(AP、无线路由器、网卡等)预先输入一个密钥即可实现。

  这个密钥仅仅用于认证过程,而不用于传输数据的加密。数据加密的密钥是在认证成功后动态生成,系统将保证“一户一密”,不存在像WEP那样全网共享一个加密密钥的情形,因此大大地提高了系统的安全性。

  2.加密

  WPA使用RC4进行数据加密,用临时密钥完整性协议(TKIP)进行密钥管理和更新。TKIP通过由认证服务器动态生成分发的密钥来取代单个静态密钥、把密钥首部长度从24位增加到48位等方法增强安全性。而且,TKIP利用了802.1x/EAP构架。认证服务器在接受了用户身份后,使用802.1x产生一个惟一的主密钥处理会话。

  然后,TKIP把这个密钥通过安全通道分发到AP和客户端,并建立起一个密钥构架和管理系统,使用主密钥为用户会话动态产 生一个惟一的数据加密密钥,来加密每一个无线通信数据报文。TKIP的密钥构架使WEP单一的静态密钥变成了500万亿个可用密钥。虽然WPA采用的还是 和WEP一样的RC4加密算法,但其动态密钥的特性很难被攻破。

  3.保持数据完整性

  TKIP在每一个明文消息末端都包含了一个信息完整性编码(MIC),来确保信息不会被“哄骗”。MIC是为了防止攻击者从中间截获数据报文、篡改后重发而设置的。除了和802.11一样继续保留对每个数据分段(MPDU)进 行CRC校验外,WPA为802.11的每个数据分组(MSDU)都增加了一个8个字节的消息完整性校验值,这和802.11对每个数据分段(MPDU) 进行ICV校验的目的不同。

  ICV的目的是为了保证数据在传输途中不会因为噪声等物理因素导致报文出错,因此采用相对简单高效的CRC算法,但是黑客可以通过修改ICV值来使之和被篡改过的报文相吻合,可以说没有任何安全的功能。

  而WPA中的MIC则是为了防止黑客的篡改而定制的,它采用Michael算法,具有很高的安全特性。当MIC发生错误时,数据很可能已经被篡改,系统很可能正在受到攻击。此时,WPA会采取一系列的对策,比如立刻更换组密钥、暂停活动60秒等,来阻止黑客的攻击。

  WPA如何进行安全认证

  WPA是如何对无线局域网进行安全认证的呢?

  ● 客户端STA(Supplicant)利用WLAN无线模块关联一个无线接入点(AP/Authenticator);

  ● 在客户端通过身份认证之前,AP对该STA的数据端口是关闭的,只允许STA的EAP认证消息通过,所以STA在通过认证之前是无法访问网络的;

  ● 客户端STA利用EAP(如MD5/TLS/MSCHAP2等)协议,通过AP的非受控端口向认证服务器提交身份凭证,认证服务器负责对STA进行身份验证;

  ● 如果STA未通过认证,客户端将一直被阻止访问网络;如果认证成功,则认证服务器(Authentication Server)通知AP向该STA打开受控端口,继续以下流程;

  ● 身份认证服务器利用TKIP协议自动将主配对密钥分发给AP和客户端STA,主配对密钥基于每用户、每个802.1x的认证进程是惟一的;

  ● STA与AP再利用主配对密钥动态生成基于每数据包惟一的数据加密密钥;

  ● 利用该密钥对STA与AP之间的数据流进行加密,就好象在两者之间建立了一条加密隧道,保证了空中数据传输的高安全性;

  STA与AP之间的数据传输还可以利用MIC进行消息完整性检查,从而有效抵御消息篡改攻击。

  WPA存在的问题

  WPA只是在802.11i正式推出之前的Wi-Fi企业联盟的安全标准,由于它仍然是采用比较薄弱的RC4加密算法,所以黑客只要监听到足够的数据包,借助强大的计算设备,即使在TKIP的保护下,同样可能破解网络。因此,WPA是无线局域网安全领域的一个过客。

  今年6月,IEEE标准委员会终于通过了期待已久的最新无线局域网安全标准—802.11i,该标准通过使用CCM(Counter-Mode/CBC-MAC)认证方式和AES(Advanced Encryption Standard)加密算法,更进一步加强了无线局域网的安全和对用户信息的保护

来自: http://hi.baidu.com/bhw880302/blog/item/6646a356a51e5f52d10906a7.html

你可能感兴趣的:(linux)