RSA Classe

Definição

Representa a classe base da qual todas as implementações do RSA algoritmo herdam.

public ref class RSA abstract : System::Security::Cryptography::AsymmetricAlgorithm
public abstract class RSA : System.Security.Cryptography.AsymmetricAlgorithm
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public abstract class RSA : System.Security.Cryptography.AsymmetricAlgorithm
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class RSA : System.Security.Cryptography.AsymmetricAlgorithm
type RSA = class
    inherit AsymmetricAlgorithm
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type RSA = class
    inherit AsymmetricAlgorithm
[<System.Runtime.InteropServices.ComVisible(true)>]
type RSA = class
    inherit AsymmetricAlgorithm
Public MustInherit Class RSA
Inherits AsymmetricAlgorithm
Herança
Derivado
Atributos

Observações

Os programadores são incentivados a programar contra a RSA classe base em vez de qualquer classe derivada específica. As classes derivadas destinam-se à interoperabilidade com as bibliotecas criptográficas do sistema subjacente.

Construtores

Name Description
RSA()

Inicializa uma nova instância da RSA classe.

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
KeyExchangeAlgorithm

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

KeyExchangeAlgorithm

Quando é sobreposto numa classe derivada, obtém o nome do algoritmo de troca de chaves. Caso contrário, lança um NotImplementedException.

(Herdado de AsymmetricAlgorithm)
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 suportados pelo algoritmo assimétrico.

(Herdado de AsymmetricAlgorithm)
SignatureAlgorithm

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

SignatureAlgorithm

Quando implementado numa classe derivada, recebe o nome do algoritmo de assinatura. Caso contrário, lança sempre um NotImplementedException.

(Herdado de AsymmetricAlgorithm)

Métodos

Name Description
Clear()

Liberta todos os recursos usados pela AsymmetricAlgorithm turma.

(Herdado de AsymmetricAlgorithm)
Create()

Cria uma instância da implementação padrão do RSA algoritmo.

Create(Int32)

Cria uma nova chave RSA efémera com o tamanho de chave especificado.

Create(RSAParameters)

Cria uma nova chave RSA efémera com os parâmetros especificados da chave RSA.

Create(String)
Obsoleto.

Cria uma instância da implementação especificada de RSA.

Decrypt(Byte[], RSAEncryptionPadding)

Quando sobrescrito numa classe derivada, 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.

Decrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding)

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

DecryptValue(Byte[])
Obsoleto.

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

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)

Quando sobreposto numa classe derivada, encripta os dados de entrada usando o modo de enchimento especificado.

Encrypt(ReadOnlySpan<Byte>, RSAEncryptionPadding)

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

Encrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding)

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

EncryptValue(Byte[])
Obsoleto.

Quando sobrescrito numa classe derivada, encripta os dados de entrada usando a chave pública.

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.

(Herdado de AsymmetricAlgorithm)
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)

Quando sobreposto numa classe derivada, exporta o RSAParameters.

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.

ExportRSAPrivateKeyPem()

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

ExportRSAPublicKey()

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

ExportRSAPublicKeyPem()

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

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.

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.

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.

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.

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)

Quando sobrescrito numa classe derivada, 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 AsymmetricAlgorithm)
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)

Quando sobrescrito numa classe derivada, importa o par de chaves público/privado de uma estrutura PKCS#8 EncryptedPrivateKeyInfo após desencriptação com uma palavra-passe baseada em caracteres, substituindo as chaves deste objeto.

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

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

ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

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

ImportFromPem(ReadOnlySpan<Char>)

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

ImportParameters(RSAParameters)

Quando sobreposto numa classe derivada, importa o especificado RSAParameters.

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)

Quando é sobreposto numa classe derivada, importa o par de chaves público/privado de uma estrutura PrivateKeyInfo PKCS#8 após a desencriptação, substituindo as chaves deste objeto.

(Herdado de AsymmetricAlgorithm)
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.

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.

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.

ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)

Quando é sobreposta numa classe derivada, importa a chave pública de uma estrutura X.509 SubjectPublicKeyInfo após a desencriptação, substituindo as chaves deste objeto.

(Herdado de AsymmetricAlgorithm)
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.

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.

SignData(ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

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

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.

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.

SignHash(Byte[], HashAlgorithmName, RSASignaturePadding)

Quando sobrescrito numa classe derivada, calcula a assinatura para o valor hash especificado usando o enchimento especificado.

SignHash(ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

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

SignHash(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, RSASignaturePadding)

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

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 .

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.

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

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

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)

Quando sobreposta numa classe derivada, tenta exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo para um buffer fornecido, usando uma palavra-passe baseada em bytes.

(Herdado de AsymmetricAlgorithm)
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)

Quando é sobreposta numa classe derivada, tenta exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo para um buffer fornecido, usando uma palavra-passe baseada em caracteres.

(Herdado de AsymmetricAlgorithm)
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)

Quando sobreposta numa classe derivada, tenta exportar a chave atual no formato PKCS#8 PrivateKeyInfo para um buffer fornecido.

(Herdado de AsymmetricAlgorithm)
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.

TryExportRSAPrivateKeyPem(Span<Char>, Int32)

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

TryExportRSAPublicKey(Span<Byte>, Int32)

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

TryExportRSAPublicKeyPem(Span<Char>, Int32)

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

TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)

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

TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)

Quando sobreposta numa classe derivada, tenta exportar a chave atual no formato X.509 SubjectPublicKeyInfo para um buffer fornecido.

(Herdado de AsymmetricAlgorithm)
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.

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.

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

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

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.

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.

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.

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.

VerifyHash(Byte[], 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.

Implementações de Interface Explícita

Name Description
IDisposable.Dispose()

Esta API suporta a infraestrutura de produtos e não é pressuposta para ser utilizada diretamente a partir do seu código.

Para uma descrição deste elemento, veja Dispose().

(Herdado de AsymmetricAlgorithm)

Aplica-se a

Ver também