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