본문 바로가기
Computer Security

암호에 대한 이해 - Hybrid

by Doromi 2017. 12. 9.
728x90
반응형

● Hybrid 암호 알고리즘

대칭키 암호 알고리즘의 장점 + 비대칭키 암호 알고리즘의 장점

 

 

메세지의 실질적인 암호는 빠르게 하기 위해서 대칭키로 하는데, 대칭키의 단점이 둘 만의 비밀키를 공유하는 것이 굉장히 힘든 것이기 때문인데 만약 둘 만의 비밀키를 안전하고 쉽게 생성할 수 있다면 이걸 가지고 암복호화는 빠르게 할 수 있으면 굉장히 효율적으로 암복호화를 할 수 있습니다.

 

 

☞ Diffie-Hellman Key Exchange

대칭키 문제의 어려움을 극복하기 위해서 둘 만의 비밀키를 만들 수 있는 방법을 고안을 하면서 이것이 공개키 암호 시스템의 시초가 된 것입니다.

그럼 어떻게 둘 만의 비밀키를 만들 수 있을까요?

각 사용자는 자신의 공개키, 개인키를 가지고 있습니다.

Alice라는 사용자와 Bob이라는 사용자가 있다고 하겠습니다.

 

 

Alice 입장

▶ 공개키 ( A=)

    p : prime

    g : generator (상에 임의의 원소를 선택해서 그 숫자가 generator여야 된다 -> subgroup을 생성했을 때

subgroup의 차수가 의 차수가 같은 수를 generator다 또는 primitive root다 라고 한다)

   g에 개인키 승수를 해서 공개키를 만듭니다.

▶ 개인키

    a : p보다 작은 랜덤 수

 

 

Bob 입장

▶ 공개키 ( B=)

    p : prime

    g : generator

    g에 개인키 승수를 해서 공개키를 만듭니다.

▶ 개인키

    b : p보다 작은 랜덤 수

 

 

 

둘의 공개키를 이용을 해서 둘만의 shared key를 만들 수 있습니다.

각자 서로에게 자신의 공개키를 보냅니다.

Alice는 Bob의 공개키인 을 알 수 있지만, 이 값으로 부터 b는 알 수 없습니다.

Bob은 Alice의 공개키인 을 알 수 있지만, 이 값으로 부터 a는 알 수 없습니다.

 

각자 상대의 공개키로 부터 자신의 개인키를 승수 해줍니다.

Alice는 에 a 승을 해주면 이 나옵니다.

Bob은 에 b승을 해주면 이 나옵니다.

 

둘 다 이 되는 것이고 둘 만 만들수 있는 값을 공유를 하게 됩니다.

은 각자 자신의 키를 모르면 못 만듭니다.

내가 ,를 알지만 이걸로 부터 은 알아낼 수 없습니다.

왜냐하면 더블클릭을 하시면 수식을 수정할 수 있습니다.를 알려면 a 든 b 든 하나를 알아야 하는데

로 a를 알 수 없고, 로 b를 알 수 없기 때문입니다.(DLP 기반)

 

따라서 2명 (Alice-David,Bob-David)가 어떻게 만나든 서로의 공개키로 공유키를 만들어 낼 수 있게 됩니다.

공유키를 가지고 DES를 하던지 Triple-DES를 하던지 AES를 하던지 간에 암복호화를 하는데 걸리는 시간은 굉장히 짧아지면서 대칭키가 갖는 키 분배 문제를 효과적으로 해결할 수 있습니다.

 

다음에는 이러한 대칭키, 비대칭키를 현실적으로 어떻게 쓰고 있는지에 대해서 공부해 보겠습니다~

728x90
반응형