Residual block termination
In cryptography, residual block termination is a variation of cipher block chaining mode (CBC) that does not require any padding. It does this by effectively changing to cipher feedback mode for one block. The cost is the increased complexity.
Encryption procedure
If the plaintext length N is not a multiple of the block size L:
- Encrypt the ⌊N/L⌋ full blocks of plaintext using the cipher block chaining mode;
- Encrypt the last full encrypted block again;
- XOR the remaining bits of the plaintext with leftmost bits of the re-encrypted block.
Decryption procedure
- Decrypt the ⌊N/L⌋ full encrypted blocks using the Cipher Block Chaining mode;
- Encrypt the last full encrypted block;
- XOR the remaining bits of the ciphertext with leftmost bits of the re-encrypted block.
Short message
For messages shorter than one block, residual block termination can use an encrypted IV instead of the previously encrypted block.
This article is issued from Wikipedia - version of the Monday, January 06, 2014. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.