Metodo IObjectId::GetAlgorithmName (certenroll.h)

Il metodo GetAlgorithmName recupera il nome visualizzato associato a un identificatore di oggetto algoritmo (OID).

Sintassi

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

Parametri

[in] GroupId

Valore di enumerazione ObjectIdGroupId che specifica il gruppo OID da cercare. Questo può essere uno dei gruppi di algoritmi seguenti:

  • 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
È anche possibile specificare i gruppi che non contengono algoritmi crittografici:
  • 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

Valore di enumerazione ObjectIdPublicKeyFlags che specifica se cercare una firma o un algoritmo di crittografia. I valori possibili sono i seguenti:

  • XCN_CRYPT_OID_INFO_PUBKEY_ANY
  • XCN_CRYPT_OID_INFO_PUBKEY_SIGN_KEY_FLAG
  • XCN_CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG
È possibile usare uno degli ultimi due valori per disambiguare tra gli algoritmi, ad esempio RSA, che possono essere usati per crittografare e firmare i messaggi. È anche necessario specificare XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID nel parametro GroupId . Specificare XCN_CRYPT_OID_INFO_PUBKEY_ANY se si imposta il parametro GroupId su qualsiasi elemento diverso da XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID.

[out] pstrAlgorithmName

Puntatore a una variabile BSTR contenente il nome.

Valore restituito

Se la funzione ha esito positivo, la funzione restituisce S_OK.

Se la funzione ha esito negativo, restituisce un valore HRESULT che indica l'errore. I valori possibili includono, ma non sono limitati a, quelli indicati nella tabella seguente. Per un elenco di codici di errore comuni, vedere Valori HRESULT comuni.

Codice/valore restituito Descrizione
CERTSRV_E_PROPERTY_EMPTY
La stringa contenente il nome dell'algoritmo è vuota.
OLE_E_BLANK
Impossibile trovare il nome dell'algoritmo. Prima di chiamare GetAlgorithmName, è necessario chiamare InitializeFromAlgorithmName.

Commenti

È possibile usare la costante XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID per creare un valore di parametro GroupId che tiene conto delle dimensioni della chiave per gli algoritmi che possono essere identificati da una lunghezza di bit variabile. Ad esempio, per inizializzare un oggetto IObjectId da un algoritmo AES a 192 bit, specificare "AES" per il parametro strAlgorithmName , spostare la lunghezza sinistra da 16 ed eseguire una combinazione bit per bit or sulla lunghezza del bit spostata e XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID.

Se si imposta il parametro GroupId su qualsiasi elemento diverso da XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID, specificare XCN_CRYPT_OID_INFO_PUBKEY_ANY per il parametro KeyFlags .

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione certenroll.h
DLL CertEnroll.dll

Vedi anche

IObjectId