IX509CertificateRequest::Encode 메서드(certenroll.h)
인코딩 메서드는 인증서 요청을 서명하고 인코딩하고 키 쌍이 없으면 만듭니다. 요청은 ASN.1(추상 구문 표기법 1) 표준에 정의된 대로 DER(Distinguished Encoding Rules)를 사용하여 인코딩됩니다. 인코딩 프로세스는 바이트 배열을 만듭니다. RawData 속성을 호출하여 바이트 배열을 검색할 수 있습니다.
구문
HRESULT Encode();
반환 값
함수가 성공하면 함수는 S_OK 반환합니다.
함수가 실패하면 오류를 나타내는 HRESULT 값을 반환합니다. 가능한 값에는 다음 표에 있는 값이 포함되지만, 이에 국한되는 것은 아닙니다. 일반적인 오류 코드 목록은 일반적인 HRESULT 값을 참조하세요.
반환 코드/값 | 설명 |
---|---|
|
CMC 요청에 대해 ArchivePrivateKey 속성이 설정되었지만 키 교환 인증서를 찾을 수 없습니다. |
|
개체가 초기화되지 않았습니다. |
설명
PKCS #10 요청의 경우 이 메서드는 다음과 같습니다.
- 프라이빗 키를 업데이트 필요한 경우 키를 만듭니다.
- 프라이빗 키에서 공개 키를 채웁니다.
- 확장을 업데이트 기본 확장을 추가하고 표시되지 않는 OID 컬렉션 및 중요한 확장 OID 컬렉션을 고려합니다.
- 특성을 업데이트 기본 특성을 추가하고 표시되지 않는 OID 컬렉션을 고려합니다.
- 서명되지 않은 업데이트된 요청을 어셈블하고 인코딩합니다.
- 서명을 만들고 인코딩합니다.
- 서명 및 서명되지 않은 요청을 인코딩합니다.
CMC 요청의 경우 이 메서드는 다음과 같습니다.
- 모든 내부 요청 개체를 인코딩합니다.
- 외부 요청 개체에 대한 확장을 업데이트 기본 확장을 추가하고 표시되지 않는 OID 컬렉션 및 중요한 확장 OID 컬렉션을 고려합니다.
- 외부 요청 개체의 특성을 업데이트 기본 특성을 추가하고 표시되지 않는 OID 컬렉션을 고려합니다.
- 이름-값 쌍 컬렉션을 업데이트.
- 인코딩된 내부 요청 및 업데이트된 외부 요청으로 구성된 CMC 콘텐츠를 인코딩합니다.
- 각 서명 인증서에 대한 서명을 만들고 인코딩합니다.
- 기본 서명을 만들고 인코딩합니다.
- 인코딩된 CMC 콘텐츠(내부 요청 및 업데이트된 외부 요청 포함) 및 인코딩된 서명을 어셈블합니다.
- 어셈블리된 콘텐츠를 PKCS #7 메시지로 인코딩합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | certenroll.h |
DLL | CertEnroll.dll |