2017년 1월 11일 수요일

[암호화] 블록기반 암호화 모드(ECB, CBC, CFB, OFB, CTR)


블록기반 암호화 모드


1. 전자 부호표(ECB, Electric Code Book)

- 암호화가 가장 간단하고 기밀성이 낮은 모드
- 장점 : 병행수행, 오류전파 없음, 짭은 메시지에 적합
- 단점 : 분리된 블록의 공격, 블록 사이즈 보다 작으면 안됨
- 평문 : 암호문 = 1 : 1

2. 암호 블록 연쇄 모드(CBC, Cipher  Block Chaining mode)

- 앞의 암호문 블록과 다음 평문 블록을 XOR하여 체인처럼 암호화
- 최초 동작을 위해서는 초기화 벡터(IV)가 필요
- 장점 : 긴 메시지에 사용
- 단점 : 블록 사이즈 안에서만 작동, 모든 동작은 순차적

3. 암호 피드백 모드 (CFB, Cipher-FeedBack mode)

- 한 단계 앞의 암호문 블록을 암호 알고리즘의 입력으로 사용하며 이것과 평물 블록을 XOR해서 암호문 블록을 만듬
- 장점 : 블록보다 작은 크기의 데이터에서도 동작 가능
- 단점 : 재전송 공격 가능

4. 출력 피드백 모드(OFB, Output-FeedBack mode)

- 초기화 벡터(IV)를 암호화하여 평문과 XOR 함
- 장점 : 병렬처리 가능, 스트림 형식 암호문
- 단점 : 오류가 발생하면 전체 암호문에 영향

5. 카운터 모드(CTR, CounTeR mode)

- 블록을 암호화할 때 1씩 증가해 가는 카운터를 암호화해서 키 스트림을 만듬
- 카운터를 암호화한 비트열과 평문 블록과의 XOR을 취한 결과가 암호문 블록이 됨
- 장점 : 암호화/복호화의 사전 준비 가능, 같은 구조, 병렬 처리 가능
- 단점 : 1비트가 반전되면 다른 블록에서 1비트가 반전

[출처]

http://bluehatsecurity.tistory.com/70


댓글 없음:

댓글 쓰기