RSAParameters Estructura

Definición

Representa los parámetros estándar para el RSA algoritmo.

public value class RSAParameters
public struct RSAParameters
[System.Serializable]
public struct RSAParameters
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct RSAParameters
type RSAParameters = struct
[<System.Serializable>]
type RSAParameters = struct
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type RSAParameters = struct
Public Structure RSAParameters
Herencia
RSAParameters
Atributos

Comentarios

La RSAParameters estructura representa los parámetros estándar para el algoritmo RSA.

La RSA clase expone un método ExportParameters que permite recuperar la clave RSA cruda en forma de una estructura RSAParameters.

Para comprender el contenido de esta estructura, ayuda a familiarizarse con el funcionamiento del RSA algoritmo. En la sección siguiente se describe brevemente el algoritmo.

Algoritmo RSA

Para generar un par de claves, empiece por crear dos números primos grandes denominados p y q. Estos números se multiplican y el resultado se denomina n. Dado que p y q son números primos, los únicos factores de n son 1, p, q y n.

Si solo consideramos números que son menores que n, el recuento de números que son relativamente primos a n, es decir, no tienen factores comunes con n, iguales (p - 1)(q - 1).

Ahora elige un número e, que es relativamente primo para el valor calculado. La clave pública ahora se representa como {e, n}.

Para crear la clave privada, debe calcular d, que es un número tal que (d)(e) mod (p - 1)(q - 1) = 1. De acuerdo con el algoritmo euclidano, la clave privada ahora es {d, n}.

El cifrado de texto no cifrado m al texto cifrado c se define como c = (m ^ e) mod n. A continuación, el descifrado se definiría como m = (c ^ d) mod n.

Resumen de campos

Sección A.1.2 del PKCS #1: RSA Cryptography Standard define un formato para las claves privadas RSA.

En la tabla siguiente se resumen los campos de la RSAParameters estructura. La tercera columna proporciona el campo correspondiente en la sección A.1.2 de PKCS #1: RSA Cryptography Standard.

RSAParameters campo Contiene Campo PKCS #1 correspondiente
D d, el exponente privado privateExponent
DP d mod (p - 1) exponente1
DQ d mod (q - 1) exponente2
Exponent e, el exponente público publicExponent
InverseQ (InverseQ)(q) = 1 mod p coeficiente
Modulus n Módulo
P p prime1
Q q prime2

La seguridad de RSA se deriva del hecho de que, dada la clave pública { e, n }, es computacionalmente inviable calcular d, ya sea directamente o mediante la factorización de n en p y q. Por lo tanto, cualquier parte de la clave relacionada con d, p o q debe mantenerse en secreto. Si llama a ExportParameters y solicita solo la información de la clave pública, por eso solo recibirá Exponent y Modulus. Los demás campos solo están disponibles si tiene acceso a la clave privada y lo solicita.

RSAParameters no se cifra de ninguna manera, por lo que debe tener cuidado al usarlo con la información de clave privada. Todos los miembros de RSAParameters se serializan. Si alguien puede derivar o interceptar los parámetros de clave privada, la clave y toda la información cifrada o firmada con ella están en peligro.

Campos

Nombre Description
D

Representa el D parámetro para el RSA algoritmo.

DP

Representa el DP parámetro para el RSA algoritmo.

DQ

Representa el DQ parámetro para el RSA algoritmo.

Exponent

Representa el Exponent parámetro para el RSA algoritmo.

InverseQ

Representa el InverseQ parámetro para el RSA algoritmo.

Modulus

Representa el Modulus parámetro para el RSA algoritmo.

P

Representa el P parámetro para el RSA algoritmo.

Q

Representa el Q parámetro para el RSA algoritmo.

Se aplica a

Consulte también