Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
RC4
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===Key-scheduling algorithm (KSA)=== The [[Key schedule|key-scheduling]] algorithm is used to initialize the permutation in the array "S". "keylength" is defined as the number of bytes in the key and can be in the range 1 β€ keylength β€ 256, typically between 5 and 16, corresponding to a [[key length]] of 40β128 bits. First, the array "S" is initialized to the [[identity permutation]]. S is then processed for 256 iterations in a similar way to the main PRGA, but also mixes in bytes of the key at the same time. '''for''' i '''from''' 0 '''to''' 255 S[i] := i '''endfor''' j := 0 '''for''' i '''from''' 0 '''to''' 255 j := (j + S[i] + key[i [[modulo operation|mod]] keylength]) mod 256 swap values of S[i] and S[j] '''endfor'''
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)