Rabbit is a high-speed stream cipher first proposed at the FSE workshop in 2003.
Rabbit uses a 128-bit key and a 64-bit initialization vector. The core component of this encryption algorithm is a bit stream generator that encrypts 128 message bits with each iteration.
Padding Modes
- None: No padding
- PKCS7: Padding consists of a byte sequence, with each byte padded to the length of the byte sequence
- Zeros: Padding consists of bytes set to zero
- ANSIX923: Padding consists of a byte sequence, where the last byte of the sequence indicates the length and other bytes are filled with zeros
- ISO10126: Padding consists of a byte sequence, where the last byte of the sequence indicates the length and other bytes are filled with random data
For block symmetric encryption algorithms, some operation modes require the byte length of plaintext data to be a multiple of the block size, so we must pad the plaintext data before encrypting it.