비즈네르 암호 도구
각 글자를 다양한 양만큼 이동시키는 사용자가 제공한 키워드를 사용하여 비즈네르 다중 대입 암호로 텍스트를 암호화하고 복호화합니다. 실시간 키 정렬 스트림, 타불라 렉타 시각화, 오토키 및 보포르 변형, 왕복 검증 및 카시스키 주기 힌트를 제공합니다.
광고 차단기로 인해 광고를 표시할 수 없습니다
MiniWebtool은 광고로 무료로 운영됩니다. 이 도구가 도움이 되었다면 Premium(광고 제거 + 더 빠름)으로 지원하시거나 MiniWebtool.com을 허용 목록에 추가한 뒤 새로고침하세요.
- 또는 Premium(광고 없음)으로 업그레이드
- MiniWebtool.com 광고를 허용한 다음 새로고침하세요
비즈네르 암호 도구 정보
이 비즈네르 암호 도구는 거의 300년 동안 암호 분석을 거부해 온 다표식 대치 암호 방식을 사용하여 텍스트를 암호화하고 복호화합니다. 임의의 메시지와 키워드를 입력하면 암호문과 함께 평문, 키, 암호 글자가 함께 표시되어 수직으로 정렬되는 실시간 키 정렬 스트림이 즉시 제공됩니다. 따라서 글자가 왜 변했는지 눈으로 직접 확인할 수 있습니다. 또한 본 도구는 오리지널 오토키 변형, 제2차 세계 대전 당시 헤겔린 M-209 휴대용 암호기에서 사용된 보포르 상반 변형, 왕복 검증 결과 및 직접 수동으로 검증해 볼 수 있는 26×26 타불라 렉타 표를 함께 제공합니다.
단계별 기본 개념
평문인 ATTACKATDAWN과 키워드 LEMON을 예로 들어 보겠습니다. 평문을 모두 덮을 때까지 그 아래에 키워드를 반복하여 배치한 다음, 두 글자를 위치별로 더하고(A=0, B=1, …, Z=25) 26으로 나눈 나머지를 구합니다.
초록색 행을 읽으면 암호문 LXFOPVEFRNHR을 얻을 수 있습니다. 키 글자 L은 A를 11칸 이동시키고(A→L), E는 T를 4칸 이동시키며(T→X), 나머지도 이와 같은 방식으로 진행됩니다. 동일한 평문 글자인 A가 세 번 나타나지만 각각 세 가지 서로 다른 글자(L, O, E)로 암호화됩니다. 이것이 바로 다표식 암호의 특징이며, 비즈네르 암호가 단일 글자 빈도 분석을 무력화하는 이유입니다.
한 줄로 보는 수학 공식
알파벳에 A=0부터 Z=25까지 번호를 부여합니다. \( p_i \)를 i번째 평문 글자라고 하고, \( k_i \)를 그에 해당하는 키 글자라고 하겠습니다(키워드는 순환하므로 키 길이가 \( n \)일 때 \( k_i = K_{i \bmod n} \)이 됩니다). 공식은 다음과 같습니다:
암호화: \( c_i = (p_i + k_i) \bmod 26 \) · 복호화: \( p_i = (c_i - k_i) \bmod 26 \)
보포르 변형의 경우 동일한 한 줄 공식인 \( c_i = (k_i - p_i) \bmod 26 \)으로 암호화와 복호화 양방향을 모두 처리합니다. 오토키 변형의 경우 키 스트림은 \( k_1, k_2, \dots, k_n, p_1, p_2, \dots \) 형식이 됩니다. 즉, 지정한 키워드가 모두 소진되면 평문 자체의 내용이 키를 연장하게 됩니다.
세 가지 변형 방식 설명
타불라 렉타 (비즈네르 사각형 표)
전통적인 방식으로 비즈네르 암호를 적용하려면 알파벳이 매 행마다 r칸씩 회전되어 정렬된 26×26 크기의 표를 조회해야 합니다. 키 글자에 해당하는 행을 찾고 평문 글자에 해당하는 열을 찾으면, 그 교차점에 있는 셀의 문자가 바로 암호문 글자가 됩니다. 복호화할 때는 키에 해당하는 행을 찾은 뒤 해당 행에서 암호문 글자가 있는 곳까지 가로로 훑어 올라가 그 열의 헤더를 읽으면 됩니다.
| · | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| A | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
| B | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A |
| C | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B |
| D | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C |
| E | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D |
| F | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E |
| G | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F |
| H | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G |
| I | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H |
| J | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I |
| K | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J |
| L | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K |
| M | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L |
| N | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M |
| O | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N |
| P | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O |
| Q | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P |
| R | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q |
| S | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R |
| T | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S |
| U | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T |
| V | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U |
| W | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V |
| X | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W |
| Y | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X |
| Z | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y |
행 레이블 = 키 글자. 열 헤더 = 평문 글자. 셀 내용 = 암호문 글자. 예시: L행, A열 → L. E행, T열 → X.
비즈네르 암호 도구 사용 방법
- 암호화할 평문 또는 복호화할 암호문을 입력 상자에 붙여넣습니다. 오른쪽에 표시되는 실시간 키 정렬 스트림을 통해 평문, 키 글자, 결과 암호 글자가 수직으로 정렬되어 보이므로 글자별 이동 형태를 한눈에 명확하게 이해할 수 있습니다.
- 키워드 필드에 키워드를 입력합니다. 알파벳이 아닌 문자는 자동으로 제외됩니다. 글자가 처리됨에 따라 주황색 키워드 조각이 순환하는 모습을 볼 수 있으며, '최신 문자 쌍' 돋보기를 통해 가장 최근의 평문 + 키 = 암호 조합을 확대하여 보여줍니다.
- 모드(암호화 또는 복호화)와 변형 방식(비즈네르, 오토키, 보포르)을 선택합니다. 보포르는 상반 암호이므로 모드를 바꾸어도 출력값이 달라지지 않습니다.
- '비즈네르 암호 적용' 버튼을 클릭합니다. 아래쪽에 글자별 이동 역추적 결과와 통계 정보(키 길이, 주기, 커버리지), 왕복 검증 결과 및 동일한 입력값에 대한 모든 변형 암호를 한눈에 비교하는 사이드 바이 사이드 암호 실험실이 나타납니다.
- 복사 버튼을 사용하여 암호문, 원본 메시지, 키워드를 간편하게 복사할 수 있습니다. 복호화를 하려면 암호문을 복사해 붙여넣고 모드를 복호화로 전환한 뒤 동일한 키워드로 다시 실행하면 됩니다.
비즈네르 vs 시저 vs 아틀바시 vs ROT13 — 빠른 참조 표
| 암호 방식 | 유형 | 키 | 상반 구조 여부 | 키가 LEMON일 때 "HELLO"의 결과 |
|---|---|---|---|---|
| 비즈네르 | 다표식 대치 암호 | 키워드 (1글자 이상) | 아니요 (복호화 모드 필요) | SIXZB |
| 시저 암호 (3칸 이동) | 단일표식 회전 암호 | 단일 이동값 | 아니요 | KHOOR |
| ROT13 | 회전 암호 (13칸 고정) | 없음 (고정) | 예 | URYYB |
| 아틀바시 암호 | 반사 대칭 암호 | 없음 (고정) | 예 | SVOOL |
| 보포르 | 다표식 상반 암호 | 키워드 | 예 | EABDZ |
비즈네르 암호가 한때 "해독 불가능한 암호(Le Chiffre Indéchiffrable)"로 불렸던 이유
1553년 벨라소가 처음으로 이 암호를 발표한 후 거의 3세기 동안 비즈네르는 절대로 깨지지 않는 암호로 여겨졌습니다. 평문의 동일한 문자라도 위치에 따라 최대 26가지의 다른 암호 문자로 변환될 수 있었기 때문에, 시저 암호를 쉽게 깨부수던 평탄 빈도 가정(예: 영어에서 E가 가장 많이 출현한다는 규칙)이 더 이상 통하지 않았기 때문입니다. 1850년대에 찰스 배비지가 최초로 이를 해독했으나 외부에 발표하지 않았고, 이후 1863년 프리드리히 카시스키가 독자적으로 이 공격법을 출판했습니다. 암호 해독의 핵심 통찰은 바로 키워드가 반복된다는 점이었습니다. 키 길이의 배수만큼 떨어진 위치에 있는 동일한 평문 문자열은 결국 동일한 암호문을 생성하게 됩니다. 암호문에서 반복되는 3글자 쌍(Trigram)의 간격을 찾아 최대공약수를 구하면 유력한 키 길이를 알아낼 수 있습니다. 키 길이를 알아내면 비즈네르 암호는 n개의 병렬 시저 암호로 분해되며, 분해된 각각의 암호는 빈도 분석을 통해 쉽게 무너집니다.
카시스키 테스트 — 비즈네르 암호를 무너뜨리는 단계
- 암호문 전체에서 반복되는 3글자 또는 4글자 패턴의 시퀀스를 탐색합니다.
- 반복되어 나타나는 패턴 쌍 사이의 거리를 모두 기록합니다.
- 기록된 거리들의 최대공약수(GCD)를 구합니다. 키 길이는 거의 항상 이 최대공약수의 약수입니다.
- 암호문을 n개의 열로 나눕니다(매 n번째 글자씩 묶음). 이렇게 나누어진 각각의 열은 이제 개별적인 시저 암호가 됩니다.
- 각 열에 대해 일치지수(Index of Coincidence)를 극대화하거나 영어 알파벳 출현 빈도와 가장 잘 맞아떨어지는 글자 이동값을 찾습니다. 그 이동값이 바로 키워드를 구성하는 글자 중 하나가 됩니다.
이 원리를 직접 확인해보려면 간단한 예시 중 "카시스키에 취약함"을 클릭해 보세요. 입력 문장에 "The quick brown fox"라는 동일한 단어열이 반복되고 키는 단 3글자뿐이므로, 동일한 단어가 두 번 모두 똑같은 형태로 암호화됩니다. 이는 카시스키 분석가에게 아주 선명한 해독 단서가 됩니다.
배비지 / 카시스키 / 프리드먼 공격 분석 기법군
- 배비지 기법 (1850년대, 미출판). 반복되는 암호 패턴이 키의 길이를 드러낸다는 사실을 발견했습니다.
- 카시스키 기법 (1863년). 동일한 개념을 출판했습니다: 암호문 내 반복되는 패턴 사이의 거리는 항상 키 길이의 배수입니다.
- 프리드먼 기법 (1922년). 일치지수(Index of Coincidence)라는 통계적 측정 방식을 도입했습니다. 열을 올바른 키 길이로 나누었을 때, 무작위 확률 분배값인 ~0.038이 아니라 영어 고유의 빈도 스파이크인 ~0.067에 가까운 정점을 찍게 된다는 성질을 이용한 기법입니다.
- 현대 컴퓨터의 처리 방식. 키 길이를 1부터 30까지 모두 대입해 가며 분할된 열의 일치지수(IC)를 계산하고, 평균 일치지수가 가장 높은 길이를 선택합니다. 그 후 각 열에 대해 빈도 공격을 수행합니다. 총 소요 시간은 단 몇 밀리초에 불과합니다.
보안 관련 주의 사항
비즈네르 암호는 현대적인 암호화 기술이 아닙니다. 5글자짜리 키워드는 카시스키 테스트를 통해 몇 밀리초 만에 해독되며, 20글자짜리 키워드 역시 자동화된 분석 도구로 단 몇 초면 깨집니다. 주기성 약점을 지운 오토키 방식조차 기지 평문 공격이나 키워드 접두사에 대한 예상 단어 공격에 취약합니다. 비밀번호, 개인 정보, 금융 데이터 또는 기밀로 유지되어야 하는 그 어떤 정보도 비즈네르 암호로 보호해서는 안 됩니다. 실제 보안이 필요한 데이터에는 AES-256, ChaCha20, RSA 또는 libsodium을 사용하세요. 비즈네르 암호는 텍스트를 잠시 알아보기 어렵게 뭉개놓는 용도, 즉 퍼즐, CTF, 교육 및 역사적 시연 용도로만 취약성을 감안하여 이해하고 다루어야 합니다.
최상의 결과를 얻기 위한 팁
- 복호화하려면 암호문을 붙여넣고, 동일한 키워드를 입력한 뒤 모드를 복호화(Decrypt)로 전환하세요. 이 하나의 도구로 암호화와 복호화를 모두 수행할 수 있습니다.
- 보포르 변형 방식의 경우 암호화와 복호화 모드가 따로 중요하지 않습니다. 동일한 키로 보포르 암호를 두 번 연속 적용하면 원본 텍스트가 그대로 복원됩니다.
- 알파벳 글자 자체만 중요하고 출력 결과에 공백이나 문장 부호가 포함되지 않기를 원한다면 "원본 대소문자 유지" 체크박스를 해제하세요. 이 경우 입력값이 암호화 전에 모두 대문자로 정규화되며 출력 역시 대문자로만 이루어집니다.
- 입력 텍스트 내의 공백과 문장 부호는 변경 없이 그대로 결과에 반영됩니다. 일반적인 독자가 단어의 경계를 유추하지 못하도록 가리고 싶다면, 입력 상자에 붙여넣기 전에 공백과 문장 부호를 직접 미리 제거하는 것이 좋습니다.
- 암호 실험실 기능을 활용하여 동일한 키가 세 가지 변형 방식에서 각각 어떻게 작동하는지 비교해 보세요. 오토키는 지정한 키워드의 첫 n글자가 지나가고 나면 키 스트림 자체가 실시간 평문 내용으로 채워지기 때문에 클래식 비즈네르와 완전히 다른 결과물을 생성하게 됩니다.
자주 묻는 질문 (FAQ)
비즈네르 암호란 무엇인가요?
비즈네르 암호는 반복되는 키워드에 의해 결정되는 각기 다른 이동값으로 평문의 각 글자를 이동시키는 다표식 대치 암호입니다. 만약 키 글자가 K(11번째 글자)라면, 평문 글자는 순방향으로 10칸 이동합니다. 이 암호는 1553년 조반 바티스타 벨라소에 의해 처음 기술되었으나, 나중에 블레즈 드 비즈네르의 명의로 잘못 오인되어 그의 이름이 정착되었습니다.
비즈네르 암호는 시저 암호나 아틀바시 암호와 어떻게 다른가요?
시저 암호는 모든 글자에 대해 하나의 고정된 이동값을 사용합니다. 한 글자짜리 비즈네르 키를 사용하는 것은 시저 암호와 완벽히 동일합니다. 반면 비즈네르 암호는 반복되는 키워드에서 가져온 매 위치마다 다른 이동값을 사용하므로, 동일한 평문 글자라도 여러 가지 다른 암호문 글자로 암호화될 수 있습니다. 아틀바시 암호는 키가 없는 고정된 대칭 반사 암호(A↔Z, B↔Y)입니다. 비즈네르 암호는 키가 단일 글자의 출현 빈도를 고르게 만들기 때문에 단일 문자 빈도 분석으로 깨기가 훨씬 더 어렵습니다.
비즈네르 암호는 실제 암호화용으로 안전한가요?
아니요. 프리드리히 카시스키는 1863년 반복되는 키워드의 주기성을 이용하여 비즈네르 암호를 해독했습니다. 현대 컴퓨터는 일치지수를 측정하는 프리드먼 테스트와 카시스키 테스트를 활용하여 비즈네르 암호를 즉시 해독할 수 있습니다. 실제 보안을 위해서는 AES-256, ChaCha20 또는 libsodium을 사용해야 하며, 비즈네르 암호는 퍼즐, CTF 및 교육용으로만 적합합니다.
오토키 변형이란 무엇인가요?
오토키(Autokey)는 키워드 뒤에 평문 자체를 덧붙여 키워드를 연장함으로써 키 스트림이 절대 반복되지 않도록 하는 방식입니다. 비즈네르가 1586년에 카시스키가 훗날 악용하게 될 바로 그 약점을 보완하기 위해 제안했습니다. 오토키는 클래식 비즈네르보다 깨기가 훨씬 어렵지만, 기지 평문 공격이나 키워드 접두사에 대한 예상 단어 공격에는 여전히 취약합니다.
보포르 변형이란 무엇인가요?
보포르(Beaufort) 암호는 암호문 = (키 − 평문) mod 26 연산을 사용하므로, 암호화와 복호화 연산이 동일한 상반 암호입니다. 즉, 동일한 키로 두 번 암호화하면 원본이 반환됩니다. 프랜시스 보포르 경의 이름에서 유래되었으며, 제2차 세계 대전 당시 미 육군이 사용한 휴대용 기계식 암호기인 헤겔린 M-209의 기반 암호였습니다.
키워드 길이는 어느 정도가 적당한가요?
길수록 훨씬 좋습니다. 한 글자 짜리 키는 비즈네르를 시저 암호 수준으로 떨어뜨립니다. 짧은 키(3~5글자)는 카시스키 테스트에 의해 몇 초 만에 깨집니다. 메시지와 길이가 같고 단 한 번만 사용되는 키는 일회성 패드가 되어 이론적으로 절대 해독할 수 없습니다. 퍼즐이나 교육용으로는 보통 6~12글자의 키워드가 주로 사용됩니다.
이 콘텐츠, 페이지 또는 도구를 다음과 같이 인용하세요:
"비즈네르 암호 도구" - https://MiniWebtool.com/ko//에서 MiniWebtool 인용, https://MiniWebtool.com/
MiniWebtool 팀 작성. 최종 수정일: 2026-05-26