Python

Python: RC4로 파일 암호화 하기

웹하는빡통 2020. 5. 3. 20:38

저번에는 3DES로 파일안에 있는 내용을 암/복호화를 하였다. 

이번에는 스트림 암호 중 하나인 RC4 암호로 파일을 암/복호화 해보자

 

RC4란: 스트림 암호의 종류 중 하나로, 전송 계층 보안(TLS/SSL)이나 WEP 등 여러 프로토콜에 사용되었었던 암호방식이다. 현재는 취약점이 발견되어 권장하고있지 않고있다고 한다.

바이트 단위로 처리하기 때문에 다른 비트 단위 암호보다 실행속도가 빠르다. 

이번 코드도 전 3DES코드랑 차이가 없다. 차이가 있는 부분만 설명하겠다. 

 

3DES에서는 IV를 선언해 주었지만 RC4에서는 IV를 선언해주지 않는다.

왜일까?? DES, 3DES, AES 블록암호 같은 경우는 CBC모드를 사용하기 때문에 IV가 필요하다.

하지만 RC4같은 스트림 암호에서는 IV가 필요하지 않다. 

 

 

전체 소스 코드. 

 

실행결과.

실행이 정상적으로 되면서 3DES와 똑같이 파일이 생성되었다. 

 

열어보니 정상으로 잘 되는구만