다음을 통해 공유


IObjectId::InitializeFromAlgorithmName 메서드(certenroll.h)

InitializeFromAlgorithmName 메서드는 알고리즘 이름 또는 개체 식별자에서 개체를 초기화합니다. 이 메서드는 주로 Cryptography API: 차세대(CNG) 알고리즘 이름에서 개체를 초기화할 수 있도록 하기 위해 제공되었습니다. 그러나 OID 이름을 지정할 수 있습니다. 이 메서드는 웹을 사용할 수 있습니다.

문법

HRESULT InitializeFromAlgorithmName(
  [in] ObjectIdGroupId        GroupId,
  [in] ObjectIdPublicKeyFlags KeyFlags,
  [in] AlgorithmFlags         AlgFlags,
  [in] BSTR                   strAlgorithmName
);

매개 변수

[in] GroupId

검색할 OID 그룹을 지정하는 ObjectIdGroupId 열거형 값입니다. 다음 알고리즘 그룹 중 어느 것이든 될 수 있습니다.

  • XCN_CRYPT_HASH_ALG_OID_GROUP_ID
  • XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID
  • XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID
  • XCN_CRYPT_SIGN_ALG_OID_GROUP_ID
또한 암호화 알고리즘을 포함하지 않는 그룹을 지정할 수도 있습니다.
  • XCN_CRYPT_RDN_ATTR_OID_GROUP_ID
  • XCN_CRYPT_EXT_OR_ATTR_OID_GROUP_ID
  • XCN_CRYPT_ENHKEY_USAGE_OID_GROUP_ID
  • XCN_CRYPT_POLICY_OID_GROUP_ID
  • XCN_CRYPT_TEMPLATE_OID_GROUP_ID

[in] KeyFlags

서명 또는 암호화 알고리즘을 검색할지 여부를 지정하는 ObjectIdPublicKeyFlags 열거형 값입니다. 다음 값 중 하나일 수 있습니다.

  • XCN_CRYPT_OID_INFO_PUBKEY_SIGN_KEY_FLAG
  • XCN_CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG
두 값 중 하나를 사용하여 메시지를 암호화하고 서명하는 데 사용할 수 있는 RSA와 같은 알고리즘을 명확하게 구분할 수 있습니다. GroupId 매개 변수에 XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID 지정해야 합니다.

[in] AlgFlags

AlgorithmFlags 열거형 값입니다. 다음 값 중 하나일 수 있습니다.

  • AlgorithmFlagsNone
  • AlgorithmFlagsWrap
GroupId 매개 변수에 대한 XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID 지정하는 경우 AlgorithmFlags 열거형을 사용하여 키를 래핑하는 데 사용할 수 있는 OID를 검색할 수 있습니다. 예를 들어 128의 비트 길이를 지정하고(주의 섹션 참조) strAlgorithmName 매개 변수를 AES로 설정하고 AlgorithmFlagsWrap을 지정하는 경우 AES128wrap 알고리즘에 대한 정보를 검색할 수 있습니다.

[in] strAlgorithmName

이름을 포함하는 BSTR 변수입니다. 이름 또는 OID를 점선 10진수 형식으로 지정할 수 있습니다. 이 메서드는 형식이 ASN.1 X.208 표준과 일치하는지 확인합니다. CNG 알고리즘 이름에 대한 자세한 내용은 CNG 알고리즘 식별자를 참조하세요.

반환 값

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

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

반환 코드/값 Description
CERTSRV_E_PROPERTY_EMPTY
OID 정보를 찾을 수 없습니다.
CRYPT_E_UNKNOWN_ALGO
알고리즘 이름이 인식되지 않습니다.
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
개체가 이미 초기화되어 있습니다.

비고

GroupId 매개 변수의 상위 16비트를 사용하여 가변 비트 길이를 허용하는 알고리즘의 키 크기를 지정할 수 있습니다. 예를 들어 192비트 AES 알고리즘에서 IObjectId 개체를 초기화하려면 strAlgorithmName 매개 변수에 "AES"를 지정하고, 왼쪽으로 길이를 16으로 이동하고, 이동된 비트 길이 및 GroupId 값에 비트 OR 조합을 수행합니다.

요구 사항

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

참고하십시오

IObjectId