Quote Originally Posted by TheRonin View Post
The reason for modifying RC4 instead of just making something up is that it's a known algorithm that you can find source code for online to alter AND it's *very* quick and simple. Also, it means that each client can have a list of keys instead of different procedures for scrambling data.
RC4 has a well-known weakness, so one should at least skip the initial bytes it generates.

The idea of several scrambling schemes comes from a method for electronic cash verification.