다음을 통해 공유


XPS 디지털 서명 API 사용

이 항목에서는 XPS 디지털 서명 API를 사용하여 XPS 문서에 디지털 서명을 추가하기 위한 고려 사항을 나열합니다.

XPS 디지털 서명 API를 사용하면 애플리케이션이 사용자에게 XPS 문서에 서명하고 XPS 문서에 있는 서명을 확인하도록 요청할 수 있습니다. XPS 디지털 서명 API는 XPS OM에 로드하지 않고 XPS 문서에 적용할 수 있으며 XPS OM에서 직렬화된 XPS 문서 스트림에서 사용할 수 있습니다.

XPS 디지털 서명 API 프로그래밍 작업 섹션에는 XPS 디지털 서명 API를 사용하여 프로그래밍하는 방법을 설명하는 항목이 포함되어 있습니다. 이 항목에서는 애플리케이션에 디지털 서명 지원을 추가할 때 XPS 디지털 서명 API를 사용하기 위한 다음 고려 사항을 나열합니다.

XPS 디지털 서명 API 프로그래밍 작업

이 섹션에는 XPS 디지털 서명 API를 사용하여 프로그래밍 작업을 수행하는 방법을 설명하는 항목이 포함되어 있습니다.

서명 관리자 초기화
문서 서명
XPS 문서에 서명 요청 추가
문서 서명 확인

파일에서 인증서 로드
인증서가 서명 메서드를 지원하는지 확인
시스템이 다이제스트 메서드를 지원하는지 확인
문서에 인증서 체인 포함

XPS 디지털 서명 API 프로그래밍에 대한 특별 참고 사항

다음 항목에서는 XPS 디지털 서명 API를 사용할 때 몇 가지 특별한 고려 사항이 필요합니다.

XPS 문서에서 디지털 서명 확인

IXpsSignature::서명된 콘텐츠만 검사 서명된 이후 변경되지 않은지 확인합니다. IXpsSignature::Verify 는 문서 내용에 서명하는 데 사용된 인증서를 확인하지 않습니다.

인증서 및 암호화에 대한 자세한 내용은 암호화 정보를 참조 하세요.

프로그램에서 문서 서명을 확인하는 방법의 예는 문서 서명 및 인증서 확인을 참조 하세요.

디지털 서명 서명 정책

디지털 서명 서명 정책은 XPS 문서의 서명 부분을 결정합니다. 서명 정책 옵션 중 하나는 서명 원본 부분에서 시작하는 서명 관계에 서명하는 것입니다. 서명 관계가 추가된 각 서명에 따라 변경되므로 이 정책에서 만든 서명은 새 서명이 추가될 때 중단됩니다. 이 정책 설정의 의미와 효과를 명확하게 이해해야 합니다. 그렇지 않으면 예기치 않거나 원치 않는 동작이 발생할 수 있습니다.

서명 정책에 대한 자세한 내용은 XPS_SIGN_POLICY 참조하세요.

인증서 체인 포함

특정 인증서의 신뢰 체인을 구성하는 인증서를 XPS 문서에 추가할 수 있습니다. 이러한 인증서를 포함하면 오프라인 시나리오에서 애플리케이션이 디지털 서명에서 사용하는 인증서를 보다 쉽게 확인할 수 있습니다.

XPS 문서에 인증서를 포함하는 방법에 대한 자세한 내용은 문서에 인증서 체인 포함을 참조 하세요.

CERT_CONTEXT 구조체 사용

CERT_CONTEXT CERT_INFO 구조는 인증서 정보를 포함하는 기본 데이터 구조입니다. 이러한 구조를 사용하는 방법에 대한 자세한 내용은 CERT_INFO 데이터 구조 사용을 참조 하세요.

Crypto API 함수에서 반환되는 CERT_CONTEXT 구조체는 더 이상 필요하지 않은 경우 해제해야 합니다. CERT_CONTEXT 구조를 해제하려면 CertFreeCertificateContext 함수를 호출합니다.

일반적인 디지털 서명 프로그래밍 작업

추가 디지털 서명 프로그래밍 작업

CERT_CONTEXT

CERT_INFO

CertFreeCertificateContext

XPS_SIGN_POLICY

XML Paper Specification