最近在写关于wifi模块的连接部分,界面上需要不断得开线程刷新,连接不说,底层iwlist, modprobe,wpa_supplicant,dhcp的命令参数一直不太理解,因此觉得自己有必要给自己科普下相关知识了。

第一弹,关于wifi加密类型。

在wifi连接时需要指定连接AP的加密类型,涉及到命令就是命令的参数指定了。

说白了标题里的都是些wifi的加密类型而已。

为了解决WEP的缺陷,提出新的解决方案,这个方案分为2步走:第一步,从当前现状出发,为了兼容WEP,提出了TKIP的加密方式。

WPA就是WiFi 联盟推出的一个过渡标准,定义了一种新的加密方式-TKIP;第二步,从长远角度考虑,提出一种具有更高安全性的加密标准-

CCMP,其加密算法为 AES。WPA2就是WiFi联盟推出的第二代标准,推荐使用CCMP加密标准,当然也后向兼容TKIP,WEP。

 

1.WEP

有线等效加密(Wired Equivalent Privacy),又称无线加密协议(Wireless Encryption Protocol),简称WEP,是个保护无线网络(Wi-Fi)信息安全的体制。因为无线网络是用无线电把讯息传播出去,它特别容易被窃听。WEP 的设计是要提供和传统有线的局域网路相当的机密性,而依此命名的。不过密码分析学家已经找出 WEP 好几个弱点,因此在2003年被 Wi-Fi Protected Access (WPA) 淘汰,又在2004年由完整的 IEEE 802.11i 标准(又称为 WPA2)所取代。WEP 虽然有些弱点,但也足以吓阻非专业人士的窥探了

 

2.WPA和WPA2

WPA 全名为 Wi-Fi Protected Access,有WPA 和 WPA2两个标准,是一种保护无线电脑网路(Wi-Fi)安全的系统,它是应研究者在前一代的系统有线等效加密(WEP)中找到的几个严重的弱点而产生 的。WPA 实作了 IEEE 802.11i 标准的大部分,是在 802.11i 完备之前替代 WEP 的过渡方案。WPA 的设计可以用在所有的无线网卡上,但未必能用在第一代的无线取用点上。WPA2 实作了完整的标准,但不能用在某些古老的网卡上。这两个都提供优良的保全能力,但也都有两个明显的问题:
×  WPA或WPA2 一定要启动并且被选来代替 WEP 才有用,但是大部分的安装指引都把 WEP 列为第一选择。
×  在使用家中和小型办公室最可能选用的“个人”模式时,为了保全的完整性,所需的密语一定要比已经教用户设定的六到八个字元的密码还长。
IEEE 802.11 所制定的是技术性标准 ,Wi-Fi 联盟所制定的是商业化标准 , 而 Wi-Fi 所制定的商业化标准基本上也都符合 IEEE 所制定的技术性标准。 WPA(Wi-Fi Protected Access) 事实上就是由 Wi-Fi 联盟所制定的安全性标准 , 这个商业化标准存在的目的就是为了要支持 IEEE 802.11i 这个以技术为导向的安全性标准。而 WPA2 其实就是 WPA 的第二个版本。 WPA 之所以会出现两个版本的原因就在于 Wi-Fi 联盟的商业化运作。
我们知道 802.11i 这个任务小组成立的目的就是为了打造一个更安全的无线局域网 , 所以在加密项目里规范了两个新的安全加密协定 – TKIP 与 CCMP(注1) 。其中 TKIP 虽然针对 WEP 的弱点作了重大的改良 , 但保留了 RC4 演算法和基本架构 , 言下之意 ,TKIP 亦存在着 RC4 本身所隐含的弱点。因而 802.11i 再打造一个全新、安全性更强、更适合应用在无线局域网环境的加密协定 -CCMP 。所以在 CCMP 就绪之前 ,TKIP 就已经完成了。但是要等到 CCMP 完成 , 再发布完整的 IEEE 802.11i 标准 , 可能尚需一段时日 , 而 Wi-Fi 联盟为了要使得新的安全性标准能够尽快被布署 , 以消弭使用者对无线局域网安全性的疑虑 , 进而让无线局域网的市场可以迅速扩展开来 , 因而使用已经完成 TKIP 的 IEEE 802.11i 第三版草案 (IEEE 802.11i draft 3) 为基准 , 制定了 WPA 。而于 IEEE 完成并公布 IEEE 802.11i 无线局域网安全标准后 ,Wi-Fi 联盟也随即公布了 WPA 第 2 版 (WPA 2) 。所以:

WPA = IEEE 802.11i draft 3 = IEEE 802.1X/EAP + WEP( 选择性项目 )/TKIP
WPA2 = IEEE 802.11i = IEEE 802.1X/EAP + WEP( 选择性项目 )/TKIP/CCMP

( 有些无线网路设备中会以 AES 、 AES-CCMP 的字眼来取代 )
在有些无线网路设备的规格中会看到像 WPA-Enterprise / WPA2-Enterprise 以及 WPA-Personal / WPA2-Personal 的字眼 , 其实 WPA-Enterprise / WPA2-Enterprise 就是 WPA / WPA2 ; WPA-Personal / WPA2-Personal 其实就是 WPA-PSK / WPA2-PSK, 也就是以 ”pre-share key” 或 ” passphrase” 的验证 (authentication) 模式来代替 IEEE 802.1X/EAP 的验证模式 ,PSK 模式下不须使用验证服务器 ( 例如 RADIUS Server), 所以特别适合家用或 SOHO 的使用者。

而关于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。
 

注:

1.在设定WPA的参数时可能会进一步需要指定。