포 스퀘어 암호
펠릭스 델라스텔이 고안한 두 키워드 방식의 이중 글자 암호인 포 스퀘어 암호를 암호화하고 복호화하세요. 글자는 네 개의 5×5 사각형에 걸쳐 쌍으로 암호화되는데 — 두 개는 평문이고 두 개는 당신의 키워드로 뒤섞여 — Playfair보다 눈에 띄게 더 강합니다. 두 키워드를 설정하고, 실시간 포 스퀘어 격자와 쌍 단위의 분해 과정을 따라가며, 결과를 복사하거나 다운로드하고 공유하세요. 모든 작업은 브라우저에서 실행됩니다.
키워드 1 (오른쪽 위)
키워드 2 (왼쪽 아래)
25글자 알파벳: I와 J가 한 칸을 공유하므로, 복호화된 J는 I로 읽힙니다. 포 스퀘어 암호의 고전적인 선택입니다.
위에 텍스트를 입력하면 결과가 여기에 표시됩니다.
포 스퀘어 격자
평문 글자는 두 평문 사각형(왼쪽 위와 오른쪽 아래)에서 찾고, 암호 글자는 두 키워드 사각형(오른쪽 위와 왼쪽 아래)에서 읽으며, 키워드 칸이 강조 표시됩니다.
평문 사각형
키워드 2 사각형
키워드 1 사각형
평문 사각형
포 스퀘어 암호 사용 방법
- 1
암호화 또는 복호화와 알파벳 선택
평문을 포 스퀘어 암호 쌍으로 바꾸려면 암호화를, 그것을 도로 되돌리려면 복호화를 고르세요. I/J 통합 알파벳(고전적인 기본값)이나, J를 구별되게 유지하는 Q 제외를 선택하세요.
- 2
두 키워드 입력
오른쪽 위 사각형을 위한 키워드와 왼쪽 아래 사각형을 위한 또 다른 키워드를 입력하세요. 양쪽 모두 두 키워드를 공유해야 합니다. 하나 또는 둘 다 비워 두면 그 자리에 평문 사각형을 쓸 수 있습니다.
- 3
텍스트 입력 또는 붙여넣기
메시지를 입력하면 입력하는 즉시 변환됩니다. 단계 패널은 각 평문 쌍을 그것이 되는 암호 쌍 위에 보여 줍니다.
- 4
포 스퀘어 격자 읽기
격자를 열어 두 평문 사각형과 두 키워드 사각형을 보세요. 키워드 칸이 강조 표시되어 있어 어떤 쌍이든 눈으로 따라갈 수 있습니다.
- 5
복사, 다운로드, 공유
결과를 복사하거나 텍스트 파일로 다운로드하거나, 입력한 텍스트와 키워드, 알파벳을 그대로 갖춘 채 도구를 다시 여는 링크로 공유하세요.
포 스퀘어 암호 이해하기
포 스퀘어 암호란 무엇인가요?
포 스퀘어 암호는 글자를 한 번에 두 개씩 암호화하는 손 암호로, 프랑스 암호학자 펠릭스 델라스텔이 1902년경 고안했습니다 — Bifid 암호와 Trifid 암호를 만든 바로 그 비범한 인물입니다. 이는 더 오래된 Playfair 암호와 가까운 친척이지만, Playfair가 하나의 5×5 사각형을 쓰는 반면, 포 스퀘어는 2×2 블록으로 배치된 네 개의 사각형에 작업을 펼칩니다. 그중 둘은 평문 알파벳을 담고 둘은 서로 다른 키워드로 뒤섞이므로, 이 암호는 한 글자 단위의 빈도를 감추며 Playfair보다 손으로 깨기가 의미 있게 더 어렵습니다.
단일 글자가 아니라 글자 쌍 — 이중 글자 — 을 다루기 때문에, 포 스퀘어는 다중 글자 치환 암호입니다. 쌍을 암호화하면 단순 치환 암호를 몇 분 만에 무너뜨리는 글자 빈도의 지문이 평탄해지고, 서로 독립적인 두 키워드를 쓰면 Playfair에 비해 키 재료가 대략 두 배가 됩니다. 군대가 실제로 운용했던 Playfair만큼 유명해지지는 못했지만, 배치의 작은 변화가 어떻게 강도의 실질적인 도약을 가져다주는지를 보여 주는 아름답고 매우 배우기 쉬운 사례입니다.
포 스퀘어 암호가 작동하는 방식
네 개의 5×5 사각형을 2×2 블록으로 펼칩니다. 왼쪽 위와 오른쪽 아래 사각형은 평문 알파벳을 순서대로 담고, 오른쪽 위와 왼쪽 아래 사각형은 각각 키워드로 뒤섞인 알파벳을 담습니다(키워드의 서로 다른 글자가 먼저 오고, 그다음 나머지 알파벳이 옵니다). 26개의 글자가 25칸에 들어가야 하므로, 한 글자는 접혀 들어갑니다 — 고전적으로 I와 J가 한 칸을 공유합니다.
글자 쌍을 암호화하려면, 첫 번째 글자를 왼쪽 위 평문 사각형에서, 두 번째 글자를 오른쪽 아래 평문 사각형에서 찾습니다. 두 암호 글자는 키워드 사각형에서 읽습니다: 첫 번째는 오른쪽 위 사각형에서 첫 번째 글자의 행과 두 번째 글자의 열을 공유하는 글자이고, 두 번째는 왼쪽 아래 사각형에서 두 번째 글자의 행과 첫 번째 글자의 열을 공유하는 글자입니다. 요컨대, 두 평문 글자가 사각형들을 가로질러 직사각형을 그리고, 키워드 사각형에 있는 두 반대편 모서리가 암호 쌍이 됩니다. 복호화는 그 경로를 그대로 거꾸로 돌립니다 — 키워드 사각형에서 암호 글자를 찾아, 평문 사각형에서 평문 글자를 도로 읽어 냅니다.
두 키워드와 평문 사각형
포 스퀘어 암호에는 서로 독립적인 두 가지 비밀이 있습니다: 오른쪽 위 사각형을 위한 키워드와 왼쪽 아래 사각형을 위한 키워드입니다. 각각은 키가 적용된 Playfair나 Polybius 사각형과 정확히 같은 방식으로 만들어집니다 — 키워드의 고유한 글자가 순서대로 중복 없이 먼저 적히고, 그다음 나머지 알파벳이 이어집니다. 아래의 실시간 격자는 키워드 칸을 강조 표시하여 뒤섞이는 모습을 볼 수 있게 합니다; 두 평문 사각형은 언제나 평범한 알파벳 순서를 유지하는데, 오직 글자를 *찾는* 데에만 쓰일 뿐 글자를 감추는 데에는 결코 쓰이지 않기 때문입니다.
보내는 이와 받는 이는 두 키워드를 모두 공유하고 알파벳 방식에 합의해야 합니다. 키워드를 비워 두면 그 자리에 평문 사각형을 쓸 수 있으며 — 둘 다 비워 두면 네 사각형이 모두 똑같아져, 암호는 고정된 글자 쌍 전치로 줄어드는데, 이는 키워드 뒤섞기가 더해지기 전에 그 기하 구조를 살펴보는 편리한 방법입니다.
I/J 통합 또는 Q 제외
스물여섯 글자는 스물다섯 칸에 들어가지 않으므로, 한 글자가 자리를 내주어야 합니다. Playfair와 공유하는 고전적인 포 스퀘어 관례는 I와 J를 한 칸으로 합칩니다: 메시지의 J는 I로 암호화되고, 복호화된 I는 둘 중 어느 쪽이든 나타낼 수 있는데 — 문맥에서 거의 언제나 분명합니다. 여기서는 이것이 기본값입니다.
다른 방식은 Q를 사각형에서 완전히(그리고 텍스트에서도) 제거하여 I와 J를 구별되게 유지합니다 — 드문 Q보다 J/I 모호함이 더 중요할 때 유용합니다. 위의 토글로 방식을 고르세요; 실시간 격자가 스스로 이름표를 다시 붙이며, 양쪽이 같은 방식을 써야 하고 그러지 않으면 메시지가 복호화되지 않습니다.
포 스퀘어 예제 풀이
I/J 통합 알파벳을 사용하여, 키워드 1 EXAMPLE(오른쪽 위)와 키워드 2 KEYWORD(왼쪽 아래)로 단어 ATTACK을 봅시다. ATTACK은 쌍 AT, TA, CK로 나뉩니다. 첫 번째 쌍에서, A는 왼쪽 위 평문 사각형의 1행 1열에 있고, T는 오른쪽 아래 평문 사각형의 4행 4열에 있습니다.
첫 번째 암호 글자는 오른쪽 위 키워드 사각형에서 A의 행과 T의 열에서 읽으며, M에 도달합니다; 두 번째는 왼쪽 아래 키워드 사각형에서 T의 행과 A의 열에서 읽으며, 이 역시 M에 도달합니다 — 그래서 AT는 MM으로 암호화됩니다. 이어서, TA는 OW가 되고 CK는 PA가 되므로, ATTACK은 MM OW PA로 암호화됩니다. 이 암호는 MM 같은 중복 글자를 만들어 낼 수 있는데, 이는 Playfair가 결코 하지 않는 일입니다. 같은 두 키워드로 복호화하면 각 쌍이 곧장 ATTACK으로 되돌아갑니다.
포 스퀘어 메시지 복호화하기
복호화는 같은 장치를 거꾸로 돌립니다. 암호문을 쌍으로 나누고, 각 쌍의 첫 번째 글자를 오른쪽 위 키워드 사각형에서, 두 번째를 왼쪽 아래 키워드 사각형에서 찾은 뒤, 일치하는 행과 열에서 두 평문 사각형으로부터 평문 글자를 읽어 냅니다. 이 도구는 복호화를 선택하고 암호화에 쓰인 것과 같은 두 키워드와 알파벳 방식을 입력하면 그 모든 것을 대신 해 줍니다.
사각형에는 A–Z 글자만 존재하므로, 원래 메시지의 공백과 숫자, 문장 부호는 암호화 과정에서 버려져 다시 나타나지 않습니다. 외톨이로 남은 마지막 글자는 메시지를 온전한 쌍으로 나눌 수 있도록 채워졌으므로(X로, 그 글자 자체가 X일 때는 Z로), 복호화된 메시지는 여분의 채움 글자로 끝날 수 있습니다 — 이는 이중 글자 암호에 본래 따르는 것이지 도구의 결함이 아닙니다.
포 스퀘어 대 Playfair, 그리고 안전성
포 스퀘어는 두 가지 면에서 Playfair를 개선합니다. 하나가 아니라 두 개의 키워드를 써서 키 재료를 두 배로 늘리고, Playfair처럼 중복된 글자 사이에 채움 글자를 끼워 넣을 필요가 결코 없는데, 쌍의 두 절반이 서로 다른 사각형에서 읽히기 때문입니다 — 그래서 LL이나 EE 같은 쌍도 말끔하게 암호화됩니다. 이런 변화는 손으로 하기에는 조금 더 번거롭게 만들지만 공격하기는 뚜렷하게 더 어렵게 하면서도, 그림으로 그리기 쉬운 같은 격자 발상을 유지합니다.
그렇지만 현대 기준으로 포 스퀘어는 여전히 고전 암호이며 컴퓨터에 맞서서는 안전하지 않습니다. 모든 이중 글자 치환 암호와 마찬가지로 글자 쌍의 빈도를 보존하므로, 충분한 양의 텍스트가 있으면 이중 글자 빈도 분석과 알려진 평문 공격에 무너집니다. 오늘날 그 가치는 교육적입니다 — 더 많은 키 재료의 이점을 손에 잡히게 해 주는, Playfair에서 우아하게 한 단계 나아간 것입니다. 실제 정보를 보호하려면 언제나 AES 같은 현대적이고 동료 검토를 거친 알고리즘을 쓰고, 포 스퀘어는 역사와 퍼즐, 그리고 캡처 더 플래그 챌린지를 위해 남겨 두세요.
자주 묻는 질문
포 스퀘어 암호란 무엇인가요?
포 스퀘어 암호는 어떻게 작동하나요?
포 스퀘어 암호는 왜 두 개의 키워드를 쓰나요?
포 스퀘어 예제 풀이를 보여 줄 수 있나요?
포 스퀘어 암호는 어떻게 복호화하나요?
포 스퀘어는 Playfair 암호와 어떻게 다른가요?
I/J 통합과 Q 제외의 차이는 무엇인가요?
포 스퀘어 암호는 중복 글자를 만들어 낼 수 있나요?
공백과 숫자, 문장 부호는 어떻게 되나요?
두 사각형 모두에 키워드를 써야 하나요?
포 스퀘어 암호는 얼마나 안전한가요?
내 텍스트가 서버로 전송되나요?
관련 도구
이런 편리한 도구도 함께 사용해 보세요