# 오토키 (Autokey)

오토키(autokey) 암호는 메시지 자체를 키 스트림 생성에 다시 사용하는 암호입니다. 처음에는 짧은 비밀 키(프라이머)로 암호화를 시작하고, 그 뒤의 키 스트림은 이미 처리한 평문 또는 암호문으로 채웁니다. 평문을 키로 쓰는 방식을 평문 오토키, 암호문을 피드백하는 방식을 암호문 오토키라고 하며, 현대 스트림 암호에서는 암호문 출력이 피드백되어 키 스트림 생성기의 상태를 바꾸는 구조를 가리키기도 합니다. 16세기 블레즈 드 비즈네르(Blaise de Vigenère)가 비즈네르 암호의 변형으로 설명한 것이 잘 알려진 예입니다.

**평문 오토키 (비즈네르 오토키)**

키 스트림은 비밀 키 뒤에 평문을 이어 붙여 만들고, 각 글자는 비즈네르 방식으로 더합니다(A=0, B=1, …, Z=25로 두고 26으로 나눈 나머지를 씁니다).

1. **평문:** ATTACKATDAWN
2. **비밀 키:** QUEEN
3. **키 스트림:** QUEEN + ATTACKA = QUEENATTACKA
4. **암호문:** QNXEPKTMDCGN

수신자는 비밀 키로 처음 다섯 글자를 복호화하고, 복호화한 평문을 이어서 키로 사용해 나머지를 차례로 풉니다. 일반 비즈네르 암호는 짧은 키를 반복하므로 암호문에 주기가 생기고, 카시스키 검사 같은 방법으로 키 길이를 알아낼 수 있습니다. 오토키는 키가 반복되지 않아 이런 주기 분석을 피할 수 있지만, 아래에서 보듯 다른 방법으로 쉽게 풀립니다.

**암호문 오토키**

비밀 키 다음의 키 스트림으로 평문 대신 앞서 만든 암호문을 씁니다. 같은 평문과 키라면 키 스트림은 QUEEN + QNXEPAN, 암호문은 QNXEPANQHPWA가 됩니다. 이 방식에서는 비밀 키 이후의 키 스트림이 암호문에 그대로 드러나므로, 실제로 비밀인 것은 처음의 짧은 키뿐입니다.

**안전성과 오류 전파**

- **고전 오토키 암호는 쉽게 해독됩니다:** 키 스트림 대부분이 평문이나 암호문에서 나오므로 통계 분석, 추측한 단어 대입, 짧은 비밀 키에 대한 전수 조사로 풀 수 있습니다. 오늘날 보안 용도로는 쓰이지 않습니다.
- **평문 오토키의 오류 전파:** 복호화 중 한 글자를 잘못 풀면 그 글자가 다음 키로 쓰이므로 오류가 뒤쪽으로 계속 이어집니다.
- **암호문 오토키의 자기 동기화:** 전송 중 암호문 한 글자가 손상되어도 영향은 그 글자와, 키 길이만큼 뒤에 있는 글자 하나에 그치고, 이후에는 정상적으로 복호화됩니다.

**현대 암호학에서의 위치**

암호문을 피드백해 키 스트림을 만드는 원리는 자기 동기화 스트림 암호와 블록 암호의 CFB(Cipher Feedback) 운용 모드로 이어졌습니다. 이 경우에도 안전성은 피드백 구조가 아니라 키 스트림을 만드는 강력한 블록 암호(예: AES)와 비밀 키에서 나옵니다. 오토키 암호를 이해하면 암호 기술이 고전 암호에서 현대 스트림 암호로 어떻게 발전했는지 파악하는 데 도움이 됩니다.

---
출처: https://achivx.kr/glossary/autokey-%EC%98%A4%ED%86%A0%ED%82%A4/ · ACHIVX 용어 사전 · 수정일 2026-10-20
