In
cryptography
Cryptography, or cryptology (from grc, , translit=kryptós "hidden, secret"; and ''graphein'', "to write", or ''-logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of adve ...
, RC2 (also known as ARC2) is a
symmetric-key block cipher
In cryptography, a block cipher is a deterministic algorithm operating on fixed-length groups of bits, called ''blocks''. Block ciphers are specified cryptographic primitive, elementary components in the design of many cryptographic protocols and ...
designed by
Ron Rivest
Ronald Linn Rivest (; born May 6, 1947) is a cryptographer and an Institute Professor at MIT. He is a member of MIT's Department of Electrical Engineering and Computer Science (EECS) and a member of MIT's Computer Science and Artificial Int ...
in 1987. "RC" stands for "Ron's Code" or "Rivest Cipher"; other ciphers designed by Rivest include
RC4
In cryptography, RC4 (Rivest Cipher 4, also known as ARC4 or ARCFOUR, meaning Alleged RC4, see below) is a stream cipher. While it is remarkable for its simplicity and speed in software, multiple vulnerabilities have been discovered in RC4, ren ...
,
RC5, and
RC6.
The development of RC2 was sponsored by
Lotus
Lotus may refer to:
Plants
*Lotus (plant), various botanical taxa commonly known as lotus, particularly:
** ''Lotus'' (genus), a genus of terrestrial plants in the family Fabaceae
**Lotus flower, a symbolically important aquatic Asian plant also ...
, who were seeking a custom
cipher
In cryptography, a cipher (or cypher) is an algorithm for performing encryption or decryption—a series of well-defined steps that can be followed as a procedure. An alternative, less common term is ''encipherment''. To encipher or encode i ...
that, after evaluation by the
NSA, could be exported as part of their
Lotus Notes
HCL Notes (formerly IBM Notes and Lotus Notes; see Branding below) and HCL Domino (formerly IBM Domino and Lotus Domino) are the client and server, respectively, of a collaborative client-server software platform formerly sold by IBM, now by HCL ...
software. The NSA suggested a couple of changes, which Rivest incorporated. After further negotiations, the cipher was approved for export in 1989. Along with RC4, RC2 with a
40-bit key size
In cryptography, key size, key length, or key space refer to the number of bits in a key used by a cryptographic algorithm (such as a cipher).
Key length defines the upper-bound on an algorithm's security (i.e. a logarithmic measure of the fastes ...
was treated favourably under US
export regulations for cryptography.
Initially, the details of the algorithm were kept secret — proprietary to
RSA Security
RSA Security LLC, formerly RSA Security, Inc. and doing business as RSA, is an American computer security, computer and network security company with a focus on encryption and encryption standards. RSA was named after the initials of its co-fo ...
— but on 29 January 1996, source code for RC2 was anonymously posted to the Internet on the
Usenet
Usenet () is a worldwide distributed discussion system available on computers. It was developed from the general-purpose Unix-to-Unix Copy (UUCP) dial-up network architecture. Tom Truscott and Jim Ellis conceived the idea in 1979, and it was ...
forum,
sci.crypt. Mentions of
CodeView and
SoftICE (popular
debugger
A debugger or debugging tool is a computer program used to test and debug other programs (the "target" program). The main use of a debugger is to run the target program under controlled conditions that permit the programmer to track its execut ...
s) suggest that it had been
reverse engineered. A similar disclosure had occurred earlier with RC4.
In March 1998 Ron Rivest authored an
RFC publicly describing RC2 himself.
RC2 is a
64-bit block cipher with a variable size
key. Its 18 rounds are arranged as a source-heavy unbalanced
Feistel network
In cryptography, a Feistel cipher (also known as Luby–Rackoff block cipher) is a symmetric structure used in the construction of block ciphers, named after the German-born physicist and cryptographer Horst Feistel, who did pioneering research whi ...
, with 16 rounds of one type (''MIXING'') punctuated by two rounds of another type (''MASHING''). A MIXING round consists of four applications of the MIX transformation, as shown in the diagram.
RC2 is vulnerable to a
related-key attack
In cryptography, a related-key attack is any form of cryptanalysis where the attacker can observe the operation of a cipher under several different keys whose values are initially unknown, but where some mathematical relationship connecting the k ...
using 2
34 chosen plaintext
A chosen-plaintext attack (CPA) is an attack model for cryptanalysis which presumes that the attacker can obtain the ciphertexts for arbitrary plaintexts.Ross Anderson, ''Security Engineering: A Guide to Building Dependable Distributed Systems'' ...
s (Kelsey et al., 1997).
Sources
*
References
*
*
External links
* - A Description of the RC2(r) Encryption Algorithm
RSA FAQ: What is RC2?sci.crypt posting revealing the RC2 algorithm
{{Cryptography navbox , block
Broken block ciphers