StrongNameGetPublicKeyEx — Metoda
Pobiera klucz publiczny z pary kluczy publicznych/prywatnych i określa algorytm wyznaczania wartości skrótu i algorytmu podpisu.
Składnia
HRESULT StrongNameGetPublicKey (
[in] LPCWSTR pwzKeyContainer,
[in] BYTE *pbKeyBlob,
[in] ULONG cbKeyBlob,
[out] BYTE **ppbPublicKeyBlob,
[out] ULONG *pcbPublicKeyBlob
[in] ULONG uHashAlgId,
[in] ULONG uReserved,
);
Parametry
pwzKeyContainer
[in] Nazwa kontenera kluczy, który zawiera parę kluczy publicznych/prywatnych. Jeśli pbKeyBlob
ma wartość null, szKeyContainer
należy określić prawidłowy kontener w ramach dostawcy usług kryptograficznych (CSP). W takim przypadku StrongNameGetPublicKeyEx
metoda wyodrębnia klucz publiczny z pary kluczy przechowywanej w kontenerze.
Jeśli pbKeyBlob
nie ma wartości null, przyjmuje się, że para kluczy jest zawarta w kluczu binarnym dużego obiektu (BLOB).
Klucze muszą mieć 1024-bitowe klucze podpisywania Rivest-Shamir-Adleman (RSA). Obecnie nie są obsługiwane żadne inne typy kluczy.
pbKeyBlob
[in] Wskaźnik do pary kluczy publicznych/prywatnych. Ta para jest w formacie utworzonym przez funkcję Win32 CryptExportKey
. Jeśli pbKeyBlob
parametr ma wartość null, zakłada się, że kontener kluczy określony przez szKeyContainer
program zawiera parę kluczy.
cbKeyBlob
[in] Rozmiar w bajtach o wartości pbKeyBlob
.
ppbPublicKeyBlob
[out] Zwrócony obiekt BLOB klucza publicznego. Parametr ppbPublicKeyBlob
jest przydzielany przez środowisko uruchomieniowe języka wspólnego i zwracany do elementu wywołującego. Obiekt wywołujący musi zwolnić pamięć przy użyciu metody ICLRStrongName::StrongNameFreeBuffer .
pcbPublicKeyBlob
[out] Rozmiar zwracanego klucza publicznego BLOB.
uHashAlgId
[in] Algorytm skrótu zestawu. Zobacz sekcję Uwagi, aby uzyskać listę akceptowanych wartości.
uReserved
[in] Zarezerwowane do użytku w przyszłości; wartość domyślna to null.
Wartość zwracana
S_OK
jeśli metoda została ukończona pomyślnie; w przeciwnym razie wartość HRESULT wskazująca błąd (zobacz Typowe wartości HRESULT dla listy).
Uwagi
Klucz publiczny jest zawarty w strukturze PublicKeyBlob .
W poniższej tabeli przedstawiono zestaw akceptowanych wartości dla parametru uHashAlgId
.
Nazwa | Wartość |
---|---|
Brak | 0 |
SHA-1 | 0x8004 |
SHA-256 | 0x800c |
SHA-384 | 0x800d |
SHA-512 | 0x800e |
Wymagania
Platformy: Zobacz Wymagania systemowe.
Nagłówka: MetaHost.h
Biblioteki: Uwzględnione jako zasób w MSCorEE.dll
wersje .NET Framework: dostępne od wersji 4.5