ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 대칭키 암호를 이용한 해쉬함수
    > Information Security/Cryptology 2012. 5. 28. 00:43

    < 대칭키 암호를 이용한 해쉬함수 >

     

     암호학 적으로 안전한 해쉬함수를 만드는 방안으로 기존의 블록 암호 방식을 이용하여 구성하는 방법이다.

    따라서 대칭키 암호를 이용한 해쉬함수에서는 블록 암호 방식을 사용한다.

     

    가장 간단한 방법은 서명문 블록을 암호방식의 암호키로 사용하고, 전단의 해쉬값을 입력으로 새로운 해쉬를 출력하는 방법이 있다.

     

     

     

     

     

    [그림] 블록 암호방식을 이용한 일반적인 해쉬함수

     

     

     

     

     

    블록 대칭 암호 방식을 이용한 해쉬함수를 일반화 하는 경우에는

     3가지 변수가 4가지 값을 가질 수 있으므로 64가지의 해쉬함수가 존재할 수 있다.

     

    그중 15가지는 하나의 입력에 대하여 하나의 출력이 나타나지 않으며 37가지는 안전하지 못하다.

     

    블록 대칭 암호방식을 이용한 해쉬함수로 안전한 방식은 총 12가지가 있으며 모든 공격에 안전한 4가지와

     안전성에 다소 문제가 있다고 제기된 8가지로 나뉜다.

     

     

     

     

     그 중 책에서 소개된 해쉬방식은 Meyer_Matyas, Miyaguchi-Ohta-Iwata, Davies-Meyer이 있고

     

    그 이외에 Matyas-Meyer-Oseas, Miyaguchi-Preneel 과 같은 대칭 암호 방식을 이용한 해쉬함수가 있다.

     

     

     

     

     

    (1)   Meyer-Matyas 해쉬방식

     

     

    [그림]Meyer-Matyas 해쉬방식

     

     

     

    (2)   Miyaguchi-Ohta-Iwata

     

     

     

    [그림] Miyaguchi-Ohta-Iwata 해쉬 방식

     

     

     

    (3)   Davies-Meyer

     

    [그림] Davies-Meyer 해쉬방식

     

     

    Davis-Meyer 해쉬 방식은 k비트를 갖는 n비트 블록 암호 알고리즘을 이용한다.

     

    만일 사용된 블록 암호 알고리즘이 암호학적으로 안전하다고 하더라도, n이 충분히 크지 않을 경우에 충돌 회피성이 약하다는 단점이 있다.

     

    (4)   Matyas- Meyer- Oseas

     

     

     

    [그림] Matyas- Meyer- Oseas 해쉬 방식

     

     

     이 해쉬 방식은 일방향 압축 함수(One-way function)의 성질을 가진다.

     

    일방향 함수란 앞서 말한 해쉬함수의 특징에 근거한다.

    h(x)=y인 해쉬 값을 가질 때, x로부터 y의 계산은 쉬우나 y로부터의 x의 값은 찾기 어려운 성질을 말한다.

     

    Matyas-Meyer-Oseas 해쉬 방식은 Davis-Meyer의 한 구조로 메시지 블록을 암호 시스템의 키로 사용한다.

     

    이때 함수 G를 통해서 암호문을 위한 키로 맞추기 위해 변환 및 패딩을 한다

    .

    (5)   Miyaguchi-Preneel

     

     

    [그림] Miyaguchi-Preneel 해쉬 방식

     

     

    Miyaguchi-Preneel 해쉬 함수는 단일블록 편도 압축함수이다.

     

    Matyas-Meyer-Oseas버전을 확장한 것이며, 알고리즘을 공격에 더 강하게 하기 위해서 평문, 암호 키, 암호문 모두를 XOR연산 하여 새로운 다이제스트를 생성한다.

     

     

     

     

    728x90
    반응형
Designed by Tistory.