What is CCMP?

The Counter Mode with Cipher Block Chaining Message Authentication Code Protocol, or CCMP for short, is a security standard for WLANs that is used in the WPA2 (Wi-Fi Protected Access 2) encryption standard. WLANs secured with CCMP are currently considered very secure despite theoretical attack possibilities.

What is CCMP?

The abbreviation CCMP stands for Counter-Mode/CBC-MAC Protocol (in full: Counter Mode with Cipher Block Chaining Message Authentication Code Protocol). It is a security standard described in the IEEE standard 802.11i and is used to secure WLANs with WPA2. The Counter-Mode/CBC-MAC Protocol uses different cryptographic algorithms and is much more secure than WEP or WPA with TKIP.

CCMP provides mechanisms for integrity assurance, encryption, and authentication in the WLAN. The method uses strong, 128-bit long keys in combination with 48-bit long initialization vectors and is based on the Advanced Encryption Standard (AES). WPA2 with CCMP and AES is currently considered very secure and is the recommended encryption method for WLAN networks.

How CCMP works and its main components

The Counter-Mode/CBC-MAC Protocol and AES provide a high level of security due to the 128-bit long keys and 48-bit long initialization vector. The essential components of CCMP are:

  • The Counter Mode component (CM) for encrypting the transmitted data
  • The Cipher Block Chaining Message Authentication Code (CBC-MAC) for integrity checking and authentication of the data
READ:  What is Diffie-Hellman key exchange?

A CCMP data packet consists of five different parts. It starts with the sender and destination address of the data. This is followed by the CCMP header. Components of the header are the packet number, the external initialization vector, and the key ID. The packet number is incremented for each packet.

The Counter-Mode/CBC-MAC Protocol uses these values to encrypt the data and the Message Integrity Code (MIC) (part three and part four of the packet). Attached to the end of the data packet is a Frame Check Sequence, which is used for error detection and error correction. Only the actual data portion and the MIC are encrypted in the data packet.

During key negotiations with WPA2 and CCMP, the stations each perform specific roles. The client is the so-called supplicant and the access point is the authenticator. It is specified exactly which messages and packets the stations have to send and how to react to them.

A repetition of the negotiated key, which depends on the initialization vector and WPA key, theoretically only occurs after 16 million packets. To prevent repetitions in heavily used WLANs after just a few hours, automatic renegotiation of the key is provided for at regular intervals.

The vulnerabilities of the Counter-Mode/CBC-MAC protocol

There are no known practical vulnerabilities in WPA2 with CCMP and AES, which is why WLANs secured with the Counter-Mode/CBC-MAC protocol are currently considered very secure. Some theoretical attack methods exist. In 2017, the KRACK method (Key Reinstallation Attack) became publicly known. It uses a vulnerability in the handshake procedure during connection establishment to negotiate keys.

READ:  What Is Encryption?

With KRACK, data packets can be decrypted and attacks such as TCP hijacking or HTTP injection can be carried out. In extreme cases, it is possible to replace the key used and completely undermine the encryption. However, mostly Android and GNU/Linux implementations are affected by the KRACK vulnerability. The vulnerability can be closed with a software update. The partially vulnerable Windows systems were already patched by Microsoft before the attack method became known.