RSA Clase

Definición

Representa la clase base de la que se heredan todas las implementaciones del algoritmo RSA.Represents the base class from which all implementations of the RSA algorithm inherit.

public ref class RSA abstract : System::Security::Cryptography::AsymmetricAlgorithm
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.InteropServices.ComVisible(true)>]
type RSA = class
    inherit AsymmetricAlgorithm
Public MustInherit Class RSA
Inherits AsymmetricAlgorithm
Herencia
Derivado
Atributos

Comentarios

Se recomienda a los desarrolladores programar con la RSA clase base en lugar de con cualquier clase derivada concreta.Developers are encouraged to program against the RSA base class rather than any specific derived class. Las clases derivadas están pensadas para la interoperabilidad con las bibliotecas criptográficas del sistema subyacentes.The derived classes are intended for interop with the underlying system cryptographic libraries.

Constructores

RSA()

Inicializa una nueva instancia de la clase RSA.Initializes a new instance of the RSA class.

Campos

KeySizeValue

Representa el tamaño, en bits, del módulo de claves que usa el algoritmo asimétrico.Represents the size, in bits, of the key modulus used by the asymmetric algorithm.

(Heredado de AsymmetricAlgorithm)
LegalKeySizesValue

Especifica los tamaños de clave admitidos por el algoritmo asimétrico.Specifies the key sizes that are supported by the asymmetric algorithm.

(Heredado de AsymmetricAlgorithm)

Propiedades

KeyExchangeAlgorithm

Obtiene el nombre del algoritmo de intercambio de claves disponible con esta implementación de RSA.Gets the name of the key exchange algorithm available with this implementation of RSA.

KeyExchangeAlgorithm

Cuando se invalida en una clase derivada, obtiene el nombre del algoritmo de intercambio de claves.When overridden in a derived class, gets the name of the key exchange algorithm. En caso contrario, produce una excepción NotImplementedException.Otherwise, throws an NotImplementedException.

(Heredado de AsymmetricAlgorithm)
KeySize

Obtiene o establece el tamaño, en bits, del módulo de claves que usa el algoritmo asimétrico.Gets or sets the size, in bits, of the key modulus used by the asymmetric algorithm.

(Heredado de AsymmetricAlgorithm)
LegalKeySizes

Obtiene los tamaños de clave que admite el algoritmo asimétrico.Gets the key sizes that are supported by the asymmetric algorithm.

(Heredado de AsymmetricAlgorithm)
SignatureAlgorithm

Obtiene el nombre del algoritmo de firma disponible con esta implementación de RSA.Gets the name of the signature algorithm available with this implementation of RSA.

SignatureAlgorithm

Cuando se implementa en una clase derivada, obtiene el nombre del algoritmo de signatura.When implemented in a derived class, gets the name of the signature algorithm. En caso contrario, produce siempre una NotImplementedException.Otherwise, always throws a NotImplementedException.

(Heredado de AsymmetricAlgorithm)

Métodos

Clear()

Libera todos los recursos que utiliza la clase AsymmetricAlgorithm.Releases all resources used by the AsymmetricAlgorithm class.

(Heredado de AsymmetricAlgorithm)
Create()

Crea una instancia de la implementación predeterminada del algoritmo RSA.Creates an instance of the default implementation of the RSA algorithm.

Create(Int32)

Crea una clave RSA efímera con el tamaño de clave especificado.Creates a new ephemeral RSA key with the specified key size.

Create(RSAParameters)

Crea una clave RSA efímera con los parámetros de clave RSA especificados.Creates a new ephemeral RSA key with the specified RSA key parameters.

Create(String)

Crea una instancia de la implementación de RSA especificada.Creates an instance of the specified implementation of RSA.

Decrypt(Byte[], RSAEncryptionPadding)

Cuando se reemplaza en una clase derivada, descifra los datos de entrada usando el modo de relleno especificado.When overridden in a derived class, decrypts the input data using the specified padding mode.

DecryptValue(Byte[])

Cuando se invalida en una clase derivada, descifra los datos de entrada con la clave privada.When overridden in a derived class, decrypts the input data using the private key.

Dispose()

Libera todos los recursos usados por la instancia actual de la clase AsymmetricAlgorithm.Releases all resources used by the current instance of the AsymmetricAlgorithm class.

(Heredado de AsymmetricAlgorithm)
Dispose(Boolean)

Libera los recursos no administrados utilizados por la clase AsymmetricAlgorithm y, de forma opcional, libera los recursos administrados.Releases the unmanaged resources used by the AsymmetricAlgorithm class and optionally releases the managed resources.

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

Cuando se reemplaza en una clase derivada, cifra los datos de entrada usando el modo de relleno especificado.When overridden in a derived class, encrypts the input data using the specified padding mode.

EncryptValue(Byte[])

Cuando se invalida en una clase derivada, cifra los datos de entrada usando la clave pública.When overridden in a derived class, encrypts the input data using the public key.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.Determines whether the specified object is equal to the current object.

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

Exporta la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 con una contraseña basada en bytes.Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a byte-based password.

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

Exporta la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 con una contraseña basada en caracteres.Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a char-based password.

(Heredado de AsymmetricAlgorithm)
ExportParameters(Boolean)

Cuando se invalida en una clase derivada, exporta el RSAParameters.When overridden in a derived class, exports the RSAParameters.

ExportPkcs8PrivateKey()

Exporta la clave actual en el formato PrivateKeyInfo de PKCS#8.Exports the current key in the PKCS#8 PrivateKeyInfo format.

(Heredado de AsymmetricAlgorithm)
ExportRSAPrivateKey()

Exporta la clave actual en el formato RSAPrivateKey de PKCS#1.Exports the current key in the PKCS#1 RSAPrivateKey format.

ExportRSAPublicKey()

Exporta la parte de la clave pública de la clave actual en el formato RSAPublicKey de PKCS#1.Exports the public-key portion of the current key in the PKCS#1 RSAPublicKey format.

ExportSubjectPublicKeyInfo()

Exporta la parte de la clave pública de la clave actual en el formato SubjectPublicKeyInfo de X.509.Exports the public-key portion of the current key in the X.509 SubjectPublicKeyInfo format.

(Heredado de AsymmetricAlgorithm)
FromXmlString(String)

Inicializa un objeto RSA de la información de clave de una cadena XML.Initializes an RSA object from the key information from an XML string.

FromXmlString(String)

Cuando se invalida en una clase derivada, reconstruye un objeto AsymmetricAlgorithm a partir de una cadena XML.When overridden in a derived class, reconstructs an AsymmetricAlgorithm object from an XML string. En caso contrario, produce una excepción NotImplementedException.Otherwise, throws a NotImplementedException.

(Heredado de AsymmetricAlgorithm)
GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

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

Cuando se reemplaza en una clase derivada, calcula el valor hash de una parte especificada de una matriz de bytes usando un algoritmo hash especificado.When overridden in a derived class, computes the hash value of a specified portion of a byte array by using a specified hashing algorithm.

HashData(Stream, HashAlgorithmName)

Cuando se reemplaza en una clase derivada, calcula el valor hash de una secuencia binaria especificada usando un algoritmo hash especificado.When overridden in a derived class, computes the hash value of a specified binary stream by using a specified hashing algorithm.

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

Importa el par de claves pública/privada desde una estructura EncryptedPrivateKeyInfo de PKCS#8 después de descifrar con una contraseña basada en bytes, reemplazando las claves de este objeto.Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.

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

Cuando se reemplaza en una clase derivada, importa el par de claves pública/privada desde una estructura EncryptedPrivateKeyInfo de PKCS#8 después de descifrar con una contraseña basada en bytes, reemplazando las claves de este objeto.When overridden in a derived class, imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.

(Heredado de AsymmetricAlgorithm)
ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)

Importa el par de claves pública/privada desde una estructura EncryptedPrivateKeyInfo de PKCS#8 después de descifrar con una contraseña basada en caracteres, reemplazando las claves de este objeto.Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a char-based password, replacing the keys for this object.

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

Cuando se reemplaza en una clase derivada, importa el par de claves pública/privada desde una estructura EncryptedPrivateKeyInfo de PKCS#8 después de descifrar con una contraseña basada en caracteres, reemplazando las claves de este objeto.When overridden in a derived class, imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a char-based password, replacing the keys for this object.

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

Importa una clave privada con codificación PEM de RFC 7468 cifrada, reemplazando las claves para este objeto.Imports an encrypted RFC 7468 PEM-encoded private key, replacing the keys for this object.

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

Cuando se invalida en una clase derivada, importa una clave con codificación PEM de RFC 7468 cifrada, reemplazando las claves para este objeto.When overridden in a derived class, imports an encrypted RFC 7468 PEM-encoded key, replacing the keys for this object.

(Heredado de AsymmetricAlgorithm)
ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Importa una clave privada con codificación PEM de RFC 7468 cifrada, reemplazando las claves para este objeto.Imports an encrypted RFC 7468 PEM-encoded private key, replacing the keys for this object.

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

Cuando se invalida en una clase derivada, importa una clave con codificación PEM de RFC 7468 cifrada, reemplazando las claves para este objeto.When overridden in a derived class, imports an encrypted RFC 7468 PEM-encoded key, replacing the keys for this object.

(Heredado de AsymmetricAlgorithm)
ImportFromPem(ReadOnlySpan<Char>)

Importa una clave con codificación PEM de RFC 7468 y reemplaza las claves para este objeto.Imports an RFC 7468 PEM-encoded key, replacing the keys for this object.

ImportFromPem(ReadOnlySpan<Char>)

Cuando se reemplaza en una clase derivada, importa una clave codificada textualmente de RFC 7468, reemplazando las claves para este objeto.When overridden in a derived class, imports an RFC 7468 textually encoded key, replacing the keys for this object.

(Heredado de AsymmetricAlgorithm)
ImportParameters(RSAParameters)

Cuando se invalida en una clase derivada, importa el objeto RSAParameters especificado.When overridden in a derived class, imports the specified RSAParameters.

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

Importa el par de claves pública/privada desde una estructura PrivateKeyInfo de PKCS#8 después del descifrado, reemplazando las claves de este objeto.Imports the public/private keypair from a PKCS#8 PrivateKeyInfo structure after decryption, replacing the keys for this object.

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

Cuando se reemplaza en una clase derivada, importa el par de claves pública/privada desde una estructura PrivateKeyInfo de PKCS#8 después del descifrado, reemplazando las claves de este objeto.When overriden in a derived class, imports the public/private keypair from a PKCS#8 PrivateKeyInfo structure after decryption, replacing the keys for this object.

(Heredado de AsymmetricAlgorithm)
ImportRSAPrivateKey(ReadOnlySpan<Byte>, Int32)

Importa el par de claves pública/privada desde una estructura RSAPrivateKey de PKCS#1 después del descifrado, reemplazando las claves de este objeto.Imports the public/private keypair from a PKCS#1 RSAPrivateKey structure after decryption, replacing the keys for this object.

ImportRSAPublicKey(ReadOnlySpan<Byte>, Int32)

Importa la clave pública desde una estructura RSAPublicKey de PKCS#1 después del descifrado, reemplazando las claves de este objeto.Imports the public key from a PKCS#1 RSAPublicKey structure after decryption, replacing the keys for this object.

ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)

Importa la clave pública desde una estructura SubjectPublicKeyInfo de X.509 después del descifrado, reemplazando las claves de este objeto.Imports the public key from an X.509 SubjectPublicKeyInfo structure after decryption, replacing the keys for this object.

ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)

Cuando se reemplaza en una clase derivada, importa la clave pública desde una estructura SubjectPublicKeyInfo de X.509 después del descifrado, reemplazando las claves de este objeto.When overriden in a derived class, imports the public key from an X.509 SubjectPublicKeyInfo structure after decryption, replacing the keys for this object.

(Heredado de AsymmetricAlgorithm)
MemberwiseClone()

Crea una copia superficial del Object actual.Creates a shallow copy of the current Object.

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

Calcula el valor hash de la matriz de bytes especificada usando el algoritmo hash y el modo de relleno especificados y firma el valor hash resultante.Computes the hash value of the specified byte array using the specified hash algorithm and padding mode, and signs the resulting hash value.

SignData(Byte[], Int32, Int32, HashAlgorithmName, RSASignaturePadding)

Calcula el valor hash de una parte de la matriz de bytes especificada usando el algoritmo hash y el modo de relleno especificados y firma el valor hash resultante.Computes the hash value of a portion of the specified byte array using the specified hash algorithm and padding mode, and signs the resulting hash value.

SignData(Stream, HashAlgorithmName, RSASignaturePadding)

Calcula el valor hash de la secuencia especificada usando el algoritmo hash y el modo de relleno especificados y firma el valor hash resultante.Computes the hash value of the specified stream using the specified hash algorithm and padding mode, and signs the resulting hash value.

SignHash(Byte[], HashAlgorithmName, RSASignaturePadding)

Cuando se reemplaza en una clase derivada, calcula la firma del valor hash especificado mediante el relleno especificado.When overridden in a derived class, computes the signature for the specified hash value using the specified padding.

ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Heredado de Object)
ToXmlString(Boolean)

Crea y devuelve una cadena XML que contiene la clave del objeto RSA actual.Creates and returns an XML string containing the key of the current RSA object.

ToXmlString(Boolean)

Cuando se invalida en una clase derivada, crea y devuelve una representación en forma de cadena XML del objeto AsymmetricAlgorithm actual.When overridden in a derived class, creates and returns an XML string representation of the current AsymmetricAlgorithm object. En caso contrario, produce una excepción NotImplementedException.Otherwise, throws a NotImplementedException.

(Heredado de AsymmetricAlgorithm)
TryDecrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding, Int32)

Intenta descifrar los datos de entrada usando el modo de relleno especificado y escribiendo el resultado en un búfer proporcionado.Attempts to decrypt the input data using the specified padding mode, writing the result into a provided buffer.

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

Intenta cifrar los datos de entrada con un modo de relleno especificado en un búfer proporcionado.Attempts to encrypt the input data with a specified padding mode into a provided buffer.

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

Intenta exportar la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 a un búfer proporcionado, utilizando una contraseña basada en bytes.Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a byte-based password.

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

Cuando se reemplaza en una clase derivada, intenta exportar la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 a un búfer proporcionado, utilizando una contraseña basada en bytes.When overridden in a derived class, attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a byte-based password.

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

Intenta exportar la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 a un búfer proporcionado, utilizando una contraseña basada en caracteres.Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a char-based password.

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

Cuando se reemplaza en una clase derivada, intenta exportar la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 a un búfer proporcionado, utilizando una contraseña basada en caracteres.When overriden in a derived class, attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a char-based password.

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

Intenta exportar la clave actual en el formato PrivateKeyInfo de PKCS#8 a un búfer proporcionado.Attempts to export the current key in the PKCS#8 PrivateKeyInfo format into a provided buffer.

TryExportPkcs8PrivateKey(Span<Byte>, Int32)

Cuando se reemplaza en una clase derivada, intenta exportar la clave actual en el formato PrivateKeyInfo de PKCS#8 a un búfer proporcionado.When overridden in a derived class, attempts to export the current key in the PKCS#8 PrivateKeyInfo format into a provided buffer.

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

Intenta exportar la clave actual en el formato RSAPrivateKey de PKCS#1 a un búfer proporcionado.Attempts to export the current key in the PKCS#1 RSAPrivateKey format into a provided buffer.

TryExportRSAPublicKey(Span<Byte>, Int32)

Intenta exportar la clave actual en el formato RSAPublicKey de PKCS#1 a un búfer proporcionado.Attempts to export the current key in the PKCS#1 RSAPublicKey format into a provided buffer.

TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)

Intenta exportar la clave actual en el formato SubjectPublicKeyInfo de X.509 a un búfer proporcionado.Attempts to export the current key in the X.509 SubjectPublicKeyInfo format into a provided buffer.

TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)

Cuando se reemplaza en una clase derivada, intenta exportar la clave actual en el formato SubjectPublicKeyInfo de X.509 a un búfer proporcionado.When overridden in a derived class, attempts to export the current key in the X.509 SubjectPublicKeyInfo format into a provided buffer.

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

Intenta calcular el hash de los datos proporcionados mediante el algoritmo especificado y escribiendo los resultados en un búfer proporcionado.Attempts to compute the hash of the provided data by using the specified algorithm, writing the results into a provided buffer.

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

Intenta aplicar un algoritmo hash a los datos proporcionados con el algoritmo especificado y firmar el hash con la clave actual, escribiendo la firma en un búfer proporcionado.Attempts to hash the provided data with the specified algorithm and sign the hash with the current key, writing the signature into a provided buffer.

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

Intenta firmar el hash con la clave actual, escribiendo la firma en un búfer proporcionado.Attempts to sign the hash with the current key, writing the signature into a provided buffer.

VerifyData(Byte[], Byte[], HashAlgorithmName, RSASignaturePadding)

Comprueba si una firma digital es válida calculando el valor hash de los datos especificados, para lo que usa el algoritmo hash y el relleno especificados y lo compara con la firma proporcionada.Verifies that a digital signature is valid by calculating the hash value of the specified data using the specified hash algorithm and padding, and comparing it to the provided signature.

VerifyData(Byte[], Int32, Int32, Byte[], HashAlgorithmName, RSASignaturePadding)

Comprueba si una firma digital es válida calculando el valor hash de los datos de una parte de una matriz de bytes, para lo que usa el algoritmo hash y el relleno especificados y lo compara con la firma proporcionada.Verifies that a digital signature is valid by calculating the hash value of the data in a portion of a byte array using the specified hash algorithm and padding, and comparing it to the provided signature.

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

Comprueba si una firma digital es válida calculando el valor hash de los datos especificados, para lo que usa el algoritmo hash y el relleno especificados y lo compara con la firma proporcionada.Verifies that a digital signature is valid by calculating the hash value of the specified data using the specified hash algorithm and padding, and comparing it to the provided signature.

VerifyData(Stream, Byte[], HashAlgorithmName, RSASignaturePadding)

Comprueba si una firma digital es válida calculando el valor hash de la secuencia especificada, para lo que usa el algoritmo hash y el relleno especificados y lo compara con la firma proporcionada.Verifies that a digital signature is valid by calculating the hash value of the specified stream using the specified hash algorithm and padding, and comparing it to the provided signature.

VerifyHash(Byte[], Byte[], HashAlgorithmName, RSASignaturePadding)

Comprueba si una firma digital es válida determinando el valor hash de la firma, para lo que usa el algoritmo hash especificado y el relleno, y lo compara con el valor hash proporcionado.Verifies that a digital signature is valid by determining the hash value in the signature using the specified hash algorithm and padding, and comparing it to the provided hash value.

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

Comprueba si una firma digital es válida determinando el valor hash de la firma, para lo que usa el algoritmo hash especificado y el relleno, y lo compara con el valor hash proporcionado.Verifies that a digital signature is valid by determining the hash value in the signature using the specified hash algorithm and padding, and comparing it to the provided hash value.

Implementaciones de interfaz explícitas

IDisposable.Dispose()

Esta API admite la infraestructura de producto y no está pensada para usarse directamente en el código.

Para obtener una descripción de este miembro, vea Dispose().For a description of this member, see Dispose().

(Heredado de AsymmetricAlgorithm)

Se aplica a

Consulte también