Search for a tool
RC4 Cipher

Tool for encoding / decoding with the RC4 (Rivest Cipher 4) algorithm used in particular in the TLS (Transport Layer Security) protocol.

Results

RC4 Cipher -

Tag(s) : Modern Cryptography

Share
dCode and more

dCode is free and its tools are a valuable help in games, maths, geocaching, puzzles and problems to solve every day!
A suggestion ? a feedback ? a bug ? an idea ? Write to dCode!

Please, check our dCode Discord community for help requests!
NB: for encrypted messages, test our automatic cipher identifier!

Feedback and suggestions are welcome so that dCode offers the best 'RC4 Cipher' tool for free! Thank you!

# RC4 Cipher

## RC4 Decoder

 Results format String of Printable Characters (ASCII/Unicode) Hexadecimal 00-7F-FF Decimal 0-127-255 Octal 000-177-377 Binary 00000000-11111111 Integer number File to download

## RC4 Encoder

The RC4 was created to be symmetric, the encryption phase is identical to decryption, use the form above.

### What is RC4? (Definition)

RC4 for Rivest Cipher 4 is a symmetric and fast cipher algorithm, well suited to binary data, created by Ronald Rivest and used in some protocols like TLS or WEP.

### How to encrypt using RC4 cipher?

The RC4 digit uses a key that can initialize an array of 256 boxes.

The algorithm that allows to initialize the array with the key key is:

`// Pseudocodefor i = 0 -> 255 { t[i] = i}j = 0k = length(cle)for i = 0 -> 255 { j = (j + t[i] + key[i % k]) % 256 swap t[i] <-> t[j]}`

The array t can then be used to generate a stream by moving values and XOR operation.

The RC4 algorithm is then:` // Pseudocode a = b = 0 j = length(string) codes = [] for i = 0 -> j { a = (a + 1) % 256 b = (b + t[a]) % 256 swap t[a] <-> t[b] codes []= ( t[ (t[a] + t[b]) % 256] ) XOR string[i] } print codes`

The codes are values between 0 and 255.

Example: dCode (64,43,6F,64,65 in hexadecimal) encrypted with the key RC4 (52,43,34 in hexadecimal) is coded 2B,7F,DA,B6,1D (hexadecimal)
Identically 2B,7F,DA,B6,1D (in hexadecimal) decrypted with the same key RC4 (52,43,34 in hex) becomes 64,43,6F,64,65 (dCode in ASCII)

### How to decrypt RC4 cipher?

Decryption is exactly the same as encryption.

### How to recognize a RC4 ciphertext?

The codes generated by RC4 are between 0 and 255, usually represented in hexadecimal.

RC4 is pseudo-random, there is no easily detectable bias.

The code is also called RCfour, ARCFour, ARC4, Alleged RC4 or Ron's Code 4.

Any reference to WEP or TLS protocols is a clue.

### When was RC4 invented?

RC4 was invented by Ronald Rivest (one of the inventors of RSA encryption) in 1987.

## Source code

dCode retains ownership of the "RC4 Cipher" source code. Except explicit open source licence (indicated Creative Commons / free), the "RC4 Cipher" algorithm, the applet or snippet (converter, solver, encryption / decryption, encoding / decoding, ciphering / deciphering, breaker, translator), or the "RC4 Cipher" functions (calculate, convert, solve, decrypt / encrypt, decipher / cipher, decode / encode, translate) written in any informatic language (Python, Java, PHP, C#, Javascript, Matlab, etc.) and all data download, script, or API access for "RC4 Cipher" are not public, same for offline use on PC, mobile, tablet, iPhone or Android app!
Reminder : dCode is free to use.

## Cite dCode

The copy-paste of the page "RC4 Cipher" or any of its results, is allowed (even for commercial purposes) as long as you credit dCode!
Exporting results as a .csv or .txt file is free by clicking on the export icon
Cite as source (bibliography):
RC4 Cipher on dCode.fr [online website], retrieved on 2024-09-10, https://www.dcode.fr/rc4-cipher

## Need Help ?

Please, check our dCode Discord community for help requests!
NB: for encrypted messages, test our automatic cipher identifier!