T

Text Machine

강력한 텍스트 도구를 브라우저에서

회전 격자 암호

Fleissner 격자판으로도 알려진 회전 격자를 암호화하고 복호화하세요. 셀의 4분의 1을 뚫어낸 정사각형 카드를 빈 격자 위에 올려 두고, 구멍을 통해 메시지를 적은 다음 카드를 90도 돌려 다시 적습니다. 이렇게 네 번을 돌리면 격자가 모두 채워집니다. 격자를 한 줄씩 읽어 내면 암호문이 됩니다. 격자 크기를 고르고, 격자판을 만들 키워드를 정한 뒤 실시간 격자판과 격자 다이어그램을 살펴보세요. 모든 처리는 브라우저 안에서 이루어집니다.

격자판

키워드

격자 크기

키워드가 격자판을 만듭니다. 즉 카드에서 뚫어낼 구멍을 정합니다. 격자의 셀들은 서로 회전하며 맞물리는 네 개씩의 묶음으로 나뉘고, 키워드의 각 글자가 한 묶음에서 어느 셀을 뚫을지 고르므로 각 묶음에서 정확히 하나의 구멍이 나옵니다. 바로 이 규칙 덕분에 네 번의 회전으로 격자가 완벽하게 채워집니다. 키워드가 다르면 구멍 패턴도 달라집니다. 글자만 의미가 있으며, 양쪽 모두 같은 키워드와 같은 격자 크기를 사용해야 합니다.

평문
암호문

위에 텍스트를 입력하면 여기에 결과가 표시됩니다.

격자판 다이어그램

예시: 네 번의 90도 회전에 걸쳐 격자판을 통해 격자를 채우는 샘플 메시지입니다. 위에 직접 텍스트를 입력하면 갱신됩니다.

격자판 (1회전 구멍)

격자 (회전 단계별 색상)

T
T
M
I
D
R
E
E
H
E
N
T
M
E
E
I
E
G
T
H
O
O
A
L
D
D
T
T
O
A
B
A
Y
K
Y
M

회전 1

회전 2

회전 3

회전 4

회전 격자 암호 사용 방법

  1. 1

    암호화 또는 복호화 선택

    평문을 회전 격자로 뒤섞으려면 암호화를, 격자 암호문을 다시 평문으로 되돌리려면 복호화를 고르세요.

  2. 2

    키워드 설정

    격자판을 만들 키워드를 입력하세요. 각 글자가 어느 셀을 구멍으로 뚫을지 고릅니다. 양쪽에서 같은 키워드를 사용하세요.

  3. 3

    격자 크기 선택

    4×4, 6×6, 8×8 격자 중에서 고르세요. 큰 격자일수록 더 긴 텍스트 덩어리를 한 번에 뒤섞습니다. 양쪽 모두 같은 크기를 사용해야 합니다.

  4. 4

    텍스트 입력 또는 붙여넣기

    메시지를 입력하면 입력하는 대로 변환됩니다. 다이어그램은 격자판과 격자를 보여 주며, 각 셀은 그것을 채운 회전 단계별로 색칠됩니다.

  5. 5

    복사, 다운로드 또는 공유

    결과를 복사하거나, 텍스트 파일로 다운로드하거나, 정확한 텍스트와 키워드, 격자 크기가 그대로 준비된 채로 도구를 다시 여는 링크를 공유하세요.

회전 격자 암호 이해하기

회전 격자 암호란?

회전 격자는 전치 암호입니다. 글자 자체를 바꾸는 것이 아니라 글자를 적는 순서를 뒤섞어 메시지를 숨깁니다. 이 암호의 도구는 격자판 그 자체로, 일부 셀을 구멍으로 잘라낸 뻣뻣한 정사각형 카드입니다. 같은 크기의 빈 격자 위에 격자판을 올리고 메시지의 첫 글자들을 구멍을 통해 적은 다음, 카드를 90도 돌려 새로운 위치의 구멍을 통해 다음 글자들을 적습니다. 네 번을 돌리고 나면 카드가 격자의 모든 셀을 정확히 한 번씩 덮게 되고, 그 격자를 보통의 읽기 순서로 읽어 내면 암호문이 됩니다.

가장 잘 알려진 형태는 1881년에 이를 설명한 오스트리아 대령 Eduard Fleissner von Wostrowitz의 이름을 따서 불리며, 1916년 서부 전선에서 독일군이 채택한 것으로 유명합니다. 같은 정사각형을 적은 순서와 완전히 다른 순서로 읽어 내기 때문에 글자가 철저히 뒤섞이면서도 모든 글자가 하나도 빠짐없이 보존됩니다. 이것이 바로 전치 암호의 특징이며, 회전 격자가 오늘날까지 즐겨 쓰이는 교육용 예시인 이유입니다.

격자판과 격자

모든 것은 구멍에 달려 있습니다. 각 변에 짝수 개의 셀이 있는 격자를 떠올려 보면 — 여기서는 4×4, 6×6, 8×8 — 그 셀들이 네 개씩의 가족으로 나뉜다는 점을 알 수 있습니다. 임의의 셀과, 정사각형을 90도, 180도, 270도 돌릴 때 그 셀이 옮겨 가는 세 셀이 한 가족을 이룹니다. 4×4 격자에는 이런 가족이 네 개, 6×6 격자에는 아홉 개, 8×8 격자에는 열여섯 개 있습니다. 각 가족은 격자판의 한 자리이며, 올바른 격자판을 만들려면 각 가족에서 정확히 한 셀을 뚫어냅니다.

왜 정확히 하나일까요? 그래야만 격자판을 네 위치로 돌릴 때 모든 가족의 네 셀이 각각 단 한 번씩만 드러나기 때문입니다. 어떤 셀도 네 번의 회전 내내 덮여 있지 않고(그러면 빈 칸이 남습니다), 어떤 셀도 두 번 드러나지 않습니다(그러면 글자를 덮어쓰게 됩니다). 가족마다 구멍 하나라는 것이 바로 네 번의 회전으로 격자를 충돌 없이 완전하게 채우는 정확한 조건입니다.

키워드로 격자판 만들기

역사적으로 발신자와 수신자는 실제 격자판을 공유하거나, 어느 셀이 구멍인지에 대한 글로 된 설명을 공유했습니다. 이 도구는 그 대신 키워드로 격자판을 만들기 때문에 기억하기 쉽고, 공유하기 쉬우며, 언제나 같은 패턴을 재현합니다. 키워드의 각 글자를 차례로 읽어 가족마다 네 셀 중 어느 셀을 뚫어낼지 고릅니다. 키워드가 가족의 수보다 짧으면 그대로 반복됩니다.

키워드는 가족마다 셀 하나만 고르기 때문에 어떤 키워드든 자동으로 올바른 격자판을 만들어 냅니다. 암호를 망가뜨리는 키워드를 입력할 방법은 없습니다. 글자를 바꾸면 구멍이 바뀌고, 격자 크기를 바꾸면 새로운 가족 수에 맞춰 패턴 전체가 다시 만들어집니다. 페이지의 다이어그램이 만들어진 격자판을 그려 주므로, 돌리기 전에 어느 셀이 열려 있는지 정확히 볼 수 있습니다.

회전 격자 암호의 작동 방식

암호화는 회전 단계별로 진행됩니다. 격자판을 시작 위치에 둔 채로, 구멍을 통해 보이는 셀에 메시지의 첫 글자들을 읽기 순서대로 — 각 줄을 왼쪽에서 오른쪽으로, 위에서 아래로 — 적습니다. 격자판을 시계 방향으로 90도 돌리고 새로운 위치의 구멍을 통해 다음 글자들을 적습니다. 다시 돌려 다시 적고, 한 번 더 적어 모두 네 위치를 거치면 격자가 가득 찹니다. 메시지가 격자보다 짧으면 남은 셀은 채움 글자 X로 채워 격자가 항상 완성되도록 하고, 더 길면 새 격자를 시작해 같은 격자판을 다시 사용합니다.

위 다이어그램은 그림의 양쪽 모두를 보여 줍니다. 왼쪽은 뚫린 구멍이 표시된 시작 위치의 격자판입니다. 오른쪽은 완성된 격자로, 각 셀이 적힌 회전 단계 — 첫 번째, 두 번째, 세 번째, 네 번째 회전 — 별로 색칠되어 메시지가 제자리로 소용돌이치며 들어가는 모습을 볼 수 있습니다. 그 격자를 한 줄씩 죽 가로질러 읽으면 출력에 표시된 암호문이 됩니다.

실제 예시

이 암호 자체의 이름인 FLEISSNERGRILLE, 즉 열다섯 글자를 4×4 격자에 적어 봅시다. 돌리기 전 격자판의 구멍이 2행 3열과 4열, 3행 4열, 4행 1열에 있다고 합시다. 첫 네 글자 F, L, E, I를 그 구멍들을 통해 읽기 순서대로 적고, 카드를 시계 방향으로 돌려 S, S, N, E를 적은 다음, R, G, R, I, 그리고 L, L, E와 채움 글자 하나를 적으면 열여섯 셀이 모두 채워집니다.

이제 완성된 격자를 한 줄씩 죽 가로질러 읽으면 SLLRGEFLRISEINE가 됩니다 — 전치는 순서만 바꿀 뿐이므로 원본의 애너그램입니다. 복호화하려면 바로 그 똑같은 격자판을 이 글자들 위에 다시 올리고 같은 네 번의 회전 순서로 구멍을 통해 읽으면 FLEISSNERGRILLE가 다시 나옵니다. 이것이 이 암호의 고전적인 예시이며, 이 도구에서는 여러분이 고른 키워드와 격자 크기로 격자판을 자동으로 만들어 줍니다.

회전 격자 메시지 복호화하기

복호화는 암호화를 거울에 비춘 것입니다. 암호문을 빈 격자에 한 줄씩 가득 찰 때까지 적습니다. 그런 다음 같은 격자판을 그 위에 올리고 구멍을 통해 보이는 글자들을 읽기 순서대로 읽고, 격자판을 90도 돌려 다시 읽으며, 네 번의 회전 모두를 이어 갑니다. 글자들이 원래 순서대로 나와 메시지가 복원됩니다.

이것이 제대로 동작하려면 양쪽이 세 가지에 합의해야 합니다. 같은 격자 크기, 같은 격자판 — 여기서는 같은 키워드 — 그리고 같은 회전 방향입니다. 이 도구는 암호화든 복호화든 격자판을 내내 시계 방향으로 돌리므로, 여기서 만든 메시지는 항상 여기서 복호화됩니다. 이 암호는 글자만 옮기기 때문에 원문에서 글자가 아닌 것들 — 공백, 숫자, 문장 부호 — 은 암호화 전에 버려지고 다시 나타나지 않으며, 마지막 격자를 완성하기 위해 추가된 채움 글자 X는 복호화된 텍스트 끝에 나타납니다.

역사, 용도, 그리고 보안

격자 암호는 오래되었습니다. Gerolamo Cardano는 16세기에 글을 감추기 위한 단순한 격자판을 제안했고, 격자 전체를 채우는 회전 격자는 19세기에 Fleissner가 정립했습니다. 독일은 1916년 자국 군대에 회전 격자판을 크기별 암호명과 함께 지급했는데 — 5×5는 Anna, 6×6은 Berta, 8×8은 Dora 등 — 이들은 Georges Painvin이 이끄는 프랑스 암호 분석가들에게 해독되기까지 야전에서 단 몇 달밖에 버티지 못했습니다. 오늘날 회전 격자는 주로 퍼즐로, 그리고 전치가 어떻게 작동하는지 보여 주는 생생한 교훈으로 살아남았습니다.

현대의 기준으로 보면 이 암호의 보안성은 매우 낮습니다. 전치는 원래 글자를 그대로 두므로 암호문은 평문과 정확히 같은 글자 빈도를 가지며, 격자 크기를 알아맞힌 공격자는 시도해 볼 격자판의 수가 — 특히 작은 격자에서 — 한정적입니다. 같은 격자판으로 만든 같은 길이의 여러 메시지는 특히 정보를 많이 드러냅니다. 회전 격자는 그 역사와 만족스러운 작동 원리를 즐기고 게임이나 학습에 사용하되, 실제 비밀을 보호하는 데는 결코 쓰지 마세요. 그런 일에는 AES처럼 현대적이고 동료 검증을 거친 알고리즘이 올바른 선택입니다.

자주 묻는 질문

회전 격자 암호란 무엇인가요?
회전 격자판 — 구멍을 잘라낸 정사각형 카드 — 을 사용해 메시지 글자의 순서를 뒤섞는 전치 암호입니다. 구멍을 통해 메시지를 적고, 카드를 90도 돌려 다시 적으며, 모두 네 번을 반복해 격자를 가득 채웁니다. 격자를 한 줄씩 읽으면 암호문이 됩니다. 모든 글자는 그대로 유지되고 순서만 바뀝니다.
Fleissner 격자판이란 무엇인가요?
Fleissner 격자판은 가장 흔한 회전 격자판으로, 1881년에 이를 설명한 Eduard Fleissner von Wostrowitz의 이름을 따서 불립니다. 네 위치로 돌리면 정사각형 격자 전체를 채우는 정사각형 격자판입니다. 독일군은 1916년 서부 전선에서 Fleissner 격자판을 사용했습니다. 회전 격자와 Fleissner 격자판은 보통 같은 암호를 가리킵니다.
키워드가 어떻게 격자판을 만드나요?
격자의 셀들은 서로 회전하며 맞물리는 네 개씩의 가족으로 나뉘고, 올바른 격자판은 각 가족에서 정확히 하나의 구멍을 뚫습니다. 이 도구는 키워드를 글자 하나씩 읽어 각 글자로 한 가족에서 어느 셀이 구멍이 될지 고릅니다. 항상 가족마다 셀 하나를 고르기 때문에 어떤 키워드든 동작하는 격자판을 만들며, 같은 키워드와 격자 크기는 언제나 같은 격자판을 만듭니다.
어떤 격자 크기를 사용할 수 있나요?
4×4, 6×6, 8×8 격자 중에서 고를 수 있습니다. 변의 길이가 짝수여야 어떤 회전으로도 옮길 수 없는 중앙 셀이 격자에 생기지 않습니다. 4×4 격자는 격자당 열여섯 글자를, 6×6은 서른여섯 글자를, 8×8은 예순네 글자를 처리합니다. 한 격자보다 긴 메시지는 모두 같은 격자판을 사용하는 연속된 격자들로 나뉩니다.
실제 예시를 보여 줄 수 있나요?
구멍이 2행 3열과 4열, 3행 4열, 4행 1열에 있는 4×4 격자에서 FLEISSNERGRILLE라는 단어를 한 번에 네 글자씩 적고 그때마다 격자판을 시계 방향으로 돌리면, 완성된 격자는 SLLRGEFLRISEINE로 읽힙니다 — 전치는 글자 순서만 바꾸므로 애너그램입니다. 같은 격자판을 그 위에 다시 올리면 FLEISSNERGRILLE가 복원됩니다.
회전 격자 메시지를 어떻게 복호화하나요?
암호문을 빈 격자에 한 줄씩 적고, 같은 격자판을 그 위에 올린 다음, 구멍을 통해 보이는 글자들을 읽기 순서대로 읽되 네 위치 각각의 사이에서 격자판을 90도 돌립니다. 이 도구에서는 복호화를 고르고 암호화에 사용한 것과 같은 키워드와 격자 크기를 입력하세요. 이 암호는 양방향 모두 격자판을 시계 방향으로 돌리므로 여기서 만든 메시지는 여기서 복호화됩니다.
복호화한 텍스트에 왜 여분의 X 글자가 있나요?
격자판은 회전할 때마다 격자 전체를 채워야 하므로, 메시지가 격자보다 짧으면 남은 셀이 글자 X로 채워집니다. 그 채움 글자는 암호문의 일부가 되어 복호화된 메시지 끝에 다시 나타납니다. 끝에 붙은 X 글자들은 그냥 무시하면 됩니다. 나머지가 원래 텍스트입니다.
공백, 숫자, 문장 부호도 처리하나요?
아니요 — 회전 격자는 글자만 다루는 암호이므로 공백, 숫자, 문장 부호는 암호화 전에 제거되고 복호화할 때 다시 돌아오지 않습니다. A부터 Z까지의 글자만 참여합니다. 이것이 이 암호의 일반적인 관례이며, 깔끔하게 뒤섞고 되돌릴 수 있는 글자들로 격자를 채워 줍니다.
세로열 전치나 스키테일 전치와는 어떻게 다른가요?
셋 모두 글자 순서만 바꾸지만 바꾸는 방식이 다릅니다. 세로열 전치는 텍스트를 여러 행으로 적고 키로 정한 열 순서대로 읽어 냅니다. 스키테일은 고정된 격자를 열을 따라 죽 아래로 읽습니다. 회전 격자는 회전하는 구멍들을 통해 글자를 격자 곳곳에 흩뿌리므로, 단순한 열 읽기보다 이웃한 글자들을 훨씬 더 많이 섞습니다.
회전 격자 암호는 안전한가요?
아니요. 전치이기 때문에 암호문은 평문과 같은 글자 빈도를 가지며, 격자 크기를 알아맞히고 나면 가능한 격자판의 수가 — 특히 작은 격자에서 — 한정적입니다. 프랑스 암호 분석가들은 1916년 독일군 격자판을 몇 달 만에 해독했습니다. 퍼즐을 즐기고 전치가 어떻게 작동하는지 배우기에는 더없이 좋지만, 실제 보호를 위해서는 AES 같은 현대적 알고리즘을 사용하세요.
내 텍스트가 서버로 전송되나요?
아니요. 모든 암호화와 복호화는 전적으로 브라우저 안에서 이루어지므로 텍스트가 업로드되거나 기록되거나 저장되지 않습니다. 공유 링크조차 텍스트와 키워드, 격자 크기를 URL의 # 기호 뒤 부분에 담는데, 브라우저는 이 부분을 절대 서버로 보내지 않으므로 링크를 공유하기로 선택하기 전까지 메시지는 비공개로 유지됩니다.

관련 도구

이런 편리한 도구도 함께 사용해 보세요

레일 펜스 암호

열 전치 암호

스키테일 암호

카이사르 암호

비제네르 암호

아트바시 암호