RSACng Classe

Definição

Fornece uma implementação de CNG (Cryptography Next Generation) do algoritmo RSA.

public ref class RSACng sealed : System::Security::Cryptography::RSA
public sealed class RSACng : System.Security.Cryptography.RSA
type RSACng = class
    inherit RSA
Public NotInheritable Class RSACng
Inherits RSA
Herança

Comentários

A RSACng classe é derivada da RSA classe. Portanto, não é uma substituição suspensa para usos existentes de RSACryptoServiceProvider.

RSACng usa um modelo de programação semelhante à ECDsaCng classe em vez da RSACryptoServiceProvider classe. Por exemplo:

  • A chave usada por é gerenciada por RSACng um objeto separado CngKey . Por outro lado, RSACryptoServiceProvider tem uma chave diretamente vinculada às operações do próprio tipo.

  • RSACng executa operações como assinatura e verificação de assinaturas usando propriedades do RSACng objeto, assim como ECDsaCng usa suas propriedades de objeto para controlar operações de assinatura e verificação.

Note

A classe RSACng é uma implementação do algoritmo RSA usando as bibliotecas CNG Windows e não está disponível em sistemas operacionais diferentes de Windows. Para aplicativos que não estão fazendo Windows interoperabilidade, você é incentivado a usar RSA.Create em vez de referenciar esse tipo diretamente.

Construtores

Nome Description
RSACng()

Inicializa uma nova instância da RSACng classe com um par de chaves aleatório de 2.048 bits.

RSACng(CngKey)

Inicializa uma nova instância da RSACng classe com a chave especificada.

RSACng(Int32)

Inicializa uma nova instância da RSACng classe com uma chave gerada aleatoriamente do tamanho especificado.

Campos

Nome Description
KeySizeValue

Representa o tamanho, em bits, do módulo de chave usado pelo algoritmo assimétrico.

(Herdado de AsymmetricAlgorithm)
LegalKeySizesValue

Especifica os tamanhos de chave compatíveis com o algoritmo assimétrico.

(Herdado de AsymmetricAlgorithm)

Propriedades

Nome Description
Key

Obtém a chave que será usada pelo RSACng objeto para qualquer operação criptográfica executada.

KeyExchangeAlgorithm

Obtém o nome do algoritmo de troca de chaves disponível com essa implementação de RSA.

KeyExchangeAlgorithm

Obtém o nome do algoritmo de troca de chaves disponível com essa implementação de RSA.

(Herdado de RSA)
KeySize

Obtém ou define o tamanho, em bits, do módulo de chave usado pelo algoritmo assimétrico.

(Herdado de AsymmetricAlgorithm)
LegalKeySizes

Obtém os tamanhos de chave, em bits, compatíveis com essa implementação de RSA.

LegalKeySizes

Obtém os tamanhos de chave compatíveis com o algoritmo assimétrico.

(Herdado de AsymmetricAlgorithm)
SignatureAlgorithm

Obtém o nome do algoritmo de assinatura disponível com essa implementação de RSA.

SignatureAlgorithm

Obtém o nome do algoritmo de assinatura disponível com essa implementação de RSA.

(Herdado de RSA)

Métodos

Nome Description
Clear()

Libera todos os recursos usados pela AsymmetricAlgorithm classe.

(Herdado de AsymmetricAlgorithm)
Decrypt(Byte[], RSAEncryptionPadding)

Descriptografa dados de entrada usando o modo de preenchimento especificado.

Decrypt(ReadOnlySpan<Byte>, RSAEncryptionPadding)

Descriptografa os dados de entrada usando o modo de preenchimento especificado.

(Herdado de RSA)
Decrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding)

Descriptografa os dados de entrada usando o modo de preenchimento especificado.

(Herdado de RSA)
DecryptValue(Byte[])

Descriptografa os dados de entrada usando a chave privada.

DecryptValue(Byte[])
Obsoleto.

Quando substituído em uma classe derivada, descriptografa os dados de entrada usando a chave privada.

(Herdado de RSA)
Dispose()

Libera todos os recursos usados pela instância atual da AsymmetricAlgorithm classe.

(Herdado de AsymmetricAlgorithm)
Dispose(Boolean)

Libera os recursos não gerenciados usados pela AsymmetricAlgorithm classe e, opcionalmente, libera os recursos gerenciados.

(Herdado de AsymmetricAlgorithm)
Encrypt(Byte[], RSAEncryptionPadding)

Criptografa os dados de entrada usando o preenchimento especificado.

Encrypt(ReadOnlySpan<Byte>, RSAEncryptionPadding)

Criptografa os dados de entrada usando o modo de preenchimento especificado.

(Herdado de RSA)
Encrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding)

Criptografa os dados de entrada usando o modo de preenchimento especificado.

(Herdado de RSA)
EncryptValue(Byte[])

Criptografa os dados de entrada usando a chave pública.

EncryptValue(Byte[])
Obsoleto.

Quando substituído em uma classe derivada, criptografa os dados de entrada usando a chave pública.

(Herdado de RSA)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters)

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma senha baseada em bytes.

ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters)

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma senha baseada em bytes.

(Herdado de AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters)

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma senha baseada em char.

ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters)

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma senha baseada em char.

(Herdado de AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Byte>, PbeParameters)

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma senha baseada em bytes, codificada em PEM.

(Herdado de AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Char>, PbeParameters)

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma senha baseada em char, codificada em PEM.

(Herdado de AsymmetricAlgorithm)
ExportParameters(Boolean)

Exporta a chave usada pelo objeto RSA para um RSAParameters objeto.

ExportPkcs8PrivateKey()

Exporta a chave atual no formato PKCS#8 PrivateKeyInfo.

(Herdado de AsymmetricAlgorithm)
ExportPkcs8PrivateKeyPem()

Exporta a chave atual no formato PKCS#8 PrivateKeyInfo, codificado em PEM.

(Herdado de AsymmetricAlgorithm)
ExportRSAPrivateKey()

Exporta a chave atual no formato PKCS#1 RSAPrivateKey.

(Herdado de RSA)
ExportRSAPrivateKeyPem()

Exporta a chave atual no formato PKCS#1 RSAPrivateKey, codificado em PEM.

(Herdado de RSA)
ExportRSAPublicKey()

Exporta a parte de chave pública da chave atual no formato PKCS#1 RSAPublicKey.

(Herdado de RSA)
ExportRSAPublicKeyPem()

Exporta a parte de chave pública da chave atual no formato PKCS#1 RSAPublicKey, codificado em PEM.

(Herdado de RSA)
ExportSubjectPublicKeyInfo()

Exporta a parte de chave pública da chave atual no formato SubjectPublicKeyInfo X.509.

(Herdado de AsymmetricAlgorithm)
ExportSubjectPublicKeyInfoPem()

Exporta a parte de chave pública da chave atual no formato SubjectPublicKeyInfo X.509, codificado em PEM.

(Herdado de AsymmetricAlgorithm)
FromXmlString(String)

Inicializa um RSA objeto das informações de chave de uma cadeia de caracteres XML.

(Herdado de RSA)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetMaxOutputSize()

Obtém o número máximo de bytes que uma operação RSA pode produzir.

(Herdado de RSA)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
HashData(Byte[], Int32, Int32, HashAlgorithmName)

Quando substituído em uma classe derivada, calcula o valor de hash de uma parte especificada de uma matriz de bytes usando um algoritmo de hash especificado.

(Herdado de RSA)
HashData(Stream, HashAlgorithmName)

Quando substituído em uma classe derivada, calcula o valor de hash de um fluxo binário especificado usando um algoritmo de hash especificado.

(Herdado de RSA)
ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32)

Importa o keypair público/privado de uma estrutura PKCS#8 EncryptedPrivateKeyInfo depois de descriptografar com uma senha baseada em bytes, substituindo as chaves desse objeto.

ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32)

Importa o keypair público/privado de uma estrutura PKCS#8 EncryptedPrivateKeyInfo depois de descriptografar com uma senha baseada em bytes, substituindo as chaves desse objeto.

(Herdado de RSA)
ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)

Importa o keypair público/privado de uma estrutura PKCS#8 EncryptedPrivateKeyInfo depois de descriptografar com uma senha baseada em char, substituindo as chaves desse objeto.

ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)

Importa o keypair público/privado de uma estrutura PKCS#8 EncryptedPrivateKeyInfo depois de descriptografar com uma senha baseada em char, substituindo as chaves desse objeto.

(Herdado de RSA)
ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Byte>)

Importa uma chave privada codificada em PEM rfc 7468 criptografada, substituindo as chaves desse objeto.

(Herdado de RSA)
ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Importa uma chave privada codificada em PEM rfc 7468 criptografada, substituindo as chaves desse objeto.

(Herdado de RSA)
ImportFromPem(ReadOnlySpan<Char>)

Importa uma chave codificada em PEM RFC 7468, substituindo as chaves desse objeto.

(Herdado de RSA)
ImportParameters(RSAParameters)

Substitui a chave existente com a qual a instância atual está trabalhando criando uma nova CngKey para a estrutura de parâmetros.

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

Importa o keypair público/privado de uma estrutura PKCS#8 PrivateKeyInfo após a descriptografia, substituindo as chaves desse objeto.

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

Importa o keypair público/privado de uma estrutura PKCS#8 PrivateKeyInfo após a descriptografia, substituindo as chaves desse objeto.

(Herdado de RSA)
ImportRSAPrivateKey(ReadOnlySpan<Byte>, Int32)

Importa o keypair público/privado de uma estrutura PKCS#1 RSAPrivateKey após a descriptografia, substituindo as chaves desse objeto.

(Herdado de RSA)
ImportRSAPublicKey(ReadOnlySpan<Byte>, Int32)

Importa a chave pública de uma estrutura RSAPublicKey PKCS nº 1 após a descriptografia, substituindo as chaves desse objeto.

(Herdado de RSA)
ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)

Importa a chave pública de uma estrutura SubjectPublicKeyInfo X.509 após a descriptografia, substituindo as chaves desse objeto.

(Herdado de RSA)
MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
SignData(Byte[], HashAlgorithmName, RSASignaturePadding)

Calcula o valor de hash da matriz de bytes especificada usando o algoritmo de hash e o modo de preenchimento especificados e assina o valor de hash resultante.

(Herdado de RSA)
SignData(Byte[], Int32, Int32, HashAlgorithmName, RSASignaturePadding)

Calcula o valor de hash de uma parte da matriz de bytes especificada usando o algoritmo de hash e o modo de preenchimento especificados e assina o valor de hash resultante.

(Herdado de RSA)
SignData(ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

Calcula o valor de hash dos dados especificados e os assina.

(Herdado de RSA)
SignData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, RSASignaturePadding)

Calcula o hash dos dados fornecidos com o algoritmo especificado e assina o hash com a chave atual, gravando a assinatura em um buffer fornecido.

(Herdado de RSA)
SignData(Stream, HashAlgorithmName, RSASignaturePadding)

Calcula o valor de hash do fluxo especificado usando o algoritmo de hash e o modo de preenchimento especificados e assina o valor de hash resultante.

(Herdado de RSA)
SignHash(Byte[], HashAlgorithmName, RSASignaturePadding)

Assina dados que foram hashados usando o algoritmo de hash especificado e o modo de preenchimento.

SignHash(ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

Calcula a assinatura do valor de hash especificado usando o preenchimento especificado.

(Herdado de RSA)
SignHash(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, RSASignaturePadding)

Assina o hash com a chave atual, gravando a assinatura em um buffer fornecido.

(Herdado de RSA)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
ToXmlString(Boolean)

Cria e retorna uma cadeia de caracteres XML que contém a chave do objeto atual RSA .

(Herdado de RSA)
TryDecrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding, Int32)

Descriptografa dados usando a chave privada.

TryDecrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding, Int32)

Tenta descriptografar os dados de entrada usando o modo de preenchimento especificado, gravando o resultado em um buffer fornecido.

(Herdado de RSA)
TryEncrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding, Int32)

Criptografa dados usando a chave pública.

TryEncrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding, Int32)

Tenta criptografar os dados de entrada com um modo de preenchimento especificado em um buffer fornecido.

(Herdado de RSA)
TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32)

Tenta exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo para um buffer fornecido, usando uma senha baseada em bytes.

TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32)

Tenta exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo para um buffer fornecido, usando uma senha baseada em bytes.

(Herdado de RSA)
TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters, Span<Byte>, Int32)

Tenta exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo para um buffer fornecido, usando uma senha baseada em char.

TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters, Span<Byte>, Int32)

Tenta exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo para um buffer fornecido, usando uma senha baseada em char.

(Herdado de RSA)
TryExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Byte>, PbeParameters, Span<Char>, Int32)

Tenta exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma senha baseada em bytes, codificada em PEM.

(Herdado de AsymmetricAlgorithm)
TryExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Char>, PbeParameters, Span<Char>, Int32)

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma senha baseada em char, codificada em PEM.

(Herdado de AsymmetricAlgorithm)
TryExportPkcs8PrivateKey(Span<Byte>, Int32)

Tenta exportar a chave atual no formato PrivateKeyInfo PKCS#8 para um buffer fornecido.

TryExportPkcs8PrivateKey(Span<Byte>, Int32)

Tenta exportar a chave atual no formato PrivateKeyInfo PKCS#8 para um buffer fornecido.

(Herdado de RSA)
TryExportPkcs8PrivateKeyPem(Span<Char>, Int32)

Tenta exportar a chave atual no formato PKCS#8 PrivateKeyInfo codificado em PEM para um buffer fornecido.

(Herdado de AsymmetricAlgorithm)
TryExportRSAPrivateKey(Span<Byte>, Int32)

Tenta exportar a chave atual no formato PKCS#1 RSAPrivateKey para um buffer fornecido.

(Herdado de RSA)
TryExportRSAPrivateKeyPem(Span<Char>, Int32)

Tenta exportar a chave atual no formato PKCS#1 RSAPrivateKey codificado em PEM para um buffer fornecido.

(Herdado de RSA)
TryExportRSAPublicKey(Span<Byte>, Int32)

Tenta exportar a chave atual no formato PKCS#1 RSAPublicKey para um buffer fornecido.

(Herdado de RSA)
TryExportRSAPublicKeyPem(Span<Char>, Int32)

Tenta exportar a chave atual no formato PKCS#1 RSAPublicKey codificado em PEM para um buffer fornecido.

(Herdado de RSA)
TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)

Tenta exportar a chave atual no formato SubjectPublicKeyInfo X.509 para um buffer fornecido.

(Herdado de RSA)
TryExportSubjectPublicKeyInfoPem(Span<Char>, Int32)

Tenta exportar a chave atual no formato SubjectPublicKeyInfo codificado em PEM em um buffer fornecido.

(Herdado de AsymmetricAlgorithm)
TryHashData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, Int32)

Tenta calcular o hash dos dados fornecidos usando o algoritmo especificado, gravando os resultados em um buffer fornecido.

(Herdado de RSA)
TrySignData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, RSASignaturePadding, Int32)

Tenta fazer hash dos dados fornecidos com o algoritmo especificado e assinar o hash com a chave atual, gravando a assinatura em um buffer fornecido.

(Herdado de RSA)
TrySignHash(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, RSASignaturePadding, Int32)

Tenta assinar o hash com a chave atual, gravando a assinatura em um buffer fornecido.

TrySignHash(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, RSASignaturePadding, Int32)

Tenta assinar o hash com a chave atual, gravando a assinatura em um buffer fornecido.

(Herdado de RSA)
VerifyData(Byte[], Byte[], HashAlgorithmName, RSASignaturePadding)

Verifica se uma assinatura digital é válida calculando o valor de hash dos dados especificados usando o algoritmo de hash e o preenchimento especificados e comparando-o com a assinatura fornecida.

(Herdado de RSA)
VerifyData(Byte[], Int32, Int32, Byte[], HashAlgorithmName, RSASignaturePadding)

Verifica se uma assinatura digital é válida calculando o valor de hash dos dados em uma parte de uma matriz de bytes usando o algoritmo de hash e o preenchimento especificados e comparando-o com a assinatura fornecida.

(Herdado de RSA)
VerifyData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

Verifica se uma assinatura digital é válida calculando o valor de hash dos dados especificados usando o algoritmo de hash e o preenchimento especificados e comparando-o com a assinatura fornecida.

(Herdado de RSA)
VerifyData(Stream, Byte[], HashAlgorithmName, RSASignaturePadding)

Verifica se uma assinatura digital é válida calculando o valor de hash do fluxo especificado usando o algoritmo de hash e o preenchimento especificados e comparando-o com a assinatura fornecida.

(Herdado de RSA)
VerifyHash(Byte[], Byte[], HashAlgorithmName, RSASignaturePadding)

Verifica os dados assinados e já com hash com o algoritmo e o modo de preenchimento especificados.

VerifyHash(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

Verifica se uma assinatura digital é válida determinando o valor de hash na assinatura usando o algoritmo de hash e o preenchimento especificados e comparando-o com o valor de hash fornecido.

VerifyHash(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

Verifica se uma assinatura digital é válida determinando o valor de hash na assinatura usando o algoritmo de hash e o preenchimento especificados e comparando-o com o valor de hash fornecido.

(Herdado de RSA)

Aplica-se a