카이사르 암호(Caesar cipher)


카이사르 암호 또는 시저 암호라고 불리며 기원전 100년경에 로마에서 활약했던 장군이었습니다.

이 게시글에서는 카이사르 암호라고 부르겠습니다.

원리

(이미지 출처 위키피디아:https://ko.wikipedia.org/wiki/%EC%B9%B4%EC%9D%B4%EC%82%AC%EB%A5%B4_%EC%95%94%ED%98%B8)

카이사르 암호는 간단하게 알파벳을 일정한 수 만큼 오른쪽으로 이동시킵니다.

일정한 수를 키(Key)라고 부르고 기본적으로 키값은 3입니다.

만약 A라는 문자가 있다고 하고 키를 사용해 암호화를 하면A가 D로 치환됩니다.

반대로 복호화 과정에서는 키 만큼 왼쪽으로 가면 암호화 하기 전의 평문을 얻을 수 있습니다.

또한 키값마다 ROT1~ROT25가 됩니다.(ROT도 마찬가지로 키값만큼 오른쪽으로 이동합니다.)

즉 Hello world!이라는 평문을 암호화 하면 Khoor aruog!가 됩니다.


C++ 소스코드 확인

댓글을 달아 주세요