Comparteix a través de


RSACng Clase

Definición

Proporciona una implementación de CNG (Cryptography Next Generation) del 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
Herencia

Comentarios

La RSACng clase se deriva de la RSA clase . Por lo tanto, no es un reemplazo de eliminación para los usos existentes de RSACryptoServiceProvider.

RSACng usa un modelo de programación similar a la ECDsaCng clase en lugar de la RSACryptoServiceProvider clase . Por ejemplo:

  • La clave usada por RSACng se administra mediante un objeto independiente CngKey . Por el contrario, RSACryptoServiceProvider tiene una clave que está directamente vinculada a las operaciones del propio tipo.

  • RSACng realiza tales operaciones como la firma y la comprobación de firmas mediante propiedades del RSACng objeto, al igual que ECDsaCng usa sus propiedades de objeto para controlar las operaciones de firma y comprobación.

Nota

La RSACng clase es una implementación del algoritmo RSA mediante las bibliotecas CNG de Windows y no está disponible en sistemas operativos distintos de Windows. En el caso de las aplicaciones que no realizan la interoperabilidad de Windows, se recomienda usar RSA.Create en lugar de hacer referencia directamente a este tipo.

Constructores

RSACng()

Inicializa una nueva instancia de la clase RSACng con un par de claves aleatorio de 2048 bits.

RSACng(CngKey)

Inicializa una nueva instancia de la clase RSACng con la clave especificada.

RSACng(Int32)

Inicializa una nueva instancia de la clase RSACng con una clave generada aleatoriamente del tamaño especificado.

Campos

KeySizeValue

Representa el tamaño, en bits, del módulo de claves que usa el algoritmo asimétrico.

(Heredado de AsymmetricAlgorithm)
LegalKeySizesValue

Especifica los tamaños de clave admitidos por el algoritmo asimétrico.

(Heredado de AsymmetricAlgorithm)

Propiedades

Key

Obtiene la clave que usará el objeto RSACng para todas las operaciones criptográficas que realice.

KeyExchangeAlgorithm

Obtiene el nombre del algoritmo de intercambio de claves disponible con esta implementación de RSA.

KeyExchangeAlgorithm

Obtiene el nombre del algoritmo de intercambio de claves disponible con esta implementación de RSA.

(Heredado de RSA)
KeySize

Obtiene o establece el tamaño, en bits, del módulo de claves que usa el algoritmo asimétrico.

(Heredado de AsymmetricAlgorithm)
LegalKeySizes

Obtiene los tamaños de clave, en bits, admitidos por esta implementación de RSA.

LegalKeySizes

Obtiene los tamaños de clave que admite el algoritmo asimétrico.

(Heredado de AsymmetricAlgorithm)
SignatureAlgorithm

Obtiene el nombre del algoritmo de firma disponible con esta implementación de RSA.

SignatureAlgorithm

Obtiene el nombre del algoritmo de firma disponible con esta implementación de RSA.

(Heredado de RSA)

Métodos

Clear()

Libera todos los recursos que utiliza la clase AsymmetricAlgorithm.

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

Descifra los datos de entrada con el modo de relleno especificado.

Decrypt(ReadOnlySpan<Byte>, RSAEncryptionPadding)

Descifra los datos de entrada con el modo de relleno especificado.

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

Descifra los datos de entrada con el modo de relleno especificado.

(Heredado de RSA)
DecryptValue(Byte[])

Descifra los datos de entrada con la clave privada.

DecryptValue(Byte[])
Obsoletos.

Cuando se invalida en una clase derivada, descifra los datos de entrada con la clave privada.

(Heredado de RSA)
Dispose()

Libera todos los recursos usados por la instancia actual de la clase AsymmetricAlgorithm.

(Heredado de AsymmetricAlgorithm)
Dispose(Boolean)

Libera los recursos no administrados utilizados por la clase AsymmetricAlgorithm y, de forma opcional, libera los recursos administrados.

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

Cifra los datos de entrada con el relleno especificado.

Encrypt(ReadOnlySpan<Byte>, RSAEncryptionPadding)

Cifra los datos de entrada con el modo de relleno especificado.

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

Cifra los datos de entrada con el modo de relleno especificado.

(Heredado de RSA)
EncryptValue(Byte[])

Cifra los datos de entrada con la clave pública.

EncryptValue(Byte[])
Obsoletos.

Cuando se invalida en una clase derivada, cifra los datos de entrada usando la clave pública.

(Heredado de RSA)
Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(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.

ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters)

Exporta la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 con una contraseña basada en bytes.

(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.

ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters)

Exporta la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 con una contraseña basada en caracteres.

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

Exporta la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 con una contraseña basada en bytes, PEM codificada.

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

Exporta la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 con una contraseña basada en caracteres, codificada en PEM.

(Heredado de AsymmetricAlgorithm)
ExportParameters(Boolean)

Exporta la clave que usa el objeto RSA en un objeto RSAParameters.

ExportPkcs8PrivateKey()

Exporta la clave actual en el formato PrivateKeyInfo de PKCS#8.

(Heredado de AsymmetricAlgorithm)
ExportPkcs8PrivateKeyPem()

Exporta la clave actual en el formato PKCS#8 PrivateKeyInfo, con codificación PEM.

(Heredado de AsymmetricAlgorithm)
ExportRSAPrivateKey()

Exporta la clave actual en el formato RSAPrivateKey de PKCS#1.

(Heredado de RSA)
ExportRSAPrivateKeyPem()

Exporta la clave actual en el formato RSAPrivateKey PKCS#1, codificado en PEM.

(Heredado de RSA)
ExportRSAPublicKey()

Exporta la parte de la clave pública de la clave actual en el formato RSAPublicKey de PKCS#1.

(Heredado de RSA)
ExportRSAPublicKeyPem()

Exporta la parte de clave pública de la clave actual en el formato RSAPublicKey PKCS#1, codificado en PEM.

(Heredado de RSA)
ExportSubjectPublicKeyInfo()

Exporta la parte de la clave pública de la clave actual en el formato SubjectPublicKeyInfo de X.509.

(Heredado de AsymmetricAlgorithm)
ExportSubjectPublicKeyInfoPem()

Exporta la parte de clave pública de la clave actual en el formato SubjectPublicKeyInfo X.509, codificado en PEM.

(Heredado de AsymmetricAlgorithm)
FromXmlString(String)

Inicializa un objeto RSA de la información de clave de una cadena XML.

(Heredado de RSA)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetMaxOutputSize()

Obtiene el número máximo de bytes que puede producir una operación RSA.

(Heredado de RSA)
GetType()

Obtiene el Type de la instancia actual.

(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.

(Heredado de RSA)
HashData(Stream, HashAlgorithmName)

Cuando se reemplaza en una clase derivada, calcula el valor hash de una secuencia binaria especificada usando un algoritmo hash especificado.

(Heredado de RSA)
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.

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.

(Heredado de RSA)
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.

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.

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

Importa una clave privada codificada con PEM RFC 7468 cifrada, reemplazando las claves de este objeto.

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

Importa una clave privada codificada con PEM RFC 7468 cifrada, reemplazando las claves de este objeto.

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

Importa una clave codificada con PEM RFC 7468, reemplazando las claves de este objeto.

(Heredado de RSA)
ImportParameters(RSAParameters)

Reemplaza la clave existente con la que funciona la instancia actual mediante la creación de un nuevo CngKey para la estructura de parámetros.

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.

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.

(Heredado de RSA)
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.

(Heredado de RSA)
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.

(Heredado de RSA)
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.

(Heredado de RSA)
MemberwiseClone()

Crea una copia superficial del Object actual.

(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.

(Heredado de RSA)
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.

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

Calcula el valor hash de los datos especificados y lo firma.

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

Calcula el hash de los datos proporcionados con el algoritmo especificado y firma el hash con la clave actual, escribiendo la firma en un búfer proporcionado.

(Heredado de RSA)
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.

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

Firma los datos a los que se aplicó un algoritmo hash mediante el algoritmo hash y el modo de relleno especificados.

SignHash(ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

Calcula la firma del valor hash especificado mediante el relleno especificado.

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

Firma el hash con la clave actual, escribiendo la firma en un búfer proporcionado.

(Heredado de RSA)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
ToXmlString(Boolean)

Crea y devuelve una cadena XML que contiene la clave del objeto RSA actual.

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

Descifra los datos mediante la clave privada.

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.

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

Cifra los datos mediante la clave pública.

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

Intenta cifrar los datos de entrada con un modo de relleno especificado en un búfer proporcionado.

(Heredado de RSA)
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.

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.

(Heredado de RSA)
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.

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.

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

Intenta exportar la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 con una contraseña basada en bytes, PEM codificada.

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

Exporta la clave actual en el formato EncryptedPrivateKeyInfo de PKCS#8 con una contraseña basada en caracteres, codificada en PEM.

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

Intenta exportar la clave actual en el formato PrivateKeyInfo de PKCS#8 a un búfer proporcionado.

TryExportPkcs8PrivateKey(Span<Byte>, Int32)

Intenta exportar la clave actual en el formato PrivateKeyInfo de PKCS#8 a un búfer proporcionado.

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

Intenta exportar la clave actual en el formato PKCS#8 PrivateKeyInfo codificado en PEM en un búfer proporcionado.

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

Intenta exportar la clave actual en el formato RSAPrivateKey de PKCS#1 a un búfer proporcionado.

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

Intenta exportar la clave actual en el formato PKCS#1 RSAPrivateKey codificado en PEM en un búfer proporcionado.

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

Intenta exportar la clave actual en el formato RSAPublicKey de PKCS#1 a un búfer proporcionado.

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

Intenta exportar la clave actual en el formato PKCS#1 RSAPublicKey codificado en PEM en un búfer proporcionado.

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

Intenta exportar la clave actual en el formato SubjectPublicKeyInfo de X.509 a un búfer proporcionado.

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

Intenta exportar la clave actual en el formato X.509 SubjectPublicKeyInfo codificado en PEM en un búfer proporcionado.

(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.

(Heredado de RSA)
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.

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

Intenta firmar el hash con la clave actual, escribiendo la firma en un búfer proporcionado.

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

Intenta firmar el hash con la clave actual, escribiendo la firma en un búfer proporcionado.

(Heredado de RSA)
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.

(Heredado de RSA)
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.

(Heredado de RSA)
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.

(Heredado de RSA)
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.

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

Comprueba los datos que se firmaron y a los que ya se aplicó un valor hash con el algoritmo y el modo de relleno especificados.

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.

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.

(Heredado de RSA)

Se aplica a