DES
DES는 IBM에서 고안되어 NIST가 미국 표준 암호 알고리즘으로 채택된 대칭 암호화 알고리즘이며, 블록암호의 일종이다.
* 대칭 키 암호 : 암호화 알고리즘의 한 종류로, 암호화와 복호화에 같은 암호 키를 쓰는 알고리즘을 의미한다.
56bit의 비밀키와 8bit의 parity bit로 구성되어 있는 64bit 짜리 블록 암호 알고리즘이다.
1998년도에 해독된 암호화 기술이기 때문에, 현재의 일반 컴퓨팅 파워로도 쉽게 뚤리기 때문에 현재는 사용하지 않는다.
새 표준으로 현재는 AES가 사용되고 있다.
DES의 원리와 구조
DES의 기본 구조는 페이스텔이 만든 것으로 페이스텔 네트워크, 페이스텔 암호 등등으로 불린다.
페이스텔 구조는 블록 암호의 일종으로, 암호화 방식이 특정 계산 함수의 반복으로 이루어 진다.
DES는 56bits의 비밀키를 사용하고, 여기에 7비트마다 에러 정정 비트를 삽입하기 때문에 보조키를 생성할 때는 64bits의 키가 들어가게 된다.
56bits
01001101 01001101 01001101 01001101
에러 정정비트 삽입
01001100 10100110 01010011 10101001
DES 암호화
1. 평문의 길이는 64비트이고, 키의 길이는 56비트이다.
이보다 긴 평문은 64비트 블록으로 나눈다.
라운드 횟수는 16이다.
56비트짜리 원래 키로부터 16개의 서브키를 생성하고 그 서브키를 각 라운드마다 사용한다.
DES 복호화
DES의 복호화 과정은 근본적으로 암호화 과정과 동일하다.
암호문을 알고리즘의 임력으로 사용하고 서브키 K1는 순서를 뒤집어서 사용한다.
DES의 취약점
현재 컴퓨터 성능의 발전으로 해독에 걸리는 시간이 점차 짧아져 중요 정보의 암호화에는 적용할 수 없는 상태이다.
'Cryptography' 카테고리의 다른 글
DLL 인젝션 (0) | 2020.03.16 |
---|---|
DLL ( Dynamic Link Library) (0) | 2020.03.16 |
RSA 암호화 (0) | 2020.01.13 |
Unicode (0) | 2020.01.12 |
ASCII Code (0) | 2020.01.12 |