Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Ottiene la chiave pubblica da una coppia di chiavi pubblica/privata e specifica un algoritmo hash e un algoritmo di firma.
Sintassi
HRESULT StrongNameGetPublicKey (
[in] LPCWSTR pwzKeyContainer,
[in] BYTE *pbKeyBlob,
[in] ULONG cbKeyBlob,
[out] BYTE **ppbPublicKeyBlob,
[out] ULONG *pcbPublicKeyBlob
[in] ULONG uHashAlgId,
[in] ULONG uReserved,
);
Parametri
pwzKeyContainer
[in] Nome del contenitore della chiave contenente la coppia di chiavi pubblica/privata. Se pbKeyBlob è Null, szKeyContainer deve specificare un contenitore valido all'interno del provider di servizi di crittografia . In questo caso, il StrongNameGetPublicKeyEx metodo estrae la chiave pubblica dalla coppia di chiavi archiviata nel contenitore.
Se pbKeyBlob non è Null, si presuppone che la coppia di chiavi sia contenuta nell'oggetto BLOB (Key Binary Large Object).
Le chiavi devono essere chiavi di firma rivest-Shamir-Adleman (RSA) a 1024 bit. Nessun altro tipo di chiavi è supportato in questo momento.
pbKeyBlob
[in] Puntatore alla coppia di chiavi pubblica/privata. Questa coppia è nel formato creato dalla funzione Win32 CryptExportKey . Se pbKeyBlob è Null, si presuppone che il contenitore della chiave specificato da szKeyContainer contenga la coppia di chiavi.
cbKeyBlob
[in] Dimensioni, in byte, di pbKeyBlob.
ppbPublicKeyBlob
[out] BLOB della chiave pubblica restituita. Il ppbPublicKeyBlob parametro viene allocato dal common language runtime e restituito al chiamante. Il chiamante deve liberare la memoria usando il metodo ICLRStrongName::StrongNameFreeBuffer .
pcbPublicKeyBlob
[out] Dimensioni del BLOB della chiave pubblica restituita.
uHashAlgId
[in] Algoritmo hash dell'assembly. Vedere la sezione Osservazioni per un elenco di valori accettati.
uReserved
[in] Riservato per l'uso futuro; impostazione predefinita su Null.
Valore restituito
S_OK se il metodo è stato completato correttamente; in caso contrario, un valore HRESULT che indica l'errore (vedere Valori HRESULT comuni per un elenco).
Commenti
La chiave pubblica è contenuta in una struttura PublicKeyBlob .
Nella tabella seguente viene illustrato il set di valori accettati per il uHashAlgId parametro.
| Nome | Valore |
|---|---|
| nessuno | 0 |
| SHA-1 | 0x8004 |
| SHA-256 | 0x800c |
| SHA-384 | 0x800d |
| SHA-512 | 0x800e |
Requisiti
Piattaforme: vedere Requisiti di sistema di .NET Framework.
Intestazione: MetaHost.h
Libreria: Incluso come risorsa in MSCorEE.dll
Versioni di .NET Framework: Disponibile dalla versione 4.5