临时密钥完整性协议

临时密钥完整性协议（英文：Temporal Key Integrity Protocol，縮寫：TKIP）是一种用于IEEE 802.11无线网络标准中的替代性安全协议，由电气电子工程师学会（IEEE）802.11i任务组和Wi-Fi联盟设计，用以在不需要升级硬件的基础上替代有线等效加密（WEP）协议。由于WEP协议的薄弱造成了数据链路层安全被完全跳过，且由于已经应用的大量按照WEP要求制造的网络硬件急需更新更可靠的安全协议，在此背景下临时密钥完整性协议应运而生。需要注意的是，临时密钥完整性协议自2012年的802.11标准中，已不再视为安全，且即将废弃。

历史 
2002年10月31日，Wi-Fi联盟提出临时密钥完整性协议，归类于WPA标准的一部分。  。IEEE随后在2004年7月23日的IEEE 802.11i-2004报告中背书临时密钥完整性协议并同时提出基于计数器模式密码块链消息完整码协议的802.1X和AES协议这些更坚固的安全协议。之后Wi-Fi联盟接受了IEEE的相关报告并冠以“WPA2”这个商业名称发布。

临时密钥完整性协议随后由于安全性原因于2009年1月被IEEE废弃。ZDNet于2010年7月18日的报告中表明Wi-Fi联盟应当禁止所有Wi-Fi设备使用WEP和临时密钥完整性协议。

技术细节 
临时密钥完整性协议和相关的WPA标准应用了3个新的安全功能以解决WEP协议的安全漏洞。

 TKIP使用密钥混合功能。该功能混合了根密钥（Root Secret key）和初始化向量，而后再通过RC4初始化。在WEP中初始化向量基本上被直接连在根密钥上而后直接通过RC4，从而造成了RC4为基础的WEP可以被轻而易举的使用相关密钥攻击而破解。 
 WPA使用序列计数器（Sequence Counter）以防御回放攻击（Replay Attacks）。当数据包的顺序不符合规定时将会被连接点自动拒收。
 临时密钥完整性协议使用64位信息完整性代码（Message Integrity Check, MIC）以防止假包或者数据包篡改。

为了让该协议可以在老式WEP硬件上使用，临时密钥完整性协议仍使用RC4为其核心加密算法，临时密钥完整性协议同时提供了密钥再生成算法加固协议。

密钥混合增加了破解密钥的难度，并且给攻击者持久有限且加密数据用以破解。WPA2更应用了信息完整性代码以防止篡改发生。在老式WEP下在知道数据包内容的情况下可以轻易篡改即使是已加密的数据包。

安全性
临时密钥完整性协议与WEP的核心算法时一样的，所以也就造成了其注定面对相似破解WEP攻击时的薄弱。由此TKIP的加强功能就非常重要。信息完整性代码，单包哈希计算，广播密钥轮换和序列计数器避免了很多以前可以很对WEP的攻击。混合密钥功能避免了针对WEP的密钥恢复攻击。

但即使包括了这些安全功能，TKIP仍然可以被一些改进的攻击破解。

贝克-特夫斯攻击
临时密钥完整性协议与WEP协议由于使用相同的RC4加密算法，对于密钥流恢复攻击有天生弱点。如果该攻击成功，可以让攻击者成功传送7至15个数据包。当前公开的针对临时密钥完整性协议的攻击方式中无法泄露对偶主密钥或者对偶临时密钥。2008年11月8日，马丁·贝克（ Martin Beck）和艾瑞克·特夫斯（Erik Tews）发布了一种针对TKIP WPA的贝克-特夫斯攻击法（Beck-Tews Attacks）。

Beck-Tews攻击可以看做是针对WEP的断续攻击（Chop-Chop Attack）的延展。因为WEP所使用的查和（Checksum）算法CRC32在密码学上并不安全，攻击者可以猜测到数据包中的单个字节，而后连接点会对猜测正确与否作出确认或拒绝传输。如果猜测正确，攻击者可以发现猜测正确并继续猜测下一个字节。不过相较于针对WEP的断续攻击，攻击者如果猜错必须额外等待60秒才能继续猜测。这是因为尽管临时密钥完整性协议仍然使用CRC32查和算法，但由于使用了序列计数器（称为Michael）而可以拖延攻击。如果一个接入点在60秒内收到了2个Michael序列计数器错误，接入点随后将启动反制措施，重组临时密钥完整性协议的对话密钥（Session Key），从而改变随后的密钥流。由此，Beck-Tews攻击则等待一个适当的时间从而避免该反制措施。由于地址解析协议包（ARP包）可以非常简单通过包大小鉴别，并且包中内容通常很容易猜到（大多ARP包内容相似），从而留给攻击者需要猜测的包大小则变得非常有限（大约为14字节）。通常来说在寻常的网络配置下只需要12分钟即可破解12加密字节。

当攻击者可以接触到全部的加密包内容后，对于余下在每个包内的明码内容进行去除，攻击者即可轻易获得包内的密钥流，同时还可获得对话的MIC码。应用这些信息攻击者可以重建新的数据包并在网络上传送。Beck-Tews攻击使用QoS通道传送新组建的数据包从而绕开WPA应用的回放攻击防护。由此攻击者可以传送数据包以达到其他攻击方式，比如ARP欺骗攻击，拒绝式攻击或其他类似攻击。

2009年10月，挪威科技大学的费恩·霍尔沃森（Finn M Helvorsen）及其同事更进一步，使得攻击者可以在18分25秒内注入一个比普通ARP包异常大的包（596字节）。

大東-森井攻击
日本的研究学者大東俊博和以贝克-特夫斯攻击法為基礎，发布了一种更简单且更快速的类似攻击方式——「大東-森井攻击」（Ohigashi-Morii Attack）。该种攻击在使用贝克-特夫斯攻击的同时使用中间人攻击，同时不需要接入点必须使用QoS。

鉴于这种攻击方法是基于贝克-特夫斯攻击，所以该种攻击仅仅对临时密钥完整性协议有效，对于使用AES的WPA协议则无效。

相关条目
 WEP
 AES
 CCMP
 IEEE 802.11i-2004

引用

已攻破的密码算法
加密协议
密钥管理
无线网络
IEEE 802.11