본문 바로가기
Python

Python을 이용한 스트림 암호 구현

by 웹하는빡통 2020. 4. 25.

스트림 암호로 구현하기.

Pycryptodome은 스트림 암호를 위해 ARC4 알고리즘을 제공한다. ARC4는 Alleged RC4를 의미한다.

스트림 암호는 보통 8비트 단위로 암호화를 수행하는데 암호 블록 크기는 1바이트이다.

온영 모드로는 ECB모드만 사용 가능하므로 IV는 필요가 없다.

따라서 ARC4 암호는 암호키만 정의되면 1문자 이상의 임의의 메시지에 대해 암호화, 복호화가 가능하다. 

 

소스코드.

해당 코드를 살펴보면 코드 자체는 매우 단순하다.

ARC4 모듈을 이용하여 단문 메시지를 암호화,복호화하는 코드이다.

 

주요 부분만 설명하자면 MYRC4라는 이름으로 클래스를 정의하고 이 클래스의 생성자는 인자로 전달받은 key를 key.encode()를 이용하여 바이트 문자열로 변환한 값을 self.key에 할당 해준다.

 

 

실행 결과. 

댓글