토픽 10 / 210·암호학
블록암호 운영모드
블록암호 운영모드
블록 크기보다 긴 데이터를 블록 암호로 처리하기 위한 블록 연결 방식
특징: 블록 연결 방법별 보안성·성능 차이, IV/Nonce 필요
구성요소: IV(초기값), Nonce(일회용 숫자), Counter, Padding
ECB: 각 블록 독립 암호화, 패턴 보존(펭귄 문제), 사용 금지
CBC: 이전 암호문 XOR 후 암호화, IV 필수, 순차 처리(암호화 병렬 불가), 패딩 오라클/Bit-Flipping 취약
CTR: Nonce||Counter 암호화→키 스트림 XOR, 완전 병렬, 패딩 불필요, 랜덤 접근 가능
GCM: CTR 암호화 + GHASH 인증 태그, AEAD(기밀성+무결성+인증), TLS 1.3 필수, AES-NI 가속
운영모드 비교
- •ECB: 패턴노출/사용금지
- •CBC: IV 필수/순차/패딩오라클/레거시
- •CTR: Nonce 필수/병렬/패딩불필요/권장
- •GCM: Nonce 필수/병렬/AEAD/최우선 권장
Nonce 재사용 위험: CTR은 키 스트림 동일→평문 노출, GCM은 인증 키 H 노출→위조 가능
AEAD: AES-GCM, ChaCha20-Poly1305 (기밀성+무결성+인증 단일 연산)
적용사례: 파일 암호화(CBC/CTR), 네트워크 통신(GCM), 디스크 암호화(XTS), IoT(CCM)
연관: 대칭키 암호화, AES, AEAD, TLS