2.2 대칭 암호 알고리즘
제2장. 대칭 암호와 메시지 기밀성
목포해양대 해양컴퓨터공학과 1
블록 암호
대표적 블록 암호
DES(Data Encryption Standard)
3중 DES(3DES)
AES(Advanced Encryption Standard)
DES
Data Encryption Standard
1977년 NIST의 전신인 NBS(National Bureau of Standards)에서 FIPS PUB46으로 채택된 DES에 기반을 두고 개발
알고리즘 자체는 DEA(Data Encryption Algorithm)라 지칭
특징
평문의 길이: 64 비트
키의 길이: 56 비트(64비트 중 8비트는 패리티)
구조: Feistel 네트워크의 변형
라운드 수: 16
서브키: 원래키로부터 16 개의 48비트 서브키 생성, 각 라운드에서 사용
DES의 강도 (1)
두 가지 측면
알고리즘 자체의 문제
DES의 치명적인 약점을 공개적으로 발표하지 않았음
키 길이의 취약성
전수공격
DES cracker
1998년 EFF(Electronic Frontier Foundation)에서 250,000달러로 제작
전수공격에서 평문을 평문으로 인식하는 기능 필요
예측하는 평문에 대한 지식
의미 없는 문서 자동 분류
DES의 강도 (2)
코드를 깨는데 걸리는 시간 (106복호화/us)
컴퓨터의 연산 속도의 증가로 더 이상 안전하지 않음
목포해양대 해양컴퓨터공학과 5
3중 DES (1)
세 개의 키를 사용해 DES 알고리즘을 세 번 수행
암호-복호-암호(EDE: encrypt-decrypt-encrypt) 순서로 수행
암호화
C = E(K3,D(K2,E(K1,P)))
C =암호문
P =평문
E[K,X] =키 K를 이용해서 X를 암호화
D[K,Y] =키 K를 이용해서 Y를 복호화
3중 DES (2)
복호화
P = D(K1,E(K2,D(K3,C)))
호환성
C = E(K1,D(K1,E(K1,P))) = E(K,P)
3중 DES (3)
키 길이가 168비트로 늘어나는 효과
FIPS 46-3
AES가 사용되기 전까지 한시적 이용
3중 DES의 약점
소프트웨어 구현이 느리다
AES (1)
3DES가 속도가 느리다
장기적 표준으로 부적합
NIST는 1997년에 3DES와 같거나 더 나은 강력한 보안성을 갖고 월등히 개선된 효율적인 새로운 AES(Advanced Encryption Standard)를 공모
128비트 블록
키 길이 128, 192, 256비트
보안, 계산적 효율성, 메모리 요구성, 하드웨어와
소프트웨어 적합성, 유연성 제시
AES (2)
진행 과정
1차심사: 15개 선정
2차 심사: 5개 선정
최종선정
레인달(Rijndael):
개발자: 벨기에 암호학자
요안 대믄(Joan Daemen)
빈슨트 레이믄(Vincent Rijmen)