← 최신 논문
💻 computer science

Attention-Augmented LSTMs for Automatic Homophonic Ciphertext Decipherment

이 논문은 외부의 언어적 자원 없이 정렬된 암호문-평문 쌍만을 학습한 어텐션 증강 LSTM 모델이, 다양한 언어, 시대 및 노이즈 수준에 걸쳐 공유되는 코드 풀을 학습함으로써 역사적으로 유래한 동음 치환 암호를 거의 완벽하게 자동 해독할 수 있음을 입증한다.

원저자: Micaella Bruton, Meriem Beloucif, Beáta Megyesi

게시일 2026-06-04
📖 4 분 읽기☕ 가벼운 읽기

원저자: Micaella Bruton, Meriem Beloucif, Beáta Megyesi

원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

핵심 아이디어: "슈퍼 리더"로 비밀 암호 해독하기

당신이 1700년대의 비밀 일기를 읽으려고 노력하고 있다고 상상해 보세요. 하지만 함정이 하나 있습니다. 기록자가 단순히 알파벳 "A"를 숫자 "1"로 바꾼 것이 아닙니다. 대신, 그들은 숫자가 가득 담긴 커다란 가방(하나의 "풀(pool)")을 가지고 있었고, "A"를 나타내기 위해 그 가방에서 어떤 숫자든 골라 쓸 수 있었습니다. 때로는 "1"을 썼고, 때로는 "42"를 썼으며, 때로는 "999"를 쓰기도 했습니다.

이것을 **호모포닉 사이퍼(Homophonic Cipher, 다중 치환 암호)**라고 부릅니다. 이는 일반적인 암호 해독 기법인 '빈도 분석(특정 문자가 얼마나 자주 등장하는지 세는 것)'이 통하지 않도록 설계된 영리한 속임수입니다. 만약 "A"가 1, 42, 또는 999가 될 수 있다면, 단순히 숫자의 출현 횟수만 보고는 어떤 것이 "A"인지 알 수 없기 때문입니다.

이 논문은 다음과 같은 간단한 질문을 던집니다: 현대의 컴퓨터 프로그램(구체적으로는 '어텐션(attention)' 기능이 있는 LSTM이라는 AI)이 인간이 규칙을 알려주지 않아도 이 암호들을 자동으로 해독하는 법을 배울 수 있을까?

설정: 공유된 "기술의 가방"

연구진은 단 하나의 비밀 암호만을 테스트한 것이 아닙니다. 그들은 실제 역사를 모사한 시나리오를 만들었습니다:

  • 공유된 풀(The Shared Pool): 가능한 모든 비밀 숫자들의 거대한 도서관(키 공간)을 상상해 보세요.
  • 개별 키(The Individual Keys): 서로 다른 필자(또는 서로 다른 글자)는 이 도서관의 일부만을 사용합니다. 한 필자는 "A"를 위해 1100 사이의 숫자를 사용하는 반면, 다른 필자는 50150 사이의 숫자를 사용할 수 있습니다.
  • 규칙: 결정적으로, 하나의 문서 내에서는 숫자 "42"가 나타나면 그것은 항상 동일한 글자(예: "A")를 의미합니다. 같은 문서 안에서 "B"로 변하지 않습니다.

연구진은 역사적인 영어와 스웨덴어 텍스트(1500년부터 1899년까지)로부터 생성된 수천 개의 가짜 비밀 메시지로 AI를 훈련시켰습니다. 그들은 AI에게 비밀 코드와 실제 메시지를 주었지만, 사전도, 문법 규칙도, 인간의 힌트도 주지 않았습니다. AI는 스스로 패턴을 찾아내야 했습니다.

"어텐션(Attention)"이라는 초능력

그들이 사용한 AI는 LSTM(시퀀스를 읽는 데 뛰어난 신경망의 일종)에 **어텐션(Attention)**이라는 특별한 추가 기능을 더한 것입니다.

  • 비유: 단어가 빠진 길고 혼란스러운 문장을 읽고 있다고 생각해 보세요. 당신은 빠진 단어가 무엇인지 추측하기 위해 문장의 앞부분을 다시 보거나 뒷부분을 살펴볼 것입니다.
  • AI의 역할: "어텐션" 메커니즘은 AI가 전체 비밀 메시지를 한꺼번에 볼 수 있게 해줍니다. 만약 이상한 숫자를 발견하면, AI는 주변의 숫자들을 살펴보고 "아, 이 특정 맥락에서 이 숫자는 주변에 'THE'를 만드는 숫자들과 함께 있으니 'E'임에 틀림해"라고 판단할 수 있습니다.

결과: 거의 완벽함

연구진은 매우 까다로운 조건 하에서 AI를 테스트했습니다:

  1. 짧은 메시지: 단 50글자 길이 (맥락이 매우 적음).
  2. 고어(Old Languages): 옛날 철자가 사용된 500년 전의 텍스트.
  3. 지저식 데이터: "오타"(사람이 손글씨 노트를 옮겨 적다가 실수로 잘못된 숫자를 적는 상황)를 시뮬레이션한 데이터.
  4. 가변적 길이: 어떤 코드는 3자리 숫자이고, 어떤 것은 4자리 숫자임.

결과:
AI는 놀라울 정도로 성공적이었습니다.

  • 정확도: 깨끗한 메시지에 대해서는 거의 100% 정확하게 해독했습니다.
  • 노이즈: 메시지에 "오타"가 있거나 코드 길이가 섞여 있어도, 여로 99% 이상의 성공률을 보였습니다.
  • 시간 여행: AI는 1800년대 텍스트만큼이나 1500년대 텍스트에서도 똑같이 잘 작동했습니다. 서로 다른 세기에 맞춰 다시 훈련될 필요가 없었습니다.

"마술 같은 기술": 모를 때는 모른다고 말하기

가장 흥서로운 발견 중 하나는 연구진이 AI에게 훈련할 때 사용했던 것과 다른 "숫자 가방(공유된 풀)"을 사용하는 비밀 메시지를 주었을 때 일어난 일이었습니다.

  • 결론: AI는 즉각적이고 예측 가능하게 실패했습니다. 무작위로 추측하는 것이 아니라, 그냥 풀 수 없다는 것을 보여주었습니다.
  • 이것이 중요한 이유: 이는 AI가 단순히 공부했던 특정 메시지들을 암기한 것이 아님을 증로합니다. AI는 실제로 공유된 코드 풀의 구조를 학습한 것입니다.
  • 비유: 이는 특정 자동차 엔진을 인식하도록 배운 사람과 같습니다. 그 사람에게 그 엔진을 보여주면 고칠 수 있습니다. 하지만 완전히 다른 브랜드의 엔진을 보여주면, 엉뚱한 곳에 렌치를 억지로 끼워 넣으려 하기보다 "이 엔진은 모릅니다"라고 말할 것입니다. 이 점은 AI가 역사학자들에게 다음과 같은 확인 도구로서 유용함을 시사합니다: "이 새로운 미스터리 편지가 우리가 이미 알고 있는 것과 동일한 비밀 코드를 사용하는가?"

시스템의 "결함"

AI가 실수를 할 때, 그것은 대개 글자를 혼동해서(예: "A"를 "B"라고 생각하는 것) 발생하는 것이 아니었습니다.

  • 진짜 문제: 실수는 주로 "오타"(전사 오류) 때문에 발생했습니다. AI는 비밀 코드는 정확히 식별했지만, 오타가 어디에 있는지 헷경하는 경우가 많았습니다.
  • 시사점: 근본적인 코드의 논리는 여전히 온전했습니다. AI는 단지 지저분한 손글씨 시뮬레이션에 걸려 넘어졌을 뿐입니다.

요약

이 논문은 특정 유형의 AI가 영어 나 스웨덴어의 규칙을 인간에게 배울 필요 없이, 복잡하고 역사적인 비밀 암호를 해독하는 법을 배울 수 있음을 보여줍니다.

  • 이 AI는 짧고, 길고, 오래되고, 지저분한 텍스트 모두에서 작동합니다.
  • 공유된 규칙을 매우 잘 학습하여, 새로운 메시지가 기존의 규칙을 따르는지 여부를 알려줄 수 있습니다.
  • 이 AI는 역사학자들에게 강력한 조수가 되어, 손글씨가 지저분하거나 텍스트가 매우 짧더라도 미스터리한 문서가 알려진 암호 그룹에 속하는지 검증하는 데 도움을 줍니다.

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →