인코딩

ROT13 / 카이사르 암호

카이사르 암호 — 라틴 알파벳 문자를 순환 이동시키는 암호. ROT13은 13만큼 이동시키는 특수한 경우(아래 버튼)로 대칭적입니다: encode와 decode가 같은 결과를 냅니다. 다른 문자(숫자, 키릴 문자, 문장 부호)는 변경되지 않습니다.

A Caesar cipher cyclically shifts every letter of the alphabet by a fixed number of positions. ROT13 is the special case with a shift of 13, which makes the cipher self-inverting: apply ROT13 twice and you get the original text back.

How to use it

Common uses

Things to keep in mind

ROT13 is not encryption in any security sense — it's obfuscation, trivially broken by hand without any tool or key.

Since the Latin alphabet has 26 letters and 13 is exactly half of that, ROT13 is symmetric: the same operation encodes and decodes.

이 도구에 대한 아티클: ROT13과 시저 암호: 단순한 문자 치환

자주 묻는 질문

ROT13은 실제로 보안 기능이 있나요?

전혀 없습니다. ROT13은 알파벳을 13자리 순환 이동시키는 단순 치환일 뿐이라 누구나 쉽게 원문을 복원할 수 있습니다. 스포일러 가리기나 장난스러운 용도로만 사용하고, 실제 보안이 필요한 곳에는 절대 쓰지 마세요.

ROT13과 일반 카이사르 암호는 어떤 관계인가요?

ROT13은 이동량이 13으로 고정된 카이사르 암호의 한 종류입니다. 알파벳이 26자이기 때문에 13만큼 이동하면 encode와 decode가 정확히 같은 연산이 되는 대칭적인 특징이 있습니다.

숫자나 한글, 특수문자도 변환되나요?

아니요. 이 도구는 라틴 알파벳 문자만 이동시키며 숫자, 키릴 문자, 한글, 문장 부호 등은 그대로 유지됩니다.

ROT47은 ROT13과 어떻게 다른가요?

ROT47은 더 넓은 ASCII 범위(33–126)를 다루기 때문에 라틴 문자뿐 아니라 숫자, 문장 부호, 특수 문자까지 추가로 이동시키면서도 같은 자기 역함수 이동 원리를 유지합니다.

도구 없이 ROT13을 풀 수 있나요?

네, 쉽습니다 — 각 문자를 머릿속으로 13칸 이동시키며 읽거나, A↔N, B↔O처럼 알파벳 전체에 걸친 대응 관계를 기억하면 됩니다. 이는 보안이 아니라 가벼운 난독화일 뿐입니다.

아티클: 인코딩

Base64: 인코딩이 필요한 이유와 작동 방식

Base64가 바이너리 데이터를 ASCII 텍스트로 바꾸는 방법과 실제로 언제 필요한지.

Base32: Base64와 다른 점과 더 편리한 경우

대소문자를 구분하지 않는 Base32 알파벳과 Base64보다 편리한 상황.

URL Encode/Decode: 링크에서의 퍼센트 인코딩

주소와 매개변수의 특수 문자가 %XX 시퀀스로 바뀌는 과정.

HTML Entities: 특수 문자를 안전하게 표시하는 방법

< > & 문자를 이스케이프해야 하는 이유와 이것이 마크업 손상을 막는 방법.

JWT: 토큰 구조와 JWT를 "디코딩"한다는 것의 의미

JWT의 header, payload, signature와, 디코딩이 서명 검증과 다른 이유.

Unicode Escape: \uXXXX 시퀀스의 의미

JSON과 JS 문자열에 나타나는 \u0041 같은 시퀀스가 어디서 오는지, 무엇을 의미하는지.

Punycode: 국제화 도메인이 DNS에서 작동하는 방식

라틴 문자가 아닌 문자를 포함한 도메인이 xn-- 접두사가 붙은 ASCII 형식으로 바뀌는 과정.

모스 부호: 텍스트가 점과 선으로 바뀌는 원리

문자를 점과 선으로 인코딩하는 원리와 모스 부호가 오늘날 어디에 쓰이는지.

Data URI: 이미지를 코드에 직접 삽입해야 할 때

Data URI가 파일 내용을 HTML이나 CSS에 직접 삽입하는 방식과 그럴 만한 가치가 있는 경우.

Gzip + Base64: 텍스트로 전송하기 위한 데이터 압축

압축된 바이너리 데이터를 텍스트 필드에 넣기 전에 Base64로도 인코딩하는 이유.

XML Entities: XML 문서에서 문자 이스케이프하기

이것이 없으면 파싱 중 문서가 깨지는, XML의 다섯 가지 필수 엔티티.