시저 암호・ROT13 생성기
문자열을 시저 암호(시프트 수 지정)또는 ROT13으로 암호화・복호화합니다. 알파벳만 시프트하며, 숫자・기호・한글 등은 그대로 유지됩니다. 변환은 브라우저 내에서 완료되며 입력 내용은 서버로 전송되지 않습니다.
| 시프트 수(0~25) | |
|---|---|
| 모드 |
|
복사되었습니다!
시저 암호・ROT13이란
시저 암호는 알파벳을 일정한 문자 수만큼 밀어서 치환하는 가장 고전적인 암호 방식 중 하나입니다. 예를 들어 시프트 수가 3이면 A는 D로, B는 E로 치환됩니다(Z 다음은 다시 A로 돌아갑니다). ROT13은 시프트 수를 13으로 고정한 특수한 시저 암호로, 26자 알파벳을 정확히 절반만큼 미루기 때문에 같은 변환을 한 번 더 적용하면 원래 문자열로 돌아온다는 성질이 있습니다(암호화와 복호화가 같은 조작이 됩니다).
시저 암호란
시저 암호는 평문(원래 문장)의 알파벳을 알파벳 순서상 일정한 문자 수만큼 뒤(또는 앞)로 밀어서 다른 문자로 치환하는 "치환식 암호"의 일종입니다. 밀어내는 문자 수(시프트 수)가 암호를 푸는 열쇠가 되며, 보내는 사람과 받는 사람이 같은 시프트 수를 공유하고 있으면 암호문에서 원래 문장을 복원할 수 있습니다. 이 도구는 시프트 수를 0~25 범위에서 자유롭게 지정해 암호화・복호화할 수 있으며, 시프트 수를 13으로 고정한 특수한 경우인 ROT13으로도 클릭 한 번에 전환할 수 있습니다.
변환 대상은 반각 영문자(A~Z, a~z)뿐이며, 대문자・소문자 구분은 그대로 유지되고 숫자・기호・공백・한글 등은 전혀 변경되지 않습니다. 입력부터 출력까지 모든 처리는 브라우저 내 자바스크립트에서 완료되므로, 암호화하거나 해독하고 싶은 문장을 서버로 전송하지 않고도 그 자리에서 안전하게 결과를 확인할 수 있습니다.
시저 암호 생성기 사용법
- 모드를 선택합니다 "암호화" 또는 "복호화"를 선택합니다. 복호화는 암호화의 반대 방향으로 밀기만 하므로, 같은 시프트 수를 지정하면 원래 문장으로 돌아옵니다.
- 시프트 수를 지정합니다 0~25 범위에서 밀어낼 문자 수를 입력합니다. ROT13을 사용하려면 "ROT13 사용" 버튼을 누르면 시프트 수가 자동으로 13으로 설정됩니다.
- 문장을 입력합니다 암호화・복호화하고 싶은 문장을 텍스트 입력란에 입력합니다. 입력할 때마다 실시간으로 아래에 변환 결과가 표시됩니다.
- 결과를 복사합니다 "복사" 버튼을 누르면 변환 결과가 클립보드에 복사됩니다. 다시 시작하고 싶을 때는 "지우기"로 입력란을 비울 수 있습니다.
더 잘 활용하기 위한 팁
- ROT13은 인터넷 게시판이나 포럼에서 스포일러나 정답을 "보고 싶은 사람만 읽을 수 있게" 하기 위한 가벼운 난독화 수단으로 오래전부터 사용되어 왔습니다. 강력한 암호가 아니라 어디까지나 "의도치 않게 눈에 들어오지 않도록" 하는 정도의 용도입니다.
- 시프트 수를 26으로 하면 원래 문자열과 완전히 일치합니다(26자 알파벳을 한 바퀴 돌리기 때문입니다). 0으로 설정해도 마찬가지로 변화가 없습니다.
- "복호화" 모드에서는 암호화할 때와 같은 시프트 수를 지정하면 원래 평문으로 돌아옵니다. 시프트 수를 바꾸지 않고 모드만 전환해서 동작을 확인할 수 있습니다.
- 대문자・소문자는 각각 독립적으로 유지됩니다(A를 암호화하면 D, a를 암호화하면 d가 되며, 대소문자 구분 자체는 바뀌지 않습니다).
시저 암호 생성기가 유용한 상황
암호 이론・정보 보안 학습
평문・암호문・키(시프트 수)・전수조사 공격과 같은 암호의 기본 개념을, 실제로 문자가 치환되는 모습을 보면서 체감적으로 배울 수 있습니다. 수업이나 프로그래밍 학습 교재로도 활용할 수 있습니다.
스포일러 방지・가벼운 난독화
ROT13으로 퀴즈의 정답이나 스포일러 정보를 일시적으로 읽기 어렵게 만들고, 보고 싶은 사람만 직접 복호화해서 읽도록 하는 게시판・포럼 문화의 캐주얼한 용도로 사용할 수 있습니다.
CTF・암호 퍼즐 출제 및 해독 연습
시프트 수를 바꾼 암호문을 직접 만들어 친구나 학생에게 해독하게 하는 출제에 활용할 수 있으며, 반대로 낯선 암호문을 모든 시프트 수로 시도해 보며 해독하는 연습에도 적합합니다.
더 발전된 암호 방식과의 비교
단일 시프트 수만으로 치환하는 시저 암호의 약점을 체감했다면, 키워드로 여러 시프트량을 전환하는 비즈네르 암호 도구나 로터 기구로 암호화하는 에니그마 암호 도구와 비교해 보면 암호가 어떻게 발전해 왔는지 알 수 있습니다.
시저 암호 관련 용어
- 시저 암호
- 알파벳을 일정한 문자 수만큼 밀어서 치환하는, 가장 고전적인 치환식 암호 중 하나입니다. 밀어내는 문자 수(시프트 수)를 열쇠로 삼아 보내는 사람과 받는 사람이 공유함으로써 암호문을 주고받을 수 있습니다.
- 시프트 암호
- 시저 암호의 다른 이름으로, 문자를 일정량 "시프트(이동)"시켜 치환한다는 점에 주목한 명칭입니다. 시저 암호・시프트 암호・가법 암호는 모두 같은 방식을 가리키는 말로 사용됩니다.
- 치환식 암호
- 평문의 문자 하나하나를 다른 문자로 치환하여 암호화하는 방식의 총칭입니다. 시저 암호는 모든 문자를 같은 규칙(일정한 시프트 수)으로 치환하는 가장 단순한 치환식 암호에 해당합니다.
- 전수조사 공격(무차별 대입 공격)
- 열쇠로 가능한 모든 값을 하나씩 시도해 암호를 해독하는 방법입니다. 시저 암호는 시프트 수가 0~25까지 26가지뿐이므로, 컴퓨터를 사용하면 순식간에, 수작업으로도 몇 분이면 해독할 수 있습니다.
- ROT13
- 시프트 수를 13으로 고정한 특수한 시저 암호입니다. 26자 알파벳을 정확히 절반만큼 밀기 때문에, 같은 변환을 한 번 더 적용하면 원래 문자열로 돌아온다는 성질이 있어 암호화와 복호화 조작을 구분 없이 사용할 수 있습니다.
- 평문과 암호문
- "평문"은 암호화하기 전의 원래 문장, "암호문"은 암호화한 후의 읽을 수 없는 문장을 말합니다. 시저 암호에서는 평문과 암호문의 문자 수가 변하지 않고, 각 문자가 다른 문자로 치환될 뿐입니다.
- 키(암호 키)
- 암호화・복호화 규칙을 결정하는 매개변수입니다. 시저 암호에서는 시프트 수가 이에 해당하며, 보내는 사람과 받는 사람이 같은 키를 공유하지 않으면 올바르게 복호화할 수 없습니다.
자주 묻는 질문
여담 ― 왜 "시저"라는 이름이 붙었을까
시저 암호라는 이름은 고대 로마의 정치가이자 군인이었던 율리우스 카이사르(영어식으로 시저)가 군사 기밀 통신에 이 암호 방식을 실제로 사용했다는 일화에서 유래했습니다. 로마의 역사가 수에토니우스의 저서 『황제전』에는 카이사르가 친구에게 보내는 편지에서 3문자 시프트 암호를 사용했다는 기록이 남아 있습니다.
암호로서의 강도는 현대 기준으로는 매우 낮지만, "문자를 일정한 규칙으로 밀어서 치환한다"는 발상은 이후 등장한 치환식 암호(알파벳 대응 관계를 더 복잡하게 만든 것)나 비즈네르 암호(여러 시프트량을 조합한 것) 등 더 정교한 고전 암호의 원형이 되었다는 역사적 의의가 있습니다.
현대 암호 이론 교과서에서 가장 먼저 소개되는 암호 중 하나가 시저 암호인 경우가 많은 이유는, "평문""암호문""키(이 경우 시프트 수)""전수조사 공격"과 같은 암호의 기본 개념을, 복잡한 수학을 사용하지 않고도 직관적으로 이해할 수 있는 훌륭한 교재이기 때문입니다.