-
ECB 모드
블록 암호의 운용 방식 중 가장 간단한 방식
평문을 각 블록 암호 알고리즘에서 정의한 일정한 비트로 나누어 암호화하는 방식
암호화해야 하는 데이터가 기본 블록단위보다 큰 경우에는 사용을 권고하지 않음. 그러므로, 짧은 길이의 평문 암호화에 사용
장점 :
- 블록 암호화가 서로 독립적으로 작용하기 때문에 이전 블록 값에서 발생한 에러는 이후 블록 값에 영향을 주지 않음
- 특정한 블록만을 대상으로 암호화 또는 복호화하는 환경에서 효과적
단점 :
- 동일한 평문 -> 동일한 암호문 출력
- 동일한 암호문 -> 항상 동일한 평문 출력
- 그러므로, 암호문 단독 공격의 가능성이 높음
CBC 모드
출력 암호문이 다음 평문 블록에 영항을 미치게 하여 각 암호문 블록이 전단의 암호문의 영향을 받도록 만든 방식
ECB에서 발생하는 동일한 평문에 의한 동일한 암호문이 발생하지 않도록 구성한 도작 모드
암호화 과정에서 평문 블록 Mi에서의 오류 발생시 암호문에 미치는 영향
- 평문 블록 Mi에서의 한 비트 오류는 그 다음에 출력되는 모든 암호문 블록 Ci, Ci+1, Ci+2, ...에 영향을 미치게 된다.
이러한 특징은 메시지 인증에 유용하므로 메시지 인증 코드 MAC에 사용될 수 있다.
복호화 과정에서 암호문 블록 Ci에서 발생하는 한 비트의 오류
- 복호화 된 해당 평문 블록 Mi에서는 여러 비트에 영향을 줌
- 다음 단의 복호화 된 평문 블록 Mi+1에는 한 비트의 오류를 유발
- 그 다음 단의 복호화 된 평문 블록 Mi+2에는 영향을 주지 않음
CFB 모드
CBC 모드와 마찬가지로 동일한 평문 블록에 동일한 암호문이 나타나지 않도록, 전 단계의 암호문이 다음 단계의 평문에 영향을 미치도록 구성한 방식
CBC와 다른 점은 암호문이 암호기의 입력으로 사용되는 것이다.
암호화 과정 중 평문 블록 내에 한 비트 오류가 발생하면 모든 암호문에 영향을 미침.
복호화 과정 중 암호문 블록 내에 한 비트 오류가 발생하면
- 복호화 된 해당 평문 블록 Mi에서는 한 비트 오류를 유발
- 다음 단의 복호화 된 평문 블록 Mi+1에는 다수의 오류를 발생시킨다.
- 그 다음 단의 복호화 된 평문 블록 Mi+2에는 영향을 주지 않음(주의!)
OFB 모드
OFB 모드 동작은 (평문 블록이 동일하면 암호문이 같아지는) ECB 모드의 단점을 개선하고 CBC/CFB 모드의 오류 전판 특성을 제거한 방식
전송 중에 비트 손실이나 삽입에 유의해야함.