ICLRStrongName::StrongNameGetPublicKey — Metoda
Pobiera klucz publiczny z pary kluczy publicznych/prywatnych. Parę kluczy można podać jako nazwę kontenera kluczy w ramach dostawcy usług kryptograficznych (CSP) lub jako nieprzetworzoną kolekcję bajtów.
Składnia
HRESULT StrongNameGetPublicKey (
[in] LPCWSTR szKeyContainer,
[in] BYTE *pbKeyBlob,
[in] ULONG cbKeyBlob,
[out] BYTE **ppbPublicKeyBlob,
[out] ULONG *pcbPublicKeyBlob
);
Parametry
szKeyContainer
[in] Nazwa kontenera kluczy, który zawiera parę kluczy publicznych/prywatnych. Jeśli pbKeyBlob
parametr ma wartość null, szKeyContainer
należy określić prawidłowy kontener w programie CSP. W tym przypadku metoda ICLRStrongName::StrongNameGetPublicKey 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.
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 .
Wymagania
Platformy: Zobacz Wymagania systemowe.
Nagłówka: MetaHost.h
Biblioteki: Uwzględnione jako zasób w MSCorEE.dll
wersje .NET Framework: dostępne od 4