일정한 크기의 블록 단위의 암호화를 진행한다고 했습니다.
그렇다면 여기서, 만약 암호 알고리즘에서 제공하는 블록 크기보다 더 큰 크기의 평문을 암호화 하려면... ????
이 때 필요한 것이 블록 암호의 운영 모드입니다.
블록암호의 운영 모드는 크게 ECB, CBC, OFB, CFB, CTR의 다섯 가지 모드로 나뉩니다.
- ECB (Electronic Code Book)
ECB 모드는 매우 간단하게 생각해서 평문을 블록 크기로 잘라서 암호화 하는 방식입니다.
구지 수식으로 표현하면 ... Ci = E(Pi, K) 이렇게 되겠군요 ...
특징이라면 병렬 처리가 쉽다는 장점과 동시에
보안적 측면에서 입력이 랜덤화 되지 않고 평문이 쉽게 조작 될 수 있다는 단점이 있습니다.
- CBC (Cipher Block Chaining)
CBC 모드는 첫 번째 블록의 결과가 다음 블록의 암호화에 반영이 되기 때문에
ECB 모드보다 보안적 특성이 뛰어납니다.
다만 한 블록에서 에러가 발생되면 다음 블록에 영향을 미친다는 단점이 있습니다.
수식으로 표현하면 ... Ci = E((Pi xor Ci-1), K) 가 되겠군요
- OFB (Output FeedBack)
CBC 모드가 에러가 발생하면 에러가 발생한 다음 블록부터 계속 에러가 전파되는 현상이 있었습니다.
반면 OFB 모드는 이런 단점을 보완하여 평문에서 1-bit 에러가 발생하면
암호문에도 1-bit 에러만 발생하게 됩니다.
OFB 모드를 보면 키 스트림을 생성하고 평문과 XOR를 하여 암호를 만들어 내는 방법이기에
어떤 의미로는 스트림 암호로 볼 수 있습니다.
- CFB (Cipher FeedBack)
CFB 모드는 OFB 모드와 구조적으로 비슷해 보이나, 다소 다른 양상을 보입니다.
우선 한 암호문이 다음 블록의 키로 사용되기 때문에,
암호문을 알고 있는 상황에서 복호화를 병렬 처리 할 수 있다는 점이 특징입니다.
따라서 MISTY와 같이 복호화가 느린 시스템에서 사용하기에 좋겠지요
- CTR (Counter)
CTR 모드는 EBC 모드 처럼 병렬 처리가 가능 할 뿐만 아니라
EBC 모드 처럼 한 블록에서 생긴 에러가 다음 블록으로 전파 되지도 않으며
EBC 모드보다 안전합니다.
최종적으로 정리하면 다음과 같습니다.
|
EBC |
CBC |
OFB |
CFB |
Security |
- 평문 패턴 유지 - 블록 암호 입력이 랜덤화되지 않음 - 평문 조작이 쉬움 |
- 평문 패턴 없어짐 - 블록 암호 입력이 랜덤화 됨 - 평문 조작 어려움 |
- 평문 패턴 없어짐 - 블록 암호 입력이 랜덤화 됨 - 평문 조작이 쉬움 |
- 평문 패턴 없어짐 - 블록 암호 입력이 랜덤화 됨 - 평문 조작 어려움 |
Efficiency |
- 병렬처리 가능 - 전처리 불가능 |
- 복호화 병렬처리 - 전처리 불가능 |
- 병렬처리 불가능 - 전처리 가능 |
- 복호화 병렬처리 - 전처리 불가능 |
Error Propagation |
- 암호문 에러가 평문의 한 블록에만 영향을 줌 | - 암호문 에러가 다음 블록에 영향을 줌 | - 암호문 에러가 평문에 대응하는 비트에만 영향을 줌 | - 암호문 에러가 현재 블록과 다음 블록에 영향을 줌 |
표랑 본문을 이전 텍스트큐브 시절에 포스팅 한 걸 그대로 옮겨 온 것인데,
표를 다시 그리려니 ... 귀찮 ... 어려워서 그냥 CTR 모드는 표에 반영 못했네요 llorz
그 때는 그림도 같이 첨부 됐었는데, 그림 자료도 다 잃어버렸네요 ㅠㅠㅠㅠㅠㅠ
출처 - http://reinliebe.tistory.com/
'Security > Cryptography' 카테고리의 다른 글
SEED와 ARIA 확대 노력... 국내 인터넷을 '건담 찌질이화' 시키려는가? (1) | 2011.05.07 |
---|---|
암호학 - 고전암호 :: 치환암호 (0) | 2011.05.07 |
암호학 - Block Cipher :: ARIA C# Code (0) | 2011.05.07 |
암호학 - Block Cipher :: AES S-Box, GF(2^8) 의 x^-1 Table (0) | 2011.05.07 |
암호학 - Involutional SPN (0) | 2011.05.07 |