Udostępnij za pośrednictwem


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

Zobacz też