Protocol Padding Techniques

523 Words2 Pages

In this type of attacks when a CBC-encryption is used the plain text is easily recovered. As discussed above the best practice would be using ENCRYPT-THEN-MAC. In the TLS protocol padding technique is added to make the block the size multiple of cipher text. After this the block is finally encrypted with a CBC mode. In the decryption process the cipher text is taken and XOR’d with the cipher text block of the previous one and compared with that of the existing MAC [5].
Here a “Padding Oracle Attack” can be made as the padding is not secured by the MAC because in TLS protocol the padding is done after the tag is produced. Once an attack has been made, the attacker can do the padding oracle attack and can change the data. At the decryption if an error is shown which means the padding is not the exact as in the encryption process then it terminates an error message. Because in the decryption process the MAC is only verified only when the padding is validated. During this attack, depending upon the message errors occurred in the decryption the attacker predicts the message without knowing the key, while executing for several number of times and he will be successful [5].
When an estimation is done on how much time has taken to extract the plaintext block is in the range of 2^23 TLS sessions.

What is padding oracle attack?

In a symmetric key encryption the padding oracle attack is most commonly done which is considered as a “Timing side-channel attack” where the attacker knows whether during the encryption process the padding is done and executed correctly or not. If not he tries to attempt the recovery of plain text [1] [4].

(D)TLS Record protocols:

In this protocol the message to be protected is divided into blocks and then encryption functions are applied. The working of this DTLS is same as that of the TLS but here we are trying to decrease the timing side-channel [1].
Here a MAC tag ‘a’ is created for the given message. This tag length varies for different MAC functions we are using. If we are using a HMAC-MD5 then the tag length would be 16 bytes, for HMAC-SHA1 it will be 20 bytes and for HMAC-SHA256 it will be 32bytes [1].
In this a plain text is created with a Record (which is a combination of sequence of numbers and high dynamic range image) concatenated with tag produced with a valid HMAC and again concatenated with padding.

More about Protocol Padding Techniques

Open Document