Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Obtém a chave pública de um par de chaves públicas/privadas e especifica um algoritmo hash e um algoritmo de assinatura.
Sintaxe
HRESULT StrongNameGetPublicKey (
[in] LPCWSTR pwzKeyContainer,
[in] BYTE *pbKeyBlob,
[in] ULONG cbKeyBlob,
[out] BYTE **ppbPublicKeyBlob,
[out] ULONG *pcbPublicKeyBlob
[in] ULONG uHashAlgId,
[in] ULONG uReserved,
);
Parâmetros
pwzKeyContainer
[in] O nome do contentor de chaves que contém o par de chaves públicas/privadas. Se pbKeyBlob for nulo, szKeyContainer tem de especificar um contentor válido no fornecedor de serviços criptográficos (CSP). Neste caso, o StrongNameGetPublicKeyEx método extrai a chave pública do par de chaves armazenado no contentor.
Se pbKeyBlob não for nulo, presume-se que o par de chaves está contido no objeto binário grande da chave (BLOB).
As chaves têm de ser chaves de assinatura Rivest-Shamir-Adleman (RSA) de 1024 bits. De momento, não são suportados outros tipos de chaves.
pbKeyBlob
[in] Um ponteiro para o par de chaves públicas/privadas. Este par está no formato criado pela função Win32 CryptExportKey . Se pbKeyBlob for nulo, assume-se que o contentor de chaves especificado por szKeyContainer contém o par de chaves.
cbKeyBlob
[in] O tamanho, em bytes, de pbKeyBlob.
ppbPublicKeyBlob
[fora] O BLOB de chave pública devolvido. O ppbPublicKeyBlob parâmetro é alocado pelo runtime de linguagem comum e devolvido ao autor da chamada. O autor da chamada tem de libertar a memória com o método ICLRStrongName::StrongNameFreeBuffer .
pcbPublicKeyBlob
[fora] O tamanho do BLOB da chave pública devolvida.
uHashAlgId
[in] O algoritmo hash de assemblagem. Consulte a secção Observações para obter uma lista de valores aceites.
uReserved
[in] Reservado para utilização futura; a predefinição é nula.
Devolver Valor
S_OK se o método tiver sido concluído com êxito; caso contrário, um valor HRESULT que indica uma falha (veja Valores HRESULT Comuns para uma lista).
Observações
A chave pública está contida numa estrutura PublicKeyBlob .
A tabela seguinte mostra o conjunto de valores aceites para o uHashAlgId parâmetro .
| Name | Valor |
|---|---|
| Nenhuma | 0 |
| SHA-1 | 0x8004 |
| SHA-256 | 0x800c |
| SHA-384 | 0x800d |
| SHA-512 | 0x800e |
Requisitos
Plataformas: Veja Requisitos de Sistema.
Cabeçalho: MetaHost.h
Biblioteca: Incluído como um recurso no MSCorEE.dll
.NET Framework Versões: Disponível desde a versão 4.5