암호학(3)
1. DES
- 가장 널리 사용되는 대칭키 블록 암호이다.
- 평문의 길이는 64비트이고 키의 길이는 56비트, 라운드 횟수는 16회이다. (Feistel 네트워크의 변형된 형태)
- 복호화과정은 암호화과정과 동일하다. (첫번째 라운드에 K16을 사용하고, 다음라운드에 K15, 마지막 라운드에서는 K1사용)
1) DES의 구조
(1) 암호화 과정은 2개의 P-Box와 16개의 Feistel 라운드 함수로 구성된다.
(2) 각 라운드는 암호키로부터 생성된 48비트 라운드키를 사용한다.
(3) 라운드 함수
- 이전 라운드 함수의 출력값을 입력으로 받아, 다음라운드에 입력으로 전송될 값을 생성한다.
- 각 라운드에는 2개의 암호 요소 혼합기와 교환기가 있다. (역연산이 가능하다)
(4) DES 함수
- DES의 핵심이다.
- 라운드 함수에 사용된값을 가리킨다.
- 32비트 출력값을 산출하기 위하여 가장 오른쪽의 32비트에 48비트 키를 적용한다.
- 확장 P-Box, 키 XOR, 8개의 S-Box, 단순 P-Box로 구성돼있다.
2) DES 분석
(1) S-Box
- 각 라운드에서부터 그 다음 라운드까지 혼돈을 만족하도록 설계돼있다.
- 비선형 함수이다.
- 입력값의 한 비트를 바꾸면 출력값은 두 비트 이상이 바뀐다.
(2) P-Box
- 단순 P-Box 와 확장 P-Box로 구성돼있다.
- 2개의 박스는 비트들을 동시에 확산시킨다.
(3) 취약점 : 키의 크기
2. 3중 DES
- 2개의 키를 갖는 3중 DES와 3개의 키를 갖는 3중 DES 두 종류가 있다.
- 하드웨어에서 효율적이지만 소프트웨어에서는 비효율적이다.
- 바이오 정보를 보호하거나 금융 분야에 많이 사용되고있다.
1) 2개의 키를 갖는 3중 DES
(1) 두개의 키(k1,k2)를 사용
(2) 첫번째와 세번째 단계에서는 k1을 사용하고 두번째 단계에서는 k2를 사용한다.
(3) 하나의 DES로 3중 DES를 만드는 방법
- 암호화 과정 중간단계에서는 복호화 알고리즘을 사용한다.
- 복호화 과정에서는 DES의 암호화 알고리즘을 사용한다.
2) 3개의 키를 갖는 3중 DES
(1) 알려진 평문 공격의 가능성 때문에 3개의 키를 갖는 3중 DES를 사용한다.
(2) 대표적인 프로그램으로는 PGP가 있다.
(3) 복호화는 암호화의 역순이다.
3) 호환성
(1) 3DES의 모든 키를 동일하게하면 DES와 같아진다.
(2) 과거에 DES로 암호화된 암호문은 3DES를 사용하여 복호화가 가능하다.
(3) 3DES는 DES에 대한 상호 호환성을 가지고있다고 말할수있다.
구분(Bits) |
DES |
3DES |
AES |
평문 블록 크기 |
64 |
64 |
128 |
암호문 블록 크기 |
64 |
64 |
128 |
키 크기 |
56 |
112,168 |
128,192,256 |
3가지 대중적인 대칭키 암호 알고리즘 비교
'Gift > Security' 카테고리의 다른 글
[정보보안기사] 접근통제 (0) | 2017.08.30 |
---|---|
[정보보안기사] 암호학(4) (0) | 2017.08.08 |
[정보보안기사] 암호학(2) (0) | 2017.08.05 |
[정보보안기사] 암호학(1) (0) | 2017.08.04 |
[정보보안기사] 정보보호관리 요약 (0) | 2017.08.03 |