정보보안/암호학2009. 2. 23. 12:23

ㅁ DES란?

    - 64Bit의 평문을 64비트의 키(8비트 - 에러검출)를 적용하여 64비트의 암호문을 얻어내는 대칭형 블록암호
    - 대체와  치환이라는 기본적인 암호화 함수를 반복적으로 16회 반복 -> 혼돈과 확산개념에 기반을 둠.
    - 혼동 : 평문에서 1비트가 달라지면 암호문에 어떤 변화가 생길지 알수없다. / 확산 : 평문의 1비트가 달라지면 여러개의 비트에 영향
    - 모드 : 한번에 64비트씩밖에 처리하지 못하기 때문에 평문을 우선 블록단위(64비트)로 자른 후에 DES를 이용해서 암호화를 반복한다
    - 페이스텔 구조 : '라운드' 함수를 여러번 반복해서 수행하는 과정(DES에서는 16회 반복한다)


                      ㅁㅁㅁㅁㅁㅁㅁㅁ(<-평문 - 이것이 처음에 반으로 나뉨)
ㅁㅁㅁㅁ(L)                                       ㅁㅁㅁㅁ(R)
     |                                                      | 
     |                 |============== | <- ---------------- K : 서브키 
   XOR  <-------| F : 라운드 함수| <- ----| 
     |                 |---------------|           |
     |                                                      |
ㅁㅁㅁㅁ(L)                                       ㅁㅁㅁㅁ(R)
     |                                                      | 
     |------------------x-----------------| 
     |                                                      |
ㅁㅁㅁㅁ(R)                                       ㅁㅁㅁㅁ(L)  

       (1) 입력된 64비트 블록을 각각 32비트인 L과 R로 나눈다
       (2) R을 그대로 R로 보낸다
       (3) R을 라운드 함수 F로 보낸다
       (4) 라운드 함수 F는 Rrhk 서브키 K를 입력으로 사용하여 랜덤하게 보이는 비트열을 계산한다
       (5) 얻어진 비트열과 L을 XOR 연산 한다
       (6) 연산된 값을 다음 라운드의 R로 사용하고 연산없이 그냥 내려온 비트열 R을 L로 사용한다
       (7) 마지막 라운드에서는 (6)번의 변환은 취하지 않고 그냥 그대로 내려와 비트블록이 합쳐진다 

    - 페이스텔 구조의 특징
       (1) 원하는 만큼 라운드수를 늘릴 수 없있다. 즉, 라운드수를 아무리 늘려도 복호화할 수 없는 염려가 없다
       (2) 라운드 함수F 자리에 어떤 함수르 사용해도 복호화가 가능하다. 단, 라운드 마다의 F는 모두 같은 함수이다
       (3) 암호화와 복호화를 완전히 동일한 구조로 실현할 수 있다. 단, 각 라운드의 키 순서는 역순으로 해주어야 한다. 

ㅁ 트리플 DES(3-DES, Triple-DES)란?
    - DES 암호 알고리즘을 좀 더 강력히 만들기 위해 단일 DES를 키를 다르게 하여 세개를 붙인 형태.
    - 암호화의 구조를 각 단계의 키를 다르게 하여 암호화 -> 복호화 -> 암호화 순으로 처리

* 암호화
               K1             K2             K3
평문 --> 암호화 --> 복호화 --> 암호화 --> 암호문   (DES-EDE3) 

               K1             K2             K1
평문 --> 암호화 --> 복호화 --> 암호화 --> 암호문   (DES-EDE2 - 키의 사용 줄임)

* 복호화
                  K3             K2             K1
암호문 --> 복호화 --> 암호화 --> 복호화 --> 평문   (DES-EDE3) 

출처 : http://blog.naver.com/tkdgjs99/

Posted by Huikyun