공개 키 인프라
PKI (공개 키 인프라)의 가장 뚜렷한 기능은 기본 보안 서비스를 달성하기 위해 한 쌍의 키를 사용한다는 것입니다. 키 쌍은 개인 키와 공개 키로 구성됩니다.
공개 키는 공개 도메인에 있으므로 남용 될 가능성이 있습니다. 따라서 이러한 키를 관리하려면 일종의 신뢰할 수있는 인프라를 구축하고 유지해야합니다.
핵심 관리
모든 암호 시스템의 보안은 키가 얼마나 안전하게 관리되는지에 달려 있습니다. 암호화 키 처리를위한 보안 절차가 없으면 강력한 암호화 체계 사용의 이점이 손실 될 수 있습니다.
암호화 체계는 설계의 약점으로 인해 거의 손상되지 않는 것으로 나타났습니다. 그러나 빈약 한 키 관리로 인해 종종 손상됩니다.
다음과 같은 키 관리의 몇 가지 중요한 측면이 있습니다-
암호화 키는 특별한 데이터 조각 일뿐입니다. 키 관리는 암호화 키의 보안 관리를 의미합니다.
키 관리는 다음 그림과 같이 전체 키 라이프 사이클을 다룹니다.
공개 키 암호화를위한 키 관리에는 두 가지 특정 요구 사항이 있습니다.
Secrecy of private keys. 키 수명주기 동안 비밀 키는 소유자이고 사용 권한이있는 사람을 제외한 모든 당사자로부터 비밀로 유지되어야합니다.
Assurance of public keys.공개 키 암호화에서 공개 키는 공개 도메인에 있으며 공개 데이터로 간주됩니다. 기본적으로 공개 키가 올바른지, 누구와 연결될 수 있는지 또는 무엇을 위해 사용될 수 있는지에 대한 보장이 없습니다. 따라서 공개 키의 키 관리는 공개 키의 목적 보장에 훨씬 더 명시 적으로 초점을 맞출 필요가 있습니다.
'공개 키 보증'의 가장 중요한 요구 사항은 공개 키 암호화를 지원하는 키 관리 시스템 인 PKI (공개 키 인프라)를 통해 달성 할 수 있습니다.
공개 키 인프라 (PKI)
PKI는 공개 키에 대한 보증을 제공합니다. 공개 키 식별 및 배포를 제공합니다. PKI의 구조는 다음 구성 요소로 구성됩니다.
- 일반적으로 '디지털 인증서'라고하는 공개 키 인증서입니다.
- 개인 키 토큰.
- 인증 기관.
- 등록 기관.
- 인증서 관리 시스템.
디지털 인증서
비유를 위해 인증서는 개인에게 발급 된 ID 카드로 간주 할 수 있습니다. 사람들은 운전 면허증, 여권과 같은 신분증을 사용하여 신원을 증명합니다. 디지털 인증서는 전자 세계에서 동일한 기본 작업을 수행하지만 한 가지 차이점이 있습니다.
디지털 인증서는 사람에게만 발급되는 것이 아니라 컴퓨터, 소프트웨어 패키지 또는 전자 세계에서 신원을 증명하는 데 필요한 모든 것에 발급 될 수 있습니다.
디지털 인증서는 공개 키 인증서 및 인증 유효성 검사를위한 표준 인증서 형식을 정의하는 ITU 표준 X.509를 기반으로합니다. 따라서 디지털 인증서를 X.509 인증서라고도합니다.
사용자 클라이언트와 관련된 공개 키는 클라이언트 정보, 만료 날짜, 사용, 발급자 등과 같은 기타 관련 정보와 함께 CA (인증 기관)의 디지털 인증서에 저장됩니다.
CA는이 전체 정보에 디지털 서명하고 인증서에 디지털 서명을 포함합니다.
클라이언트의 공개 키 및 관련 정보에 대한 보증이 필요한 사람은 누구나 CA의 공개 키를 사용하여 서명 유효성 검사 프로세스를 수행합니다. 성공적인 유효성 검사는 인증서에 제공된 공개 키가 인증서에 제공된 세부 정보를 가진 사람에게 속함을 보장합니다.
개인 / 단체가 디지털 인증서를 획득하는 과정은 다음 그림에 나와 있습니다.
그림에 표시된 것처럼 CA는 클라이언트의 애플리케이션을 수락하여 공개 키를 인증합니다. CA는 클라이언트의 신원을 정식으로 확인한 후 해당 클라이언트에 디지털 인증서를 발급합니다.
인증 기관 (CA)
위에서 설명한 것처럼 CA는 클라이언트에 인증서를 발급하고 다른 사용자가 인증서를 확인할 수 있도록 지원합니다. CA는 인증서 발급을 요청하는 클라이언트의 신원을 정확하게 식별하고 인증서에 포함 된 정보가 정확하고 디지털로 서명되었는지 확인합니다.
CA의 주요 기능
CA의 주요 기능은 다음과 같습니다.
Generating key pairs − CA는 독립적으로 또는 클라이언트와 공동으로 키 쌍을 생성 할 수 있습니다.
Issuing digital certificates− CA는 여권 기관과 동등한 PKI로 생각할 수 있습니다. CA는 클라이언트가 자신의 신원을 확인하기 위해 자격 증명을 제공 한 후 인증서를 발급합니다. 그런 다음 CA는 인증서에 서명하여 인증서에 포함 된 세부 정보가 수정되지 않도록합니다.
Publishing Certificates− CA는 사용자가 인증서를 찾을 수 있도록 인증서를 게시해야합니다. 이를 달성하는 방법에는 두 가지가 있습니다. 하나는 전자 전화 번호부에 해당하는 인증서를 게시하는 것입니다. 다른 하나는 인증서가 필요하다고 생각하는 사람들에게 인증서를 보내는 것입니다.
Verifying Certificates − CA는 클라이언트의 디지털 인증서에 대한 서명 확인을 지원하기 위해 환경에서 공개 키를 사용할 수 있도록합니다.
Revocation of Certificates− 때때로 CA는 사용자의 개인 키 손상 또는 클라이언트의 신뢰 상실과 같은 어떤 이유로 인해 발급 된 인증서를 취소합니다. 해지 후 CA는 환경에서 사용할 수있는 해지 된 모든 인증서 목록을 유지합니다.
인증서 클래스
인증서에는 네 가지 일반적인 클래스가 있습니다.
Class 1 − 이러한 인증서는 이메일 주소를 제공하여 쉽게 획득 할 수 있습니다.
Class 2 − 이러한 인증서는 추가 개인 정보를 제공해야합니다.
Class 3 −이 인증서는 요청자의 신원을 확인한 후에 만 구입할 수 있습니다.
Class 4 − 매우 높은 수준의 신뢰가 필요한 정부 및 금융 기관에서 사용할 수 있습니다.
등록 기관 (RA)
CA는 제 3 자 등록 기관 (RA)을 사용하여 신원 확인을 위해 인증서를 요청하는 개인 또는 회사에 대해 필요한 검사를 수행 할 수 있습니다. RA는 클라이언트에 CA로 나타날 수 있지만 실제로 발급 된 인증서에 서명하지는 않습니다.
인증서 관리 시스템 (CMS)
인증서가 게시되고, 일시적 또는 영구적으로 중단, 갱신 또는 취소되는 관리 시스템입니다. 인증서 관리 시스템은 법적 이유로 인해 특정 시점에 상태를 증명해야 할 수도 있으므로 일반적으로 인증서를 삭제하지 않습니다. CA는 관련 RA와 함께 자신의 책임과 책임을 추적 할 수있는 인증서 관리 시스템을 실행합니다.
개인 키 토큰
클라이언트의 공개 키는 인증서에 저장되지만 연결된 비밀 개인 키는 키 소유자의 컴퓨터에 저장 될 수 있습니다. 이 방법은 일반적으로 채택되지 않습니다. 공격자가 컴퓨터에 액세스하면 쉽게 개인 키에 액세스 할 수 있습니다. 이러한 이유로 개인 키는 암호를 통해 보호되는 안전한 이동식 저장소 토큰 액세스에 저장됩니다.
공급 업체마다 키를 저장하기 위해 종종 서로 다르고 때로는 독점적 인 저장 형식을 사용합니다. 예를 들어 Entrust는 독점 .epf 형식을 사용하는 반면 Verisign, GlobalSign 및 Baltimore는 표준 .p12 형식을 사용합니다.
CA의 계층
방대한 네트워크와 글로벌 통신 요구 사항으로 인해 모든 사용자가 인증서를 얻는 신뢰할 수있는 CA를 하나만 갖는 것은 사실상 불가능합니다. 둘째, 하나의 CA 만 사용할 수있는 경우 CA가 손상되면 문제가 발생할 수 있습니다.
이러한 경우 두 통신 당사자가 동일한 CA와 신뢰 관계를 갖지 않는 환경에서 공개 키 인증서를 사용할 수 있으므로 계층 적 인증 모델이 중요합니다.
루트 CA는 CA 계층 구조의 맨 위에 있으며 루트 CA의 인증서는 자체 서명 된 인증서입니다.
루트 CA (예 : CA1 및 CA2)에 직접 종속 된 CA에는 루트 CA가 서명 한 CA 인증서가 있습니다.
계층의 하위 CA (예 : CA5 및 CA6) 아래에있는 CA에는 상위 수준의 하위 CA에서 서명 한 CA 인증서가 있습니다.
CA (인증 기관) 계층은 인증서 체인에 반영됩니다. 인증서 체인은 계층의 분기에서 계층의 루트까지 인증서 경로를 추적합니다.
다음 그림은 엔티티 인증서에서 두 개의 하위 CA 인증서 (CA6 및 CA3)를 통해 루트 CA의 CA 인증서로 이어지는 인증서 체인이있는 CA 계층 구조를 보여줍니다.
인증서 체인 확인은 특정 인증서 체인이 유효하고 올바르게 서명되었으며 신뢰할 수 있는지 확인하는 프로세스입니다. 다음 절차는 인증을 위해 제시된 인증서로 시작하여 인증서 체인을 확인합니다.
신뢰성이 확인되는 클라이언트는 일반적으로 루트 CA까지 인증서 체인과 함께 자신의 인증서를 제공합니다.
Verifier는 인증서를 가져와 발급자의 공개 키를 사용하여 유효성을 검사합니다. 발급자의 공개 키는 클라이언트 인증서 옆의 체인에있는 발급자의 인증서에서 찾을 수 있습니다.
이제 발급자의 인증서에 서명 한 상위 CA가 검증 자에 의해 신뢰되면 검증이 성공하고 여기서 중지됩니다.
그렇지 않으면 발급자의 인증서는 위 단계에서 클라이언트에 대해 수행 한 것과 유사한 방식으로 확인됩니다. 이 프로세스는 신뢰할 수있는 CA가 중간에 있거나 루트 CA까지 계속 될 때까지 계속됩니다.