상세 컨텐츠

본문 제목

[블록 암호 모드] CFB 모드

정보보호 스터디

by 녕녕펀치 2024. 2. 28. 13:44

본문

1. CFB 모드

  • Cipher FeedBack 모드 (암호 피드백 모드)
  • 1단계 앞의 암호문 블록을 암호 알고리즘의 입력으로 사용
  • 피드백 : 암호화의 입력으로 사용한다는 것
  • 평문 블록을 암호 알고리즘으로 직접 암호화하지 않음 (ECB모드 & CBC 모드와 다름)

CFB 모드에 의한 암호화 & 복호화
CFB 모드와 CBC 모드 비교


2. 초기화 벡터

  • 1단계 앞의 출력이 존재하지 않으므로 대신에 초기화 벡터(IV)를 사용
  • 보통 암호화 때마다 다른 랜덤 비트열 사용

 


3. CFB 모드와 스트림 암호

  • CFB 모드의 구조는 일회용 패드와 비슷
  • CFB 모드에서는 평문 블록과 암호 알고리즘의 출력을 XOR해서 암호문 블록을 만듦
  • 일회용 패드처럼 이론적으로 해독 불가능한 것은 아님(암호 알고리즘의 출력을 계산으로 만들어지는 것이므로 실제 난수가 아니기 때문)
  • 키 스트림(key stream) : CFB 모드에서 암호 알고리즘이 생성하는 비트열
  • CFB 모드에서는 키 스트림을 생성하기 위한 의사난수 생성기로서 암호 알고리즘을 이용
  • 초기화 벡터는 의사난수 생성기의 seed(종자)에 해당
  • 평문 데이터를 1비트씩 암호화할 수 있음
  • CFB 모드 ≒ 블록 암호를 써서 생성한 키를 이용하는 스트림 암호

4. CFB 모드의 복호화

  • 블록 암호 알고리즘 자체는 암호화를 수행하고 있다는 점에 주의
  • 키 스트림은 암호화에 의해 생성되는 것

5. CFB 모드에 대한 공격

  • 재전송 공격이 가능

CFB 모드에 대한 재전송 공격

관련글 더보기