Caesar, ROT13, Atbash 텍스트 암호 도구
이 텍스트 암호 도구는 Caesar, ROT13, Atbash 세 가지 고전 치환 방식을 제공한다. 주로 라틴 알파벳 A-Z와 a-z를 처리하며 숫자, 공백, 구두점, 한글은 그대로 둔다. Caesar 모드는 1부터 25까지 이동값을 고르고 인코딩 또는 디코딩 방향을 선택할 수 있다. ROT13은 13칸 이동으로 고정되어 두 번 적용하면 원문으로 돌아온다. Atbash는 알파벳을 거꾸로 대응시켜 A는 Z, B는 Y로 바꾼다.
실제 계산 방식
Caesar 함수는 정규식으로 영문자를 찾고 대문자와 소문자에 따라 ASCII 기준값 65 또는 97을 사용한다. 위치 계산은 “현재 위치 + 이동값 + 26”을 26으로 나눈 나머지로 처리해 알파벳 범위를 벗어나지 않게 한다. 디코딩 방향에서는 이동값을 26 - shift로 바꾼다. ROT13은 Caesar 13칸 이동이고, Atbash는 25에서 현재 위치를 뺀 문자로 바꾼다. 오른쪽 알파벳 표도 모드와 이동값에 맞춰 갱신된다.
용도와 보안 한계
이 방식들은 수업, 퍼즐, 스포일러 숨김, 기초 암호학 설명, 문자열 처리 연습에 적합하다. 현대 보안 암호가 아니므로 비밀번호, 토큰, 개인정보, 업무 기밀을 보호할 수 없다. 규칙을 아는 사람은 쉽게 원문을 복원할 수 있으며 ROT13과 Atbash에는 사실상 비밀 키도 없다. 민감한 정보에는 검증된 암호화와 키 관리 체계를 사용해야 한다.
한글 입력
스크립트가 영문자만 바꾸기 때문에 한글은 출력에서도 그대로 남는다. 이것은 버그라기보다 현재 구현의 범위다. 한글을 대상으로 치환 암호를 만들려면 별도의 문자표나 다른 인코딩 규칙을 정의해야 한다.
댓글