Выдаёт чрезвычайно длинный поток псевдослучайных байт, однозначно определяемых по ключу длиной до 256 байт. Поток обладает отличными статистическими свойствами и пригоден для криптографии. Успешных атак на RC4 я не знаю; все, что я слышал про успешные атаки на него, базировались на атаке схемы вычисления ключа.
Для хранения в ОЗУ требуется 256 байт таблица и ещё пара байт указателей в таблице.
На каждый байт что-то около десятка восьмибитных операций.
RC4InitKey(&Key); for (;;) { c=GetCharFromInput(); c ^= RC4GetNextByte(); PutCharToOutput(c); };
Исходники RC4 никогда фирмой RSA Lab. не раскрывались, но существует фриварный ArcFour, который по случайному ;-) стечению обстоятельств с RC4 полностью совместим.