Metodo IX509ExtensionSubjectKeyIdentifier::InitializeEncode (certenroll.h)

Il metodo InitializeEncode inizializza l'estensione da una matrice di byte che contiene l'identificatore della chiave. La matrice di byte è rappresentata da una stringa con codifica Unicode.

Sintassi

HRESULT InitializeEncode(
  [in] EncodingType Encoding,
  [in] BSTR         strKeyIdentifier
);

Parametri

[in] Encoding

Valore di enumerazione EncodingType che specifica il tipo di codifica Unicode applicato al parametro strKeyIdentifier .

[in] strKeyIdentifier

Variabile BSTR che contiene l'identificatore della chiave.

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
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
L'oggetto è già inizializzato.

Commenti

In genere, il valore di input deve essere un hash SHA-1 della chiave pubblica contenuta nel certificato di firma dell'autorità di certificazione. Il metodo associa il valore all'identificatore dell'oggetto (OID) XCN_OID_SUBJECT_KEY_IDENTIFIER (2.5.29.14) e lo codifica usando Distinguished Encoding Rules (DER).

È necessario chiamare InitializeEncode o InitializeDecode prima di poter usare un oggetto IX509ExtensionSubjectKeyIdentifier. I due metodi si integrano tra loro. Il metodo InitializeEncode consente di costruire un oggetto di estensione ASN.1 con codifica DER per l'estensione Notation One (ASN.1) dai dati non elaborati e il metodo InitializeDecode consente di inizializzare i dati non elaborati da un oggetto codificato.

È possibile recuperare le proprietà seguenti per questa estensione:

  • La proprietà Critical identifica se l'estensione è critica. È anche possibile specificare questa proprietà.
  • La proprietà ObjectId recupera l'OID.
  • La proprietà AuthorityKeyIdentifier recupera i dati non elaborati.

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

IX509ExtensionSubjectKeyIdentifier