RSACng Classe

Definição

Fornece uma implementação de Criptografia de Nova Geração (CNG) 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

Observações

A RSACng classe deriva da RSA classe. Portanto, não é um substituto direto para as utilizações existentes de RSACryptoServiceProvider.

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

  • A chave usada por RSACng é gerida por um objeto separado CngKey . Em contraste, RSACryptoServiceProvider tem uma chave diretamente ligada às operações do próprio tipo.

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

Note

A classe RSACng é uma implementação do algoritmo RSA que utiliza as bibliotecas Windows CNG e não está disponível em sistemas operativos que não sejam Windows. Para aplicações que não fazem Windows interoperabilidade, é incentivado a usar RSA.Create em vez de referenciar este tipo diretamente.

Construtores

Name 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

Name 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 suportados pelo algoritmo assimétrico.

(Herdado de AsymmetricAlgorithm)

Propriedades

Name Description
Key

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

KeyExchangeAlgorithm

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

KeyExchangeAlgorithm

Obtém o nome do algoritmo de troca de chaves disponível com esta 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 das chaves, em bits, suportados por esta implementação do RSA.

LegalKeySizes

Obtém os tamanhos de chave suportados pelo algoritmo assimétrico.

(Herdado de AsymmetricAlgorithm)
SignatureAlgorithm

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

SignatureAlgorithm

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

(Herdado de RSA)

Métodos

Name Description
Clear()

Liberta todos os recursos usados pela AsymmetricAlgorithm turma.

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

Desencripta os dados de entrada usando o modo de enchimento especificado.

Decrypt(ReadOnlySpan<Byte>, RSAEncryptionPadding)

Descifra os dados de entrada usando o modo de enchimento especificado.

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

Descifra os dados de entrada usando o modo de enchimento especificado.

(Herdado de RSA)
DecryptValue(Byte[])

Desencripta os dados de entrada usando a chave privada.

DecryptValue(Byte[])
Obsoleto.

Quando sobrescrito numa classe derivada, desencripta os dados de entrada usando a chave privada.

(Herdado de RSA)
Dispose()

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

(Herdado de AsymmetricAlgorithm)
Dispose(Boolean)

Liberta os recursos não geridos usados pela AsymmetricAlgorithm classe e, opcionalmente, liberta os recursos geridos.

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

Encripta os dados de entrada usando o padding especificado.

Encrypt(ReadOnlySpan<Byte>, RSAEncryptionPadding)

Encripta os dados de entrada usando o modo de enchimento especificado.

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

Encripta os dados de entrada usando o modo de enchimento especificado.

(Herdado de RSA)
EncryptValue(Byte[])

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

EncryptValue(Byte[])
Obsoleto.

Quando sobrescrito numa classe derivada, encripta 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 palavra-passe baseada em bytes.

ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters)

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

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

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma palavra-passe baseada em caracteres.

ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters)

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma palavra-passe baseada em caracteres.

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

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

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

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma palavra-passe baseada em caracteres, 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 da chave pública da chave atual no formato PKCS#1 RSAPublicKey.

(Herdado de RSA)
ExportRSAPublicKeyPem()

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

(Herdado de RSA)
ExportSubjectPublicKeyInfo()

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

(Herdado de AsymmetricAlgorithm)
ExportSubjectPublicKeyInfoPem()

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

(Herdado de AsymmetricAlgorithm)
FromXmlString(String)

Inicializa um RSA objeto a partir da informação chave de uma cadeia XML.

(Herdado de RSA)
GetHashCode()

Serve como função de hash predefinida.

(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 sobrescrito numa classe derivada, calcula o valor de hash de uma porção especificada de um array de bytes usando um algoritmo de hash especificado.

(Herdado de RSA)
HashData(Stream, HashAlgorithmName)

Quando sobrescrito numa 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 par de chaves público/privado de uma estrutura PKCS#8 EncryptedPrivateKeyInfo após desencriptar com uma palavra-passe baseada em bytes, substituindo as chaves deste objeto.

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

Importa o par de chaves público/privado de uma estrutura PKCS#8 EncryptedPrivateKeyInfo após desencriptar com uma palavra-passe baseada em bytes, substituindo as chaves deste objeto.

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

Importa o par de chaves pública/privada de uma estrutura PKCS#8 EncryptedPrivateKeyInfo após desencriptação com uma palavra-passe baseada em caracteres, substituindo as chaves deste objeto.

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

Importa o par de chaves pública/privada de uma estrutura PKCS#8 EncryptedPrivateKeyInfo após desencriptação com uma palavra-passe baseada em caracteres, substituindo as chaves deste objeto.

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

Importa uma chave privada codificada em PEM RFC 7468 encriptada, substituindo as chaves deste objeto.

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

Importa uma chave privada codificada em PEM RFC 7468 encriptada, substituindo as chaves deste objeto.

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

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

(Herdado de RSA)
ImportParameters(RSAParameters)

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

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

Importa o par de chaves público/privado de uma estrutura PKCS#8 PrivateKeyInfo após a desencriptação, substituindo as chaves deste objeto.

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

Importa o par de chaves público/privado de uma estrutura PKCS#8 PrivateKeyInfo após a desencriptação, substituindo as chaves deste objeto.

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

Importa o par de chaves público/privado de uma estrutura PKCS#1 RSAPrivateKey após a desencriptação, substituindo as chaves deste objeto.

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

Importa a chave pública de uma estrutura PKCS#1 RSAPublicKey após a desencriptação, substituindo as chaves deste objeto.

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

Importa a chave pública de uma estrutura X.509 SubjectPublicKeyInfo após a desencriptação, substituindo as chaves deste objeto.

(Herdado de RSA)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

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

Calcula o valor de hash do array de bytes especificado usando o algoritmo de hash especificado 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 do array de bytes especificado usando o algoritmo de hash especificado 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 assina-o.

(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, escrevendo a assinatura num buffer fornecido.

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

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

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

Dados de sinais que foram hasheados usando o algoritmo de hash especificado e o modo de preenchimento (padding mode).

SignHash(ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

Calcula a assinatura para o valor de hash especificado usando o enchimento especificado.

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

Assina o hash com a chave atual, escrevendo a assinatura num buffer fornecido.

(Herdado de RSA)
ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)
ToXmlString(Boolean)

Cria e devolve uma string XML contendo a chave do objeto atual RSA .

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

Desencripta os dados usando a chave privada.

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

Tenta desencriptar os dados de entrada usando o modo de enchimento especificado, escrevendo o resultado num buffer fornecido.

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

Encripta os dados usando a chave pública.

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

Tenta encriptar os dados de entrada com um modo de enchimento especificado num buffer fornecido.

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

Tentativas de exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo para um buffer fornecido, usando uma palavra-passe baseada em bytes.

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

Tentativas de exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo para um buffer fornecido, usando uma palavra-passe baseada em bytes.

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

Tentativas de exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo para um buffer fornecido, usando uma palavra-passe baseada em caracteres.

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

Tentativas de exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo para um buffer fornecido, usando uma palavra-passe baseada em caracteres.

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

Tentativas de exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma palavra-passe 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 palavra-passe baseada em caracteres, codificada em PEM.

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

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

TryExportPkcs8PrivateKey(Span<Byte>, Int32)

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

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

Tentativas de 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)

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

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

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

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

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

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

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

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

Tentativas de exportar a chave atual no formato X.509 SubjectPublicKeyInfo codificado em PEM para um buffer fornecido.

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

Tenta calcular o hash dos dados fornecidos usando o algoritmo especificado, escrevendo os resultados num 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, escrevendo a assinatura num buffer fornecido.

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

Tenta assinar o hash com a chave atual, escrevendo a assinatura num buffer fornecido.

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

Tenta assinar o hash com a chave atual, escrevendo a assinatura num 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 especificado e o padding, 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 numa parte de um array de bytes usando o algoritmo de hash especificado e o padding, e comparando-os 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 especificado e o padding, 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 padding especificados, e comparando-o com a assinatura fornecida.

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

Verifica dados que estavam assinados e já hasheados com o algoritmo especificado e o modo de preenchimento (padding mode).

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 especificado e o padding, 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 especificado e o padding, e comparando-o com o valor de hash fornecido.

(Herdado de RSA)

Aplica-se a