Cryptography Reference
In-Depth Information
3.7
RC4
Ifwecouldfindtheanswertothat [ whyitisthatweandtheuniverseexist ] ,
it would be the ultimate triumph of human reason — for then we would know
the mind of God.
Stephen Hawking
— from A Brief History of Time (see [121, page 175])
RC4 is a stream cipher invented by Rivest in 1987 for Data Security. Ronald
L. Rivest received a B.A. in mathematics from Yale University in 1969 and a
Ph.D. in computer science from Stanford university in 1974. He is a co-inventor
of the RSA public-key cryptosystem (nongovernmental version, see pages 101-
104) and founder of RSA Data Security (now called RSA Security after having
been bought by Security Dynamics). Among his numerous, outstanding hon-
ours and positions are Fellow of the American Academy of Arts and Science;
Fellow of the Association for Computing Machinery; member of the National
Academy of Engineering; Director of the the Financial Cryptographic Associa-
tion; Director of the International Association for Cryptologic Research; Fellow
of the World Technology Network; member of MIT's Laboratory for Computer
Science; member of MIT's laboratory's Theory of Computing Group; a leader of
the MIT Cryptography and Information Security Group; and currently the An-
drew and Erna Viterbi Professor of Electrical Engineering and Computer Science
at MIT. He, together with Adleman and Shamir, was awarded the 2000 IEEE
Koji Kobayashi Computers and Communications Award, as well as the Secure
Computing Lifetime Achievement Award. Moreover, he founded Peppercoin TM ,
a company that provides a digital payment service for merchants, which osten-
sibly allows merchants to process small digital transactions for only pennies. He
is widely respected as an expert in cryptographic design and cryptanalysis.
RC4 was kept a secret, but in 1994 it was somehow leaked to the cyberpunks
remailerslist on the Internet. Then it quickly spread to the sci.crypt newsgroup,
then to numerous other sites on the Internet. It is probably safe to say that
RC4 is the most widely used stream cipher in existence today (see page 129).
The RC4 Cryptosystem
As usual, we describe the cipher via each of its components, which in this
case is minimal, and easy to understand.
The State Vector
The state vector (row matrix) is a 256-byte vector labelled
S [ j ] for j =0 , 1 , 2 ,..., 255 .
We initialize S by setting
S [ j ]= j for each j =0 , 1 , 2 ,..., 255 .
The keylength k of the input (unique) nonce, or key, K , may vary from 1 to 256
bytes.
Search WWH ::




Custom Search