인증서 체인

보안을 위해 인증서를 사용하려면 받은 각 인증서의 신뢰성과 유효성을 확인해야 합니다. 이 확인은 신뢰 개념 및 신뢰 위임에 따라 달라집니다. 자세한 내용은 신뢰 계층 구조를 참조하세요.

모든 인증서에는 인증서가 발급된 개인 또는 그룹을 식별하는 주체 필드가 포함됩니다. 모든 인증서에는 주체의 ID를 인증할 수 있는 CA( 인증 기관 )를 식별하는 발급자 필드도 포함되어 있습니다.

인증서 체인은 최종 인증서로 식별된 주체를 인증하는 데 필요한 모든 인증서로 구성됩니다. 실제로 여기에는 최종 인증서, 중간 CA 인증서 및 체인의 모든 당사자가 신뢰하는 루트 CA의 인증서가 포함됩니다. 체인의 모든 중간 CA는 신뢰 계층 구조에서 CA에서 발급한 인증서를 한 수준 이상 보유합니다. 루트 CA는 자체 인증서를 발급합니다.

새로 받은 인증서의 신뢰성과 유효성을 확인하는 프로세스에는 최종 인증서라고 하는 방금 받은 인증서까지 모든 중간 CA를 통해 원래의 보편적으로 신뢰할 수 있는 CA의 인증서 체인에 있는 모든 인증서를 확인하는 과정이 포함됩니다. 새 인증서는 해당 인증서 체인의 각 인증서가 올바르게 발급되고 유효한 경우에만 신뢰할 수 있습니다.

새 최종 인증서를 백업하는 모든 인증서를 추적하는 것이 번거로울 수 있습니다. 따라서 CryptoAPI 2.0 기술은 지정된 최종 인증서를 백업하는 인증서 체인을 자동으로 만드는 기능을 제공합니다. 또한 이러한 함수는 체인에 있는 각 인증서의 유효성을 검사 보고합니다.

CryptoAPI 2.0의 체인 빌드 및 검사 함수는 체인 엔진을 사용하여 인증서 체인을 만들고 확인합니다. 체인 엔진은 인증서 체인 인프라에 대한 저장소 네임스페이스 및 캐시 분할을 정의합니다. CryptoAPI 2.0은 체인 빌드 및 캐싱에 기본 시스템 저장소(예: MY, Root, CA 및 Trust)만 사용하는 모든 애플리케이션 프로세스에 대한 기본 체인 엔진을 제공합니다. 애플리케이션은 자체 저장소 네임스페이스를 정의하거나 자체 체인 엔진을 만들어 자체 분할된 캐시를 가질 수 있습니다. 최적의 캐싱 동작을 달성하려면 애플리케이션 시작 시 단일 체인 엔진을 만들고 애플리케이션 수명 동안 해당 체인 엔진을 사용하는 것이 좋습니다.

함수 목록은 인증서 체인 확인 함수를 참조하세요. 인증서 체인을 빌드하고 인증서를 확인하는 프로그램은 예제 C 프로그램: 인증서 체인 만들기를 참조하세요.