Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ruft den öffentlichen Schlüssel aus einem Paar aus öffentlichem und privatem Schlüssel ab und gibt einen Hash- und einen Signaturalgorithmus an.
Syntax
HRESULT StrongNameGetPublicKey (
[in] LPCWSTR pwzKeyContainer,
[in] BYTE *pbKeyBlob,
[in] ULONG cbKeyBlob,
[out] BYTE **ppbPublicKeyBlob,
[out] ULONG *pcbPublicKeyBlob
[in] ULONG uHashAlgId,
[in] ULONG uReserved,
);
Parameter
pwzKeyContainer
[in] Der Name des Schlüsselcontainers, der das Paar aus öffentlichem und privatem Schlüssel enthält. Wenn pbKeyBlob NULL ist, muss szKeyContainer einen gültigen Container im Kryptografiedienstanbieter (Cryptographic Service Provider, CSP) angeben. In diesem Fall extrahiert die Methode StrongNameGetPublicKeyEx den öffentlichen Schlüssel aus dem im Container gespeicherten Schlüsselpaar.
Wenn pbKeyBlob nicht NULL ist, wird davon ausgegangen, dass das Schlüsselpaar im Schlüsselblob (Binary Large Object) enthalten ist.
Die Schlüssel müssen 1024-Bit-RSA-Signaturschlüssel (Rivest-Shamir-Adleman) sein. Derzeit werden keine anderen Schlüsseltypen unterstützt.
pbKeyBlob
[in] Ein Zeiger auf das Paar aus öffentlichem und privatem Schlüssel. Dieses Paar hat das Format, das von der Win32-Funktion CryptExportKey erstellt wurde. Wenn pbKeyBlob NULL ist, wird davon ausgegangen, dass der von szKeyContainer angegebene Schlüsselcontainer das Schlüsselpaar enthält.
cbKeyBlob
[in] Die Größe von pbKeyBlob in Byte.
ppbPublicKeyBlob
[out] Das zurückgegebene Blob mit dem öffentlichen Schlüssel. Der ppbPublicKeyBlob-Parameter wird von der Common Language Runtime zugeordnet und an den Aufrufer zurückgegeben. Der Aufrufer muss den Arbeitsspeicher mithilfe der ICLRStrongName::StrongNameFreeBuffer-Methode freigeben.
pcbPublicKeyBlob
[out] Die Größe des zurückgegebenen Blobs mit dem öffentlichen Schlüssel.
uHashAlgId
[in] Der Assemblyhashalgorithmus. Eine Liste der akzeptierten Werte finden Sie im Abschnitt „Hinweise“.
uReserved
[in] Reserviert für die zukünftige Nutzung; standardmäßig auf NULL festgelegt.
Rückgabewert
S_OK, wenn die Methode erfolgreich abgeschlossen wurde; andernfalls ein HRESULT-Wert, der einen Fehler angibt (eine Liste finden Sie unter Allgemeine HRESULT-Werte).
Bemerkungen
Der öffentliche Schlüssel ist in einer PublicKeyBlob-Struktur enthalten.
Die folgende Tabelle zeigt die zulässigen Werte für den Parameter uHashAlgId.
| Name | Wert |
|---|---|
| Keine | 0 |
| SHA-1 | 0x8004 |
| SHA-256 | 0x800c |
| SHA-384 | 0x800d |
| SHA-512 | 0x800e |
Anforderungen
Plattformen: Informationen finden Sie unter Systemanforderungen.
Header: MetaHost.h
Bibliothek: Als Ressource in „MsCorEE.dll“ enthalten.
.NET Framework-Versionen: seit Version 4.5 verfügbar