자료실

공개 키 암호화

기존의 비밀 키 암호화의 한계

컴퓨터 기반 시스템의 인식 문제, 인증 및 개인 정보 보호 문제에 대한 해결책은 암호 영역에 존재합니다. 매체의 비물리적 속성 때문에, 봉인이나 서명으로 매체를 물리적으로 표시하는 것은 (여러 사업적 및 법적 목적으로) 효과가 없습니다. 오히려, 소스를 확인하고, 내용을 인증하고, 염탐꾼들로부터 개인 정보를 보호하려면 일부 표시는 반드시 정보 자체로 코드화되어야 합니다.

DES (정부 후원 데이터 암호화 표준)내에서 사용되는 것과 같이 대칭 알고리즘을 사용하는 개인정보 보호는 상대적으로 작은 네트워크에서 쉬우며, 각 당사자간에 비밀 암호 키를 교환하는 것이 필요합니다. 네트워크가 확산될 때, 보안 키의 안전한 교환은 점점 더 비용이 많이 들고 수행하기가 까다로워집니다. 결과적으로, 이 솔루션 하나만으로는 적당한 크기의 네트워크에서도 실행하기가 불가능해 집니다.

DES는 추가적인 약점이 있습니다. 비밀 키를 공유해야 한다는 점입니다. 각 당사자는 다른 당사자가 두 사람의 비밀 키를 안전하게 지키고 다른 사람에게 노출하지 않는다는 것을 믿어야 합니다. 사용자는 자신이 연락을 하는 모든 사람들에 대해 각각 다른 키를 가져야 하기 때문에 그러한 비밀 키를 가진 모든 사람들을 믿어야 합니다. 이는 실질적으로 실행을 할 때, 안전한 의사소통은 단지 이전에 개인적이든 혹은 직업적이든 어떠한 관계를 맺은 사람들간에만 이루어질 수 있다는 것을 의미합니다.

DES로 해결되지 않는 기본적인 문제는 인증 및 부인방지입니다. 비밀 키를 공유할 경우 어느 당사자가 상대방의 행위임을 입증할 수가 없게 됩니다. 예를 들어, 한 당사자가 은밀하게 데이터를 수정하고, 제 3자가 자신이 범인임을 알 수 없을 것이라고 안심할 수 있는 것입니다. 안전히게 의사소통을 하는데 사용되는 바로 그 키가 다른 사용자의 명의로 위조 행위를 하는데 사용될 수 있는 것입니다.

페이지 맨 위로 돌아가기

더 나은 방법: 공개 키 암호화

인증 및 대형 네트워크의 개인정보 보호의 문제는 1976년, Whitfield Diffie와 Martin Hellman이 비밀 키 교환 없이 비밀 메시지를 교환한다는 개념을 발표하면서 이론적으로 해결되었습니다. 이 아이디어는 1977년, 그 당시 MIT 교수들이었던 Ronald Rivest, Adi Shamir 그리고 Len Adleman이 RSA 공개 키 암호 시스템을 발명하면서 결실을 맺습니다.

데이터를 암호화하고 복호화하는 데 동일한 키를 사용하는 대신 RSA 시스템은 일치된 암호 및 해독 키 쌍을 사용합니다. 각 키는 데이터에 대해 한 방향으로만 전환 작업을 수행합니다. 각 키는 상대키에 대한 역 기능을 수행합니다. 즉, 한 키가 실행하면 다른 키는 실행 취소만 할 수 있습니다.

RSA 공개 키는 소유자가 공개적으로 사용할 수 있게 만들지만 RSA 개인 키는 비밀을 유지합니다. 개인 메시지를 보내려면, 작성자는 대상 수신자의 공개 키로 메시지를 암호화합니다. 그렇게 암호화된 메시지는 수신자의 개인 키로만 복호화될 수 있습니다.

반대로 사용자는 자신의 비밀 키를 사용하여 데이터를 암호화할 수 있습니다, 다시 말해, RSA 키들은 둘 중 한 방향으로 작용합니다. 이것은 "디지털 서명"의 기반을 제공합니다. 사용자가 누군가의 공개 키로 메시지를 복호화할 수 있다면 다른 사용자는 처음에 암호화를 위해 반드시 자신의 비밀 키를 사용했을 것이기 때문입니다. 소유자만이 자신의 개인 키를 사용할 수 있기 때문에 암호화된 메시지는 일종의 전자 서명 즉 다른 누구도 만들 수 없는 문서가 됩니다.

페이지 맨 위로 돌아가기

인증 및 부인방지: VERISIGN 디지털 인증서

디지털 서명은 해싱 알고리즘을 통해 메시지 텍스트를 돌림으로써 생성됩니다. 이렇게 하면 메시지 다이제스트가 일어납니다. 그런 다음 메시지 다이제스트가 메시지를 보낸 사람의 개인 키를 사용하여 암호화된 다음, 그것을 디지털 서명으로 바꿉니다. 디지털 서명은 동일한 사람의 공개 키로만 복호화할 수 있습니다. 메시지 수신자는 디지털 서명을 복호화한 다음 메시지 다이제스트를 재계산합니다. 이 새로 계산된 메시지 다이제스트의 값은 서명에서 발견된 메시지 다이제스트의 값과 비교됩니다. 두 개가 일치된다면, 메시지는 수정되지 않은 것입니다. 송신자의 공개 키가 서명 인증에 사용되기 때문에 텍스트는 오직 송신자만이 알고 있는 개인 키로 서명된 것이 확실합니다. 이러한 전체 인증 프로세스가 모든 보안 인지 애플리케이션에 반영될 것입니다.

페이지 맨 위로 돌아가기

디지털 인증서란?

RSA 기술 사용자는 일반적으로 자신의 고유 공개 키를 발송 문서에 첨부하므로 수신자는 그 공개 키를 공개 키 보관소에서 찾을 필요가 없습니다. 그러나 어떻게 수신자가 이 공개 키 혹은 공개 디렉터리에 있는 공개 키가 정말 그것이 표시하는 개인 소유라고 확신할 수 있을까요? 침입자가 컴퓨터 네트워크에서 합법적인 사용자로 가장하고 말 그대로 뒷 자리에 앉아 다른 사람들이 무심코 민감한 비밀 성격의 문서를 침입자가 만들어 놓은 거짓 계정으로 보내는 것을 지켜보고 있을 수 있지 않을까요?

그 해결책이 일종의 디지털 "여권" 혹은 "신분증"인 디지털 인증서입니다. 디지털 인증서는 네트워크 보안 임원, MIS 헬프 데스크 또는 VeriSign, Inc.와 같이 그렇게 하도록 신임을 받는 사람이 "디지털 방식으로 서명을 한" 사용자의 공개 키입니다. 다음 그림은 디지털 인증서를 그림 형태로 설명한 것입니다.

누군가 메시지를 보낼 때마다 디지털 인증서를 첨부합니다. 메시지 수신자는 먼저 디지털 인증서를 사용하여 저자의 공개 키가 진짜인지 확인한 다음 그 공개 키를 사용하여 메시지 자체를 검증합니다. 이런 방식에서는 인증 기관의 공개 키 단 한 개만 중앙에 저장되거나 널리 공개되면 되고, 그런 다음에는 모든 사람이 간단히 자신의 공개 키와 유효한 디지털 인증서를 메시지와 함께 전송할 수 있습니다.

디지털 인증서를 사용하면, 조직의 계층 구조에 맞는 인증 체인을 구축할 수 있고, 분산된 환경에서 편리한 공개 키 등록 및 인증을 할 수 있습니다.

페이지 맨 위로 돌아가기

인증 계층 구조

사용자가 디지털 인증서를 가지고 있으면 그것으로 무엇을 합니까? 디지털 인증서는 부서간 전자 메일에서 글로벌 전자 자금 이체 (EFT)에 이르기까지 다양한 용도를 가지고 있습니다. 디지털 인증서를 사용하기 위해서는 디지털 인증서와 연계된 사용자 혹은 조직에 디지털 인증서를 결합하는 것과 관련하여 높은 수준의 신뢰가 있어야 합니다. 이러한 신뢰는 해당 계층 구조의 모든 구성원들이 동일한 일련의 정책들을 준수하는 가운데 디지털 인증 계층 구조를 구축함으로써 얻게 됩니다. 신원에 대한 증거가 확인되면 계층구조의 잠재적 구성원으로서 개인이나 법인에 대해서만 디지털 인증서가 발급됩니다. 계층 구조가 다르면 신원 확인 및 디지털 인증서 발급에 대한 정책이 달라질 수 있습니다.

Verisign은 다양한 디지털 인증서 계층 구조를 운영합니다. 상업용 CA는 최종 사용자의 디지털 인증서와 실제 최종 사용자 간의 결속에 대해 높은 수준의 보증을 제공합니다. RSA의 상업용 CA 멤버들은 자신이 누구와 의사소통을 하는지에 대해, 정책 준수를 통해, 높은 수준의 보증을 받을 수 있습니다. 일반적으로 이러한 것은 더 낮은 보증 수준의 계층구조의 구성원들인 두 최종 사용자들이 디지털 인증서를 가지고 의사소통을 하는 경우와는 다릅니다. 적절히 관리되는 디지털 인증서 계층 구조와 연계된 보증이 없을 경우, 디지털 인증서 사용은 제한적인 가치를 발휘합니다.

페이지 맨 위로 돌아가기