Rivest ciphers

From Citizendium
(Redirected from RC4)
Jump to navigation Jump to search
This article may be deleted soon.
To oppose or discuss a nomination, please go to CZ:Proposed for deletion and follow the instructions.

For the monthly nomination lists, see
Category:Articles for deletion.

This article is a stub and thus not approved.
Main Article
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
This editable Main Article is under development and subject to a disclaimer.

Ron Rivest, an MIT professor and one of the founders of RSA Security, has devised a number of ciphers for that company, either alone or with collaborators. These designs are designated as RCn. Officially, "RC" stands for Rivest Cipher; it may also be taken as Ron's Code.

There are also a series of cryptographic hashes, designed by Rivest for RSA security, numbered MDn for "Message Digest".


RC2 was a block cipher designed in 1987 for Lotus Corporation for use in their Lotus Notes software. It is a Feistel cipher with 18 rounds and a 64-bit block size. Details are in RFC 2268.

Like RC4, this cipher was authorised for export under the then current US laws, provided the key size was limited to 40 bits.


RC4 is a very widely deployed stream cipher.

The design has a size parameter; the 8-bit version is in widespread use. This generates pseudo-random data one byte at a time and maintains a 256-byte internal state. The combining operation is XOR. The key can be any size up to the state size, 256 bytes or 2048 bits for the 8-bit version.

RC4 is quite simple to implement in software and is very widely used. It is used (at least as one option) in Internet protocols such as TLS (RFC 2246) for secure web browsing and SSH (RFC 4251) for secure remote login. It is also use in WEP wireless networking, in Microsoft PPTP and in many other applications.

The design was proprietary until an Internet post that revealed the internal workings of the cipher. The posted version is sometimes labelled ARC4 for "Alleged RC4".


RC5 is a block cipher with 64-bit blocks, one of the DES generation of block ciphers. It was the first well-known cipher to make extensive use of data-dependent rotations to achieve nonlinearity. It is a Feistel cipher.

RFC 2040 gives an RC5 specification for Internet use.

Its descendant RC6, also using data-dependent rotations, was an AES finalist. RSA Security have a web page describing both ciphers.


RC6 is a block cipher that was a finalist in the AES competition. Like all AES candidates, it uses 128-bit blocks and supports key sizes of 128, 192 or 256 bits.

Like RC5, RC6 made extensive use of data-dependent rotations. RSA Security have a web page describing both ciphers.

RC6 is the only one of the five finalists which does not have a completely open license; it is still proprietary to RSA Security.