728x90
1. ECB (Electronic Codebook) 모드

- 방식: 각 블록을 독립적으로 암호화.
- 특징:
- 동일한 평문 블록 → 동일한 암호문 블록.
- 병렬 처리 가능.
- 단점: 패턴이 반복되면 암호문에도 반복 패턴이 생겨 보안상 위험.
- 용도: 거의 사용하지 않음 (보안 취약).
도식:
C_i = E(K, P_i)
2. CBC (Cipher Block Chaining) 모드

- 방식: 이전 암호문 블록과 현재 평문 블록을 XOR 후 암호화.
- 특징:
- 초기화 벡터(IV)가 필요.
- 동일한 평문 블록이라도 암호문은 달라짐.
- 병렬 복호화 가능, 암호화는 직렬 처리.
- 단점:
- 하나의 블록 오류 → 현재 블록과 다음 블록 오류 전파.
도식:
C_i = E(K, P_i ⊕ C_{i-1}), C_0 = IV
3. CFB (Cipher Feedback) 모드

- 방식: 이전 암호문 블록을 암호화한 후, 평문과 XOR.
- 특징:
- 스트림 암호처럼 동작 가능.
- 부분 블록 처리 가능.
- 복호화 시 병렬 처리 어려움.
- 단점:
- CBC처럼 오류 전파 발생.
도식:
C_i = P_i ⊕ E(K, C_{i-1}), C_0 = IV
🔑 4. OFB (Output Feedback) 모드

- 방식: 암호화기 출력만을 피드백하여 XOR.
- 특징:
- 오류 전파 없음 (한 비트 오류 → 해당 비트만 손상).
- 미리 키 스트림 생성 가능.
- IV 필수.
- 단점:
- IV 재사용 시 보안 치명적.
도식:
O_i = E(K, O_{i-1}), C_i = P_i ⊕ O_i, O_0 = IV
5. CTR (Counter) 모드

- 방식: 증가하는 카운터 값을 암호화 후, 평문과 XOR.
- 특징:
- 완전 병렬 처리 가능 (암호화/복호화 모두).
- 미리 키 스트림 생성 가능.
- IV 또는 nonce 필요.
- 단점:
- 카운터 값 충돌 → 보안 붕괴.
도식:
C_i = P_i ⊕ E(K, Nonce || Counter_i)
비교 요약
모드병렬 암호화병렬 복호화오류 전파패턴 감춤
| 운영모드 | 병렬 암호화 | 병렬 복호화 | 오류 전파 | 패턴 감춤 |
| ECB | O | O | X | X |
| CBC | X | O | O | O |
| CFB | X | X | O | O |
| OFB | X | X | X | O |
| CTR | O | O | X | O |
오류전파 : 암호문에서 한비트가 손상되었을 대 복호화된 평문에서 얼마나 많은 부분이 잘못되느냐를 의미
패턴감춤 : 평문에 반복되는 패턴(ex. 'AAAA', 'BBBB')이 암호문에서 그대로 드러나는지를 의미
선택 포인트
- 안전성 중요 → ECB는 피하기.
- 병렬 성능 필요 → CTR 모드.
- 스트림 암호화 필요 → OFB, CFB.
- 파일 암호화 → CBC, CTR.
728x90
'암호' 카테고리의 다른 글
| 메시지인증코드 GMAC 알고리즘 개념 및 동작과정 (0) | 2025.05.28 |
|---|---|
| 해시함수의 개념과 특성. 레인보우 테이블 공격 (0) | 2025.05.17 |
| 한국암호모듈검증제도 KCMVP 개요 (0) | 2025.04.21 |
| 양자내성암호 Open Quantum Safe 프로젝트 (0) | 2025.04.19 |
| 블록암호 패딩알고리즘 개념 (0) | 2025.04.16 |