Freigeben über


IObjectId::GetAlgorithmName-Methode (certenroll.h)

Die GetAlgorithmName-Methode ruft den Anzeigenamen ab, der einem Algorithmusobjektbezeichner (OID) zugeordnet ist.

Syntax

HRESULT GetAlgorithmName(
  [in]  ObjectIdGroupId        GroupId,
  [in]  ObjectIdPublicKeyFlags KeyFlags,
  [out] BSTR                   *pstrAlgorithmName
);

Die Parameter

[in] GroupId

Ein ObjectIdGroupId-Enumerationswert , der die zu durchsuchende OID-Gruppe angibt. Dies kann eine der folgenden Algorithmusgruppen sein:

  • 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
Darüber hinaus können Sie auch Gruppen angeben, die keine kryptografischen Algorithmen enthalten:
  • 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

Ein ObjectIdPublicKeyFlags-Enumerationswert , der angibt, ob nach einer Signatur oder einem Verschlüsselungsalgorithmus gesucht werden soll. Dies kann einer der folgenden Werte sein:

  • XCN_CRYPT_OID_INFO_PUBKEY_ANY
  • XCN_CRYPT_OID_INFO_PUBKEY_SIGN_KEY_FLAG
  • XCN_CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG
Sie können einen der beiden letzten Werte verwenden, um zwischen Algorithmen wie RSA zu unterscheiden, die zum Verschlüsseln und Signieren von Nachrichten verwendet werden können. Sie müssen auch XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID im Parameter "GroupId " angeben. Geben Sie XCN_CRYPT_OID_INFO_PUBKEY_ANY an, wenn Sie den Parameter "GroupId " auf einen anderen Parameter als XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID festlegen.

[out] pstrAlgorithmName

Zeiger auf eine BSTR-Variable , die den Namen enthält.

Rückgabewert

Wenn die Funktion erfolgreich ist, gibt die Funktion S_OK zurück.

Wenn die Funktion fehlschlägt, wird ein HRESULT-Wert zurückgegeben, der den Fehler angibt. Mögliche Werte sind die Werte in der folgenden Tabelle, sind jedoch nicht beschränkt. Eine Liste allgemeiner Fehlercodes finden Sie unter "Allgemeine HRESULT-Werte".

Zurückgeben von Code/Wert Description
CERTSRV_E_PROPERTY_EMPTY
Die Zeichenfolge, die den Algorithmusnamen enthält, ist leer.
OLE_E_BLANK
Der Algorithmusname konnte nicht gefunden werden. Sie müssen InitializeFromAlgorithmName aufrufen, bevor Sie GetAlgorithmName aufrufen.

Bemerkungen

Sie können die XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID Konstante verwenden, um einen GroupId-Parameterwert zu erstellen, der die Schlüsselgröße für Algorithmen berücksichtigt, die durch eine variable Bitlänge identifiziert werden können. Um z. B. ein IObjectId-Objekt aus einem AES-Algorithmus der 192-Bit-Version zu initialisieren, geben Sie "AES" für den Parameter "strAlgorithmName " an, verschieben Sie die Länge um 16, und führen Sie eine bitweise OR-Kombination für die verschobene Bitlänge und XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID aus.

Wenn Sie den Parameter GroupId auf einen anderen Parameter als XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID festlegen, geben Sie XCN_CRYPT_OID_INFO_PUBKEY_ANY für den KeyFlags-Parameter an.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows Vista [nur Desktop-Apps]
Mindestanforderungen für unterstützte Server Windows Server 2008 [Nur Desktop-Apps]
Zielplattform Fenster
Header certenroll.h
DLL CertEnroll.dll

Siehe auch

IObjectId