MIS(경영정보시스템)

공개키 암호화(Public Key Encryption)

forever1 2007. 9. 30. 17:46
 

공개키 암호화(Public Key Encryption)

  전통적인 암호화 기법에서는 암호화 과정과 복호화 과정에서 동일한 키를 사용하여야 한다. 따라서, 전통적인 암호화 기법의 가장 큰 문제점은 송신측에서 생성한 암호화 키를 수신자에게 분배하여야 하며, 키 분배의 보안성이 무엇보다도 중요하다. 이러한 문제 해결하는 좋은 방법은 키의 분배가 필요하지 않는 암호화 기법의 개발이다. 공개 키 암호화로 알려져 있는 이 기법은 1976년에 처음으로 제안되었고 그림에 설명되어 있다.

사용자 A 사용자 B

                                (키)                               (키)         

                                           

                                전통적인 암호화


 

사용자 A 사용자 B

                         (B의 공개키)                 (B의 개인키)                    

                              공개키 암호화



  공개키 암호화는 암호화할 때 하나의 키를 사용하고, 해독 과정에서 또 다른 키를 사용하는 알고리즘인데, 망 내에서는 다음의 기법이 사용된다.

 (1) 망 내의 각 단말 시스템은 수신될 메시지의 암호화와 해독에 사용될 키의 쌍을 생성한다.

 (2) 각 시스템은 자신의 암호화 키를 공개된 레지스터나 파일에 둠으로써 누구나 접근할 수 있게 하는데 이것이 공개 키(Public Key)이다. 그리고 암호문의 해독에 사용되는 상대 키는 개별적으로 유지하는데 이를 개인 키(Private Key)라고 한다.

 (3) 만약 A가 B에게 메시지를 보내려고 한다면, A는 B의 공개키를 사용해서 메시지를 암호화 한다.

 (4) B가 메시지를 수신할 때는 B는 자신의 개인 키를 사용해서 메시지를 해독한다. B만이 자신의 개인 키를 알고 있으므로 다른 어떤 수신자도 메시지를 해독할 수 없다.


  이와 같이 공개 키 암호화에서는 모든 참여자가 상대편의 공개 키를 알 수 있고, 개인 키는 각 참여자에 의해 개별적으로 생성되므로 키를 분배할 필요가 없다. 모든 사용자가 자신의 개인 키만 잘 비밀로 유지한다면 정보를 전달하는 데 있어 전통적인 암호화에 비해 훨씬 안전하다. 또한 모든 사용자는 자신의 공개 키와 개인 키의 쌍을 언제든지 새로 생성할 수 있고, 이전의 공개 키를 새로 생성된 공개 키로 바꾸기만 하면 된다.

  전통적인 암호화와 비교하여 공개 키 암호화의 중요한 단점은 알고리즘이 상대적으로 복잡한 데 있다. 따라서, 공개 키 암호화를 구현하는 하드웨어의 가격이 비씨지고 암호화와 복호화를 수행하는데 걸리는 시간이 길어지게 된다.