본문으로 건너뛰기

베이컨 암호

메시지를 프랜시스 베이컨의 다섯 글자짜리 A와 B 묶음으로 바꾸거나, 그 묶음을 다시 텍스트로 읽을 수 있습니다. 베이컨이 쓴 원래의 24글자 알파벳과 현대의 26글자 알파벳을 모두 지원합니다. 그다음 베이컨이 의도한 방식대로 코드를 평범한 문장 안에 숨기세요. 모든 글자를 두 가지 스타일 중 하나로 설정하면 됩니다.

모드
알파벳

글자만 인코딩됩니다. 베이컨의 알파벳에는 띄어쓰기, 숫자, 문장 부호의 코드가 없습니다.

평범한 글 속에 숨기기

베이컨의 실제 아이디어입니다. 어떤 평범한 글이든 두 가지 스타일로 씁니다. 그 글의 각 글자는 기호 하나를 담습니다. a는 보통 글자, b는 두 번째 스타일입니다. 띄어쓰기와 문장 부호는 아무것도 담지 않습니다.

두 번째 스타일

덮개 글 속에 숨겨진 메시지

The roses in the garden have been lovely all week, despite the rain.

메시지는 덮개 글의 처음 25글자가 담고, 나머지는 평범하게 남습니다.

다시 읽으려면 평범한 글자마다 a, 두 번째 스타일 글자마다 b를 쓰고, 그다음 다섯 글자씩 묶어 복호화하세요. 대문자는 일반 텍스트 복사에서도 살아남으므로, 결과를 복사해 복호화에 붙이고 글자 모양을 고르세요.

이원 알파벳

  • A

    AAAAA

  • B

    AAAAB

  • C

    AAABA

  • D

    AAABB

  • E

    AABAA

  • F

    AABAB

  • G

    AABBA

  • H

    AABBB

  • I/J

    ABAAA

  • K

    ABAAB

  • L

    ABABA

  • M

    ABABB

  • N

    ABBAA

  • O

    ABBAB

  • P

    ABBBA

  • Q

    ABBBB

  • R

    BAAAA

  • S

    BAAAB

  • T

    BAABA

  • U/V

    BAABB

  • W

    BABAA

  • X

    BABAB

  • Y

    BABBA

  • Z

    BABBB

각 코드는 알파벳에서 글자의 위치를 0부터 세어 이진수로 쓴 것입니다. a는 0, b는 1입니다. 메시지의 글자는 강조 표시됩니다.

베이컨 암호 사용 방법

  1. 1. 암호화 또는 복호화를 고르세요. 암호화는 글자를 다섯 기호 묶음으로 바꾸고, 복호화는 묶음을 다시 글자로 읽습니다.
  2. 2. 알파벳을 고르세요. 베이컨 원래의 알파벳은 24글자입니다. I와 J가 같은 코드를 쓰고, U와 V도 같은 코드를 씁니다. 26글자 버전은 모든 글자에 고유한 코드를 줍니다. 메시지를 만들 때 쓴 알파벳으로 복호화하세요.
  3. 3. 기호를 고르세요. A와 B가 전통적이며, 0과 1은 그 코드가 이진수임을 보여 줍니다. 사용자 정의 기호로는 어떤 두 문자든 쓸 수 있습니다. 복호화할 때는 두 기호 외의 모든 것을 무시하므로 띄어쓰기와 줄바꿈은 상관없습니다.
  4. 4. 숨기세요. 결과 아래에서 덮개 글을 입력하고 두 번째 스타일을 고르세요. 덮개 글의 각 글자가 기호 하나를 나타내며, 미리 보기에 메시지가 그 안에 숨겨진 모습이 나옵니다.

베이컨식 암호의 원리

베이컨은 이를 이원(biliteral) 암호라고 불렀습니다. 모든 글자를 a와 b 두 기호만으로, 다섯 개씩 묶어 씁니다. 두 가지 선택이 있는 자리가 다섯 개면 2 × 2 × 2 × 2 × 2 = 32가지 조합이 생깁니다. 현대적으로 말하면 각 묶음은 0부터 세는 글자의 위치를 이진수로 쓴 것입니다. a는 0, b는 1을 뜻하므로 A는 aaaaa(0), B는 aaaab(1), C는 aaaba(2)입니다. 다만 베이컨은 이를 단순한 표로 제시했습니다.

베이컨의 24글자 알파벳
A부터 HI/J부터 QR부터 Z
A aaaaaI/J abaaaR baaaa
B aaaabK abaabS baaab
C aaabaL ababaT baaba
D aaabbM ababbU/V baabb
E aabaaN abbaaW babaa
F aababO abbabX babab
G aabbaP abbbaY babba
H aabbbQ abbbbZ babbb

26글자 알파벳은 A부터 I까지는 베이컨의 것과 같고 J부터 달라집니다. 모든 글자가 고유한 코드를 가져야 하기 때문입니다. 이 차이는 중요합니다. 베이컨의 알파벳으로 쓴 JIVE는 ABAAA ABAAA BAABB AABAA이며, IIUE로 복호화됩니다. 26글자 알파벳은 글자들을 구분해서 ABAAB ABAAA BABAB AABAA로 씁니다.

예시

베이컨의 알파벳에서 Bacon은 AAAAB AAAAA AAABA ABBAB ABBAA로 인코딩됩니다. 즉 B, A, C, O, N입니다. 도구의 예시 덮개 글에서 두 번째 스타일을 대문자로 하면 the rOses in the GarDEn HaVE been lovely all week, despite the rain.처럼 읽힙니다. 처음 25글자를 대소문자로 정렬하면, 소문자는 a, 대문자는 b로 해서 다섯 묶음이 복원됩니다. 두 번째 스타일로 굵게나 기울임을 쓰면 같은 일곱 글자가 그냥 굵거나 기울어진 글자로 설정됩니다.

평범한 글 안에 메시지 숨기기

a와 b의 묶음은 원래 그대로 전달되도록 만들어진 것이 아닙니다. 베이컨의 요점은 두 값을 가진 어떤 차이든 그것을 담을 수 있다는 것이었습니다. 그는 살짝 다른 두 서체, 로만체와 이탤릭체, 똑바로 선 글자와 기울어진 글자, 큰 글자와 작은 글자를 제안했습니다. 평범한 편지에 써 넣으면 메시지는 글자를 두 종류로 나눌 줄 아는 사람에게만 보입니다. 그래서 이원 암호는 메시지의 내용이 아니라 메시지가 있다는 사실 자체를 숨기는, 스테가노그래피(steganography)의 초기 사례입니다.

베이컨은 이 방법을 De Augmentis Scientiarum(1623)에서 발표했고, 젊은 시절 파리에서 고안했다고 적었습니다. 그로부터 3세기가 지난 뒤 이 방법은 문학 논쟁의 중심에 섰습니다. 1899년부터 Elizabeth Wells Gallup는 셰익스피어 첫 folio의 서로 다른 활자에서 베이컨이 남긴 이원 메시지를 찾았다고 주장했습니다. 그녀의 프로젝트에서 암호 해독 경력을 시작한 William과 Elizebeth Friedman은 일리노이의 Riverbank Laboratories에서 그 주장을 검토했고, The Shakespearean Ciphers Examined(1957)에서 어느 것도 성립하지 않는다고 정리했습니다.

베이컨식 암호 풀기

두 종류의 글자를 가려내고 나면 풀 것이 남지 않습니다. 알파벳은 고정되어 있고 공개되어 있으므로 묶음을 그대로 읽으면 됩니다. 유일한 비밀은 숨겨진 자리인데, 그것은 쉽게 깨집니다. 덮개 글자가 뚜렷하고 일관되어야 하는데, 이것이 바로 17세기 불규칙한 활자를 읽는 해석이 설득력을 얻지 못한 이유입니다. 기호를 섞는다 해도 각 묶음은 여전히 한 글자이므로, 빈도 분석이 마무리 작업을 해 줍니다.

자주 묻는 질문

베이컨 암호란 무엇인가요?
프랜시스 베이컨이 고안한 방법으로, 각 글자가 두 기호에서만 가져온 다섯 기호의 묶음이 됩니다. 기호는 a와 b로 쓰며, A는 aaaaa, B는 aaaab 같은 식입니다. 기호 종류가 두 가지면 충분하므로 두 가지 글자 스타일을 쓰는 어떤 글 안에도 숨길 수 있습니다.
베이컨 암호는 어떻게 복호화하나요?
메시지를 a와 b의 문자열로 바꾸고, 다섯 글자씩 묶어 각 묶음을 찾아보세요. 또는 a/b 텍스트를 복호화 모드에 붙여 넣으면 도구가 해 줍니다. 먼저 올바른 알파벳을 고르세요. 베이컨의 원래 24글자 알파벳에서는 I와 J가, U와 V가 코드를 공유합니다.
24글자와 26글자 베이컨 암호는 어떻게 다른가요?
베이컨의 알파벳은 당시 라틴어 용법을 따라 I와 J를 하나의 코드로, U와 V를 다른 하나의 코드로 써서 코드가 24개입니다. 26글자 버전은 J와 V에 각각 고유한 코드를 줍니다. 두 알파벳은 A부터 I까지 같으므로, 잘못된 알파벳으로 복호화하면 I 이후의 대부분 글자가 이웃한 글자로 바뀌고, Y와 Z는 물음표가 됩니다.
A와 B 대신 0과 1을 쓸 수 있나요?
네. 코드는 이름만 다를 뿐 사실상 이진수입니다. 각 묶음은 0부터 센 글자의 위치를 a = 0, b = 1로 된 다섯 이진수로 쓴 것이므로, C는 00010(숫자 2)입니다. 기호에서 0과 1, 또는 원하는 두 문자를 고르세요.
베이컨 암호는 텍스트 안에 메시지를 어떻게 숨기나요?
덮개 글의 각 글자가 기호 하나를 나타냅니다. 보통 글자는 a, 두 번째 스타일의 글자는 b입니다. 덮개 글자 다섯 개가 비밀 글자 하나를 담으므로, 덮개 글에는 메시지의 다섯 배만큼 글자가 필요합니다. 베이컨은 살짝 다른 두 서체를 제안했고, 이 도구는 굵게, 기울임 또는 대문자로 그 아이디어를 보여 줍니다.
베이컨이 셰익스피어 작품에 메시지를 숨겼나요?
그럴 만한 확실한 증거는 없습니다. 특히 Elizabeth Wells Gallup가 주장한 첫 folio의 이원 메시지는 불규칙하게 인쇄된 글자를 눈으로 두 종류로 나누는 데 의존했습니다. William과 Elizebeth Friedman은 1957년 이 주장들을 검토했고, 성립하는 것은 하나도 찾지 못했습니다.

관련 도구

암호 및 부호의 다른 도구