에니그마 쪽지 안내: 쓰는 법과 원리
역사 사양 그대로 돌린 영어 예시는 이 앱의 같은 규칙으로 다시 돌려 맞춘 값이에요. 놀이용이고, 진짜 비밀을 맡길 도구는 아니에요.
쓰는 순서
글자 종류를 고르고, 설정 카드를 정하세요. 오늘의 카드는 날짜로 정해지고, 섞기를 누르면 새로 뽑혀요.
쪽지를 쓰면 암호문이 바로 나와요. 링크 복사를 눌러 친구에게 보내세요.
친구가 링크를 열면 설정을 읽어 바로 풀어 줘요. 같은 카드로 답장도 쓸 수 있어요.
링크를 메신저나 문자로 보내면 돼요. 받은 사람은 따로 설정을 맞추지 않아도 쪽지를 읽을 수 있어요.
답장은 같은 카드로 쓰고 새 링크를 만들어 보내요. 주고받는 동안 카드가 같으면 서로 바로 풀려요.
쪽지 쓰러 가기설정 카드란
로터 순서는 다섯 개 가운데 세 개를 왼쪽부터 놓는 순서예요. 시작 위치는 로터마다 처음 맞춰 둔 글자예요.
플러그판은 글자 쌍을 맞바꿔요. 암호화 앞과 뒤에 한 번씩 걸려요.
이 셋이 같아야 풀려요. 링크에 셋이 모두 들어 있어요.
플러그는 최대 열 쌍까지 이을 수 있어요. 쌍이 많을수록 글자가 더 많이 섞여요. 한 글자는 한 쌍에만 쓸 수 있어요.
섞기를 누르면 로터와 위치와 플러그가 한꺼번에 새로 뽑혀요. 마음에 드는 카드가 나올 때까지 눌러 봐요.
에니그마 원리
글자를 누를 때마다 가장 오른쪽 로터가 한 칸 돌아서, 같은 글자도 누를 때마다 다른 글자로 바뀌어요.
신호가 로터 셋을 지나 반사판에서 되돌아와요. 그래서 암호화와 해독이 같은 동작이고, 한 글자가 자기 자신으로 바뀌지 않아요.
영어는 1930년대 군용 에니그마 I의 로터와 반사판 B 배선을 그대로 써요. 로터 I, II, III에 시작 AAA로 AAAAA를 넣으면 BDZGO가 나와요.
한국어, 일본어, 스페인어, 러시아어
한국어는 글자를 초성, 중성, 종성의 자모로 풀어 돌린 뒤 다시 글자로 합쳐요. 그래서 암호문도 한글처럼 보여요.
일본어는 히라가나와 가타카나를 따로 돌리고, 탁점과 반탁점은 따로 떼어 돌려요.
스페인어는 A부터 Z에 Ñ와 Ü를 더한 28칸이에요. 소문자와 á é í ó ú는 기본 글자로 맞춰 돌리고, 암호문은 대문자로 나와요.
러시아어는 키릴 32칸이에요. 소문자는 대문자로, Ё는 Е로 맞춰 돌려요.
한국어, 일본어, 스페인어, 러시아어의 로터 배선은 이 앱이 정한 값이에요. 역사 에니그마에는 없는 배선이라서, 영어 말고는 역사 사양과 관계가 없어요.
숫자, 기호, 이모지, 다른 글자 종류는 바뀌지 않고 그대로 지나가요.
받는 사람도 같은 글자 종류를 골라야 풀려요. 링크에 글자 종류가 들어 있어서 열면 저절로 맞춰져요.
낱개로 쓴 자모는 풀 때 글자로 합쳐질 수 있어요. 완성된 글자로 쪽지를 쓰면 가장 깔끔해요.
안전하지 않은 이유
에니그마는 2차 대전 때 폴란드와 영국의 해독가들이 풀었어요. 한 글자가 자기 자신으로 바뀌지 않는다는 성질이 단서가 됐어요.
이 앱은 설정을 링크에 담아 보내요. 링크를 가진 사람은 누구나 풀 수 있어요.
진짜 비밀은 Signal 같은 메신저로 보내세요. 이 앱은 놀이용이에요.
한국어, 일본어, 스페인어, 러시아어 배선은 이 앱이 공개한 규칙으로 정했어요. 규칙을 아는 사람은 같은 방식으로 계산해 풀 수 있어요.
서버로 가는 것
쪽지, 암호문, 설정은 이 기기 안에서만 계산해요. 링크의 # 뒤에 담겨 있어서 서버로 가지 않아요.
서버가 받는 것은 단계 이름, 화면 언어, 유입 라벨, 날짜뿐이에요.
쪽지 내용은 어디에도 저장하지 않아요. 창을 닫으면 쓰던 쪽지는 사라지고, 링크만 남아요.