Jump to content

Rabbit (cipher)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Ww (talk | contribs) at 00:13, 9 August 2006 (+authors). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Rabbit is a high-speed stream cipher first presented in February 2003 at the 10th FSE workshop by Martin Boesgaard, Mette Vesterager, Thomas Christensen and Erik Zenner. In May 2005, it was submitted to the eSTREAM Project of the eCRYPT network. As of March 2006, no cryptographic weaknesses are known.

Rabbit uses a 128-bit key and a 64-bit initialization vector. The cipher was designed with high performance in software in mind, where fully optimized implementations achieve an encryption speed of up to 3.7 cycles per byte on a Pentium 3, and of 9.7 cycles per byte on an ARM7. However, the cipher also turns out to be very fast and compact in hardware.

The core component of the cipher is a bitstream generator which encrypts 128 message bits per iteration. The cipher's strength rests on a strong mixing of its inner state between two consecutive iterations. The mixing function is entirely based on arithmetical operations that are available on a modern processor, i.e., no S-boxes or lookup tables are required to implement the cipher.

The authors of the cipher have provided a full set of cryptanalytic white papers on the Cryptico home page. The company requires a license fee for commercial use of the cipher, but allows free use for all non-commercial purposes.

References

  • M. Boesgaard, M. Vesterager, T. Pedersen, J. Christiansen, O. Scavenius. Rabbit: A High-Performance Stream Cipher. Proc. FSE 2003. Springer LNCS 2887, pp. 307-329 (PDF)
  • M. Boesgaard, T. Pedersen, M. Vesterager, E. Zenner. The Rabbit Stream Cipher - Design and Security Analysis. Proc. SASC 2004. (PDF)

External links

Template:Stream ciphers