Compartilhar via


Método ICLRStrongName::StrongNameGetPublicKey

Obtém a chave pública de um par de chaves pública/privada. O par de chaves pode ser fornecido como um nome de contêiner de chave em um CSP (provedor de serviços de criptografia) ou como uma coleção bruta de bytes.

Sintaxe

HRESULT StrongNameGetPublicKey (
    [in]  LPCWSTR   szKeyContainer,  
    [in]  BYTE      *pbKeyBlob,  
    [in]  ULONG     cbKeyBlob,  
    [out] BYTE      **ppbPublicKeyBlob,  
    [out] ULONG     *pcbPublicKeyBlob  
);  

Parâmetros

szKeyContainer
[in] O nome do contêiner de chave que contém o par de chaves privadas/públicas. Se pbKeyBlob for nulo, szKeyContainer deverá especificar um contêiner válido dentro do CSP. Nesse caso, o método ICLRStrongName::StrongNameGetPublicKey extrai a chave pública do par de chaves armazenado no contêiner.

Se pbKeyBlob não for nulo, o par de chaves será considerado contido no BLOB (objeto binário grande) chave.

As chaves devem ser chaves de assinatura RSA (Rivest-Shamir-Adleman) de 1024 bits. Não há suporte para nenhum outro tipo de chave no momento.

pbKeyBlob
[in] Um ponteiro para o par de chaves públicas/privadas. Esse par está no formato criado pela função CryptExportKey do Win32. Se pbKeyBlob for nulo, é considerado que o contêiner de chave especificado por szKeyContainer contém o par de chaves.

cbKeyBlob
[in] O tamanho, em bytes, de pbKeyBlob.

ppbPublicKeyBlob
[out] O BLOB da chave pública retornada. O parâmetro ppbPublicKeyBlob é alocado pelo Common Language Runtime e retornado ao chamador. O chamador deve liberar memória usando o método ICLRStrongName::StrongNameFreeBuffer.

pcbPublicKeyBlob
[out] O tamanho do BLOB da chave pública retornado.

Valor Retornado

S_OK se o método tiver sido concluído com êxito; caso contrário, um valor HRESULT que indica falha (consulte Valores HRESULT comuns para uma lista).

Comentários

A chave pública está contida em uma estrutura PublicKeyBlob.

Requisitos

Plataformas: confira Requisitos do sistema.

Cabeçalho: MetaHost.h

Biblioteca: incluída como um recurso no MSCorEE.dll

Versões do .NET Framework: disponíveis desde 4

Confira também