Sdílet prostřednictvím


StrongNameGetPublicKeyEx – metoda

Získá veřejný klíč z páru veřejného a privátního klíče a určuje algoritmus hash a algoritmus podpisu.

Syntaxe

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
[v] Název kontejneru klíčů, který obsahuje pár veřejného a privátního klíče. Pokud pbKeyBlob je hodnota null, szKeyContainer musí zadat platný kontejner v rámci poskytovatele kryptografických služeb (CSP). V tomto případě StrongNameGetPublicKeyEx metoda extrahuje veřejný klíč z páru klíčů uloženého v kontejneru.

Pokud pbKeyBlob není null, předpokládá se, že pár klíčů je obsažen v binárním velkém objektu (BLOB).

Klíče musí být 1024bitové podpisové klíče Rivest-Shamir-Adleman (RSA). V tuto chvíli nejsou podporovány žádné jiné typy klíčů.

pbKeyBlob
[v] Ukazatel na pár veřejného a privátního klíče. Tato dvojice je ve formátu vytvořeném funkcí Win32 CryptExportKey . Pokud pbKeyBlob je hodnota null, předpokládá se, že kontejner klíčů určený parametrem szKeyContainer obsahuje dvojici klíčů.

cbKeyBlob
[v] Velikost v bajtech pbKeyBlob.

ppbPublicKeyBlob
[out] Vrácený objekt BLOB veřejného klíče. Parametr ppbPublicKeyBlob je přidělen modulem ClR (Common Language Runtime) a vrácen volajícímu. Volající musí uvolnit paměť pomocí metody ICLRStrongName::StrongNameFreeBuffer .

pcbPublicKeyBlob
[out] Velikost vráceného objektu BLOB veřejného klíče.

uHashAlgId
[v] Algoritmus hash sestavení. Seznam přijatých hodnot najdete v části Poznámky.

uReserved
[v] Vyhrazeno pro budoucí použití; výchozí hodnota je null.

Návratová hodnota

S_OK pokud se metoda úspěšně dokončila; v opačném případě hodnota HRESULT, která označuje selhání (viz Běžné hodnoty HRESULT pro seznam).

Poznámky

Veřejný klíč je obsažen ve struktuře PublicKeyBlob .

Následující tabulka ukazuje sadu přijatých hodnot pro uHashAlgId parametr.

Name Hodnota
Žádné 0
SHA-1 0x8004
SHA-256 0x800c
SHA-384 0x800d
SHA-512 0x800e

Požadavky

Platformy: Viz Požadavky na systém.

Záhlaví: MetaHost.h

Knihovny: Zahrnuto jako prostředek v MSCorEE.dll

Verze rozhraní .NET Framework: K dispozici od verze 4.5

Viz také