본문 바로가기

Secure UC

[연재] Secure IP Telephony의 이해 - (3) 전자 서명

글 싣는 순서

1. Secure IP Telephony의 개요 
2. 암호화 (Encryption)와 인증 (Authentication)
3. 전자서명 (Digital Signature)
4. PKI의 이해
5. Cisco Secure IP Telephony의 이해 
6. TLS & SRTP



지금까지 암호화와 인증방식에 대해 살펴보았습니다. 충분히 이해하셨다면 전자서명을 쉽게 이해할 수 있을 것입니다. 


전자서명(Digital Signature)의 개요
전자 서명은 원문에 추가되는 Verification Data로 보안 통신에 있어 제공되어야 할 다음과 같은 서비스를 제공합니다. 

    • Data authenticity (신뢰성) : 송신자를 증명
    • Data integrity (무결성) : 변경되지 않은 원본임을 증명
    • Nonrepudiation of Data (부인방지) : 송신자가 자신이 아님을 증명할 수 없게 함

HMAC을 이용하여 신뢰성과 무결성을 제공하지만, 부인방지를 제공하지를 제공하지 못합니다. 전자서명은 비대칭 암호화 알고리즘인 RSA를 사용하고, 보안키는 개인키(Private Key)를 이용하므로써 부인방지를 제공합니다. 개인키는 생성된 후에 절대 외부로 공개되지 않으므로 가장 안전한 키입니다. 

전자 서명은 HMAC 보다 처리속도가 매우 느리므로 실시간 트래픽인 RTP에는 사용할 수 없지만, 기기인증을 할 경우나 대칭키를 상호 교환할 경우에 이용합니다.  전자서명은 보안을 위한 세 가지 서비스를 제공하기 위해서는 반드시 PKI (Public Key Infrastucture)를 이용해야 하므로 키쌍 (Public Key, Private Key)이 요구됩니다. 부인방지 서비스까지 필요한 경우인 CUCM의 IP Phone 인증이나 VPN Concentrator의 VPN Client 인증에는 비대칭 암호화 알고리즘을 사용합니다.  

PKI에서 Public Key로 암호화한 후에 Private Key로 복호화합니다만, 전자서명은 Private Key로 암호화한 후에 Public Key로 복호화하는 것이 차이점입니다. 


전자 서명 방식
실제 전자 서명이 어떻게 이루어지는 지 차례대로 살펴보겠습니다.


  1. 100K 달러 주문서를 SHA-1으로 헤쉬하여 Verification Data를 생성합니다. 즉, 원문을 고정길이의 문자열로 나타내는 것입니다. 여기서 바로 RSA를 이용하지 않는 이유는 첫번째, 처리속도가 너무 느리다기에 차라리 헤쉬를 하여 암호화할 데이타량을 현저히 줄이는 것입니다. 두번째, 전송된 정보는 다른 채널로도 확인이 가능해야 합니다. 메일이나 전화로 내용을 일일히 확인을 할수 있어야 하는 데 원문을 자체를 비교하는 것은 어렵기 때문입니다. 


  2. 사용자 A의 Private Key로 헤쉬된 MAC을 RSA로 암호화합니다. 

  3. 원문과 함께 전자서명된 메세지를 동봉하여 전송합니다.

  4. 수신자는 사용자 A의 Public Key를 획득하여 RSA로 복호화합니다. 이 값은 Verification Data로 가정합니다.

  5. 수신자는 원문을 똑같이 SHA-1으로 헤쉬하여 Step 4의 Verification Data와 비교합니다.


정리하며
간단하게 전자 서명에 대한 내용을 정리하였습니다. 전자서명의 매커니즘을 이해하시면, 암호화와 인증의 기본 지식을 이해한 것으로 볼 수 있습니다. 다음에는 PKI에 대해 설명드리겠습니다. 내용을 정리하다보니 CIPT 내용으로 정리가 되네요..^^


----------------- --------------------------------------------------------

라인하트 (CCIEV #18487) 
ucwana@gmail.com (라인하트의 구글 이메일) 
http://twitter.com/ucwana (라인하트의 트위터 ) 
http://twitter.com/nexpertnet (넥스퍼트 블로그의 트위터, 최신 업데이트 정보 및 공지 사항) 
http://groups.google.com/group/cciev (시스코 UC를 공부하는 사람들이 모인 구글 구룹스) 
http://groups.google.com/group/ucforum (벤더에 상관없이 UC를 공부하는 사람들이 모인 구글 구룹스) 
정리하고 보니 나도 디지털 네이티브 _____________________________________________________