RC4 Encryption Algorithm

Introduction

The RC4 Encryption Algorithm, developed by Ronald Rivest of RSA, is a shared key stream cipher algorithm requiring a secure exchange of a shared key. key stream is completely independent of the plaintext used. The algorithm uses a variable length key from 1 to 256 bytes to initialize a 256-byte state table. The state table is used for subsequent generation of pseudo-random bytes and then to generate a pseudorandom stream which is XORed with the plaintext to give the cipher text. Each element in the state table is swapped at least once.  RC4 is used in many commercial software packages such as Lotus Notes and Oracle Secure SQL.SSL, TLS, WEP and WPS

Strengths of RC4

  • The difficulty of knowing where any value is in the table.
  • The difficulty of knowing which location in the table is used to select each value in the sequence.
  • Encryption is about 10 times faster than DES.

Limitations of RC4

  • RC4 is no longer considered secure.
  • One in every 256 keys can be a weak key. These keys are identified by cryptanalysis that is able to find circumstances under which one of more generated bytes are strongly correlated with a few bytes of the key.
  • A particular RC4 Algorithm key can be used only once
1
Source-code DownloadButton
References: https://www.vocal.com/cryptography/rc4-encryption-algoritm/

Comments

Post a Comment