GetAlgorithmOid 메서드는 알고리즘 OID(개체 식별자)를 검색합니다. 이 메서드는 웹을 사용할 수 있습니다.
문법
HRESULT GetAlgorithmOid(
[in] LONG Length,
[in] AlgorithmFlags AlgFlags,
[out] IObjectId **ppValue
);
매개 변수
[in] Length
대칭 암호화 알고리즘의 필수 키 크기를 식별하는 LONG 변수입니다. 이 매개 변수를 사용하여 암호화 API: CNG(차세대) KSP(키 스토리지 공급자)에서 특정 AES 알고리즘을 검색합니다. KSP는 AES라는 알고리즘을 하나만 나열할 수 있지만 다음 목록의 모든 AES 변형을 지원할 수 있습니다.
- szOID_NIST_AES128_CBC(2.16.840.1.101.3.4.1.2)
- szOID_NIST_AES192_CBC(2.16.840.1.101.3.4.1.22)
- szOID_NIST_AES256_CBC(2.16.840.1.101.3.4.1.42)
- szOID_NIST_AES128_WRAP(2.16.840.1.101.3.4.1.5)
- szOID_NIST_AES192_WRAP(2.16.840.1.101.3.4.1.25)
- szOID_NIST_AES256_WRAP(2.16.840.1.101.3.4.1.45)
Length 매개 변수에 대해 0을 지정하고 AlgFlags 매개 변수에 0x00000000(AlgorithmFlagsNone)를 지정하면 기본 알고리즘과 연결된 OID가 검색됩니다. Microsoft 소프트웨어 KSP 및 Microsoft 스마트 카드 KSP의 경우 기본 AES 알고리즘은 szOID_NIST_AES128_CBC(2.16.840.1.101.3.4.1.2)입니다.
[in] AlgFlags
키 래핑 알고리즘을 검색할지 여부를 지정하는 AlgorithmFlags 열거형 값입니다. 다음 값 중 하나일 수 있습니다.
- AlgorithmFlagsNone
- AlgorithmFlagsWrap
AlgorithmFlagsWrap을 지정하면 이 메서드는 표시 이름이 "wrap"으로 끝나는 알고리즘을 검색합니다. 여기에는 다음 OID가 포함됩니다.
- szOID_NIST_AES128_WRAP(2.16.840.1.101.3.4.1.5)
- szOID_NIST_AES192_WRAP(2.16.840.1.101.3.4.1.25)
- szOID_NIST_AES256_WRAP(2.16.840.1.101.3.4.1.45)
- XCN_OID_RSA_SMIMEalgCMS3DESwrap(1.2.840.113549.1.9.16.3.6)
- XCN_OID_RSA_SMIMEalgCMSRC2wrap(1.2.840.113549.1.9.16.3.7)
Length 매개 변수에 대해 0을 지정하고 AlgFlags 매개 변수에 0x00000000(AlgorithmFlagsNone)를 지정하면 기본 알고리즘과 연결된 OID가 검색됩니다. Microsoft 소프트웨어 KSP 및 Microsoft 스마트 카드 KSP의 경우 기본 AES 알고리즘은 szOID_NIST_AES128_CBC(2.16.840.1.101.3.4.1.2)입니다.
[out] ppValue
알고리즘 OID를 나타내는 IObjectId 인터페이스에 대한 포인터를 받는 변수의 주소입니다.
반환 값
함수가 성공하면 함수는 S_OK 반환합니다.
함수가 실패하면 오류를 나타내는 HRESULT 값을 반환합니다. 가능한 값은 다음 표에 있는 값을 포함하지만 제한되지는 않습니다. 일반적인 오류 코드 목록은 Common HRESULT 값을 참조하세요.
| 반환 코드/값 | Description |
|---|---|
|
알고리즘 OID를 찾을 수 없습니다. |
|
CSP 정보가 초기화되지 않았습니다. 자세한 내용은 ICspInformation 인터페이스를 참조하세요. |
비고
GetAlgorithmOid를 호출하기 전에 ICspInformation 인터페이스에서 InitializeFromName 메서드 또는 InitializeFromType 메서드를 호출해야 합니다.
요구 사항
| 요구 사항 | 가치 |
|---|---|
| 지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
| 지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
| 대상 플랫폼 | 윈도우즈 |
| Header | certenroll.h |
| DLL | CertEnroll.dll |