# 혼돈 (Confusion)

혼돈(Confusion)은 암호에서 키와 암호문 사이의 관계를 최대한 복잡하게 만들어, 암호문을 관찰해도 키를 추론하기 어렵게 하는 성질입니다. 확산(Diffusion)과 함께 클로드 섀넌(Claude Shannon)이 1949년 논문 「Communication Theory of Secrecy Systems」에서 제시한 암호 설계의 두 기본 원리입니다.

## 자세히 알아보기

혼돈이 약하면 키와 암호문 사이에 단순한(예: 선형) 관계가 남아, 공격자가 방정식을 세우거나 통계를 모아 키를 좁혀 갈 수 있습니다. 그래서 혼돈은 주로 비선형 연산으로 구현합니다. 대표적인 수단이 치환 상자(S-box)로, 입력 비트 몇 개를 예측하기 어려운 출력 비트로 바꿉니다.

확산은 평문 한 비트의 변화가 암호문 전체에 퍼지게 하는 성질입니다. 혼돈이 "관계를 꼬는 것"이라면 확산은 "영향을 넓게 퍼뜨리는 것"입니다. 둘 중 하나만으로는 부족하며, 현대 블록 암호는 두 연산을 여러 라운드 반복합니다.

AES의 경우 SubBytes 단계(S-box)가 혼돈을, ShiftRows와 MixColumns 단계가 확산을 담당합니다. S-box가 선형에 가까우면 선형 암호 분석이나 차분 암호 분석에 취약해지므로, S-box의 비선형성은 엄밀하게 평가됩니다.

섀넌은 이상적인 암호가 "평문의 통계"와 "키"를 모두 숨겨야 한다고 보았습니다. 확산은 평문의 통계적 구조(글자 빈도 등)를 넓게 흩어 숨기고, 혼돈은 키에 대한 단서를 복잡하게 꼬아 숨깁니다. 이 구분은 오늘날 치환-순열 네트워크(SPN)와 파이스텔 구조 설계의 기초가 되었습니다.

## 블록체인·암호화폐에서는

혼돈은 블록체인 프로토콜에서 직접 보이는 개념은 아니지만, 그 기반이 되는 암호 기본 요소에 들어 있습니다. 거래소와 지갑의 통신 암호화(TLS의 AES-GCM), 지갑 파일 암호화, 그리고 SHA-256이나 Keccak 같은 해시 함수의 내부 라운드 함수도 비선형 연산으로 혼돈을 만들어 냅니다.

## 쉽게 말하면

혼돈은 열쇠와 잠긴 결과 사이의 연결을 엉킨 실타래처럼 만들어, 결과만 보고는 어떤 열쇠를 썼는지 거꾸로 따라갈 수 없게 하는 것입니다.

## 예시

단순 시저 암호는 키(이동 칸 수)와 암호문의 관계가 "모든 글자를 같은 칸만큼 이동"이라 혼돈이 거의 없습니다. 반면 AES의 S-box는 입력 0x00을 0x63으로, 0x01을 0x7C로 바꾸는 식이라 규칙을 단순한 식으로 표현하기 어렵습니다.

---
출처: https://achivx.kr/glossary/confusion-%ED%98%BC%EB%9E%80/ · ACHIVX 용어 사전 · 수정일 2026-10-20
