이 알고리즘은 키 설정과 암호의 두 단계로 작동합니다. 키 설정은 이 암호화 알고리즘의 첫 번째이자 가장 어려운 단계입니다. N비트 키 설정(N키 길이)이 있는 동안 암호화 키는 상태 및 키, N수 의 혼합 작업 수를 사용하여 암호화 변수를 생성하는 데 사용됩니다. 이러한 혼합 작업은 바이트 교환, 조절 작업 및 기타 수식으로 구성됩니다. 변두로 연작용은 분할에서 나머지를 산출하는 과정입니다. 예를 들어, 11/4는 2 나머지 3입니다. 따라서 11 모드 4 는 3과 같습니다. 위에서 언급했듯이 RC4의 가장 중요한 약점은 부족한 키 일정에서 비롯됩니다. 출력의 첫 번째 바이트는 키에 대한 정보를 표시합니다. 이 문제는 출력 스트림의 초기 일부를 삭제하기만 하면 수정할 수 있습니다. [55] 이것은 RC4-dropN으로 알려져 있으며, 여기서 N은 일반적으로 768 또는 1024와 같은 256의 배수이다. w 값은 S 배열의 크기에 상대적으로 소수입니다. 따라서 이 내부 루프를 256회 반복한 후 가능한 모든 값 0…255에서 값 i(모든 반복으로 증분)가 수행되었으며 S 배열의 모든 바이트가 적어도 한 번 씩 교환되었습니다.
뉴스: 9 월에 2015, 마이크로소프트는 마이크로소프트 가장자리와 인터넷 익스플로러에서 RC4사용의 끝을 발표 11. 2015년 3월 로얄 홀로웨이 연구원은 TLS에서 사용되는 RC4로 암호화된 암호에 대한 226개의 공격을 제공하여 공격 개선을 발표했습니다. [51] RC4는 스트림 암호 및 가변 길이 키 알고리즘이다. 이 알고리즘은 한 번에 하나의 바이트(또는 한 번에 더 큰 단위)를 암호화합니다. 키 입력은 입력 키에 대한 지식없이 예측할 수없는 스트림 8 비트 번호를 생성하는 의사 랜덤 비트 생성기이며, 생성기의 출력은 키 스트림이라고하며 X-OR 작업을 사용하여 한 번에 1 바이트씩 결합됩니다. 예: 프로토콜이 “(선택사항)”로 표시된 경우 RC4는 시스템을 사용하도록 구성할 수 있는 여러 암호 중 하나입니다. 순열은 키 스케줄링 알고리즘(KSA)을 사용하여 일반적으로 40비트에서 2048비트 사이의 가변 길이 키로 초기화됩니다. 이 작업이 완료되면 의사 무작위 생성 알고리즘(PRGA)을 사용하여 비트 스트림이 생성됩니다. 1995년, Andrew Roos는 KSA가 키 바이트의 일부 선형 조합과 상관 관계가 있는 키스트림의 처음 3바이트와 순열의 처음 몇 바이트와 상관관계가 있다는 것을 실험적으로 관찰했습니다. [31] 이러한 편견은 2007년까지 설명되지 않았으며, 구탐 폴, 싯데슈와르 라티, 수하모이 마이트라[32]는 키스트림-키 상관관계를 증명했고, 또 다른 작품에서는 구탐 폴과 수하모이 마이트라[33]가 순열-키 상관관계를 입증했다.