Share via


ICertPropertyRenewal::InitializeFromCertificateHash 메서드(certenroll.h)

InitializeFromCertificateHash 메서드는 새 인증서에서 개체를 초기화합니다.

구문

HRESULT InitializeFromCertificateHash(
  [in] VARIANT_BOOL MachineContext,
  [in] EncodingType Encoding,
  [in] BSTR         strCertificate
);

매개 변수

[in] MachineContext

인증서 저장소가 로컬 컴퓨터 또는 현재 사용자용인지 여부를 나타내는 VARIANT_BOOL 값입니다. 컴퓨터에 대한 VARIANT_TRUE 지정하고 사용자에 대한 VARIANT_FALSE 지정합니다.

[in] Encoding

DER로 인코딩된 인증서를 포함하는 입력 문자열에 적용된 유니코드 인코딩의 형식을 지정하는 EncodingType 열거형 값입니다.

[in] strCertificate

DER로 인코딩된 인증서를 포함하는 BSTR 변수입니다.

Windows 7 및 Windows Server 2008 R2부터는 인코딩된 인증서 대신 인증서 지문 또는 일련 번호를 지정할 수 있습니다. 이렇게 하면 함수가 일치하는 인증서에 대한 적절한 로컬 저장소를 검색합니다. 다음 사항을 주의하세요.

  • BSTR은 짝수의 16진수여야 합니다.
  • 16진수 쌍 간의 공백은 무시됩니다.
  • 인코딩 매개 변수는 XCN_CRYPT_STRING_HEXRAW 설정해야 합니다.
  • MachineContext 매개 변수는 사용자 또는 컴퓨터 저장소 또는 둘 다를 검색할지 여부를 결정합니다.
  • 프라이빗 키가 필요한 경우 개인 및 요청 저장소만 검색됩니다.
  • 프라이빗 키가 필요하지 않은 경우 루트 및 중간 CA 저장소도 검색됩니다.

반환 값

함수가 성공하면 함수는 S_OK 반환합니다.

함수가 실패하면 오류를 나타내는 HRESULT 값을 반환합니다. 가능한 값에는 다음 표에 있는 값이 포함되지만, 이에 국한되는 것은 아닙니다. 일반적인 오류 코드 목록은 일반적인 HRESULT 값을 참조하세요.

반환 코드/값 설명
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
개체가 이미 초기화되어 있습니다.

설명

이 메서드는 지정된 인증서를 사용하여 SHA-1 해시를 만듭니다. 인증서는 ASN.1(추상 구문 표기법 1) 표준에 정의된 대로 DER(Distinguished Encoding Rules)를 사용하여 인코딩해야 합니다. DER로 인코딩된 인증서를 포함하는 문자열에 적용되는 유니코드 인코딩 형식도 지정해야 합니다.

일반적으로 ICertPropertyRenewal 개체는 등록 프로세스 중에 초기화됩니다. IX509Enrollment 인터페이스에서 Certificate 속성을 호출하여 등록 중에 사용되는 인증서를 검색할 수 있습니다.

SetValueOnCertificate 메서드를 호출하여 속성을 인증서와 연결합니다. Renewal 속성을 호출하여 해시를 검색합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 certenroll.h
DLL CertEnroll.dll

추가 정보

ICertPropertyRenewal