Dado un entero positivo , genera un par de claves RSA (tanto la clave privada como la pública) cuya longitud de clave es bits.
El algoritmo de generación de claves RSA es el siguiente:
- Elija un bit semiprime . Deje que los factores primos de sean y .
- Calcule .
- Elija un número entero tal que y .
- Calcule .
La clave pública se compone de y e . La clave privada es d .
Reglas
- Es posible suponer que existe al menos un semiprimo con la longitud de bits .
- La salida puede estar en cualquier formato coherente y sin ambigüedades.
- y deben elegirse entre distribuciones uniformes discretas.
- Puede suponer que es menor o igual que el número máximo de bits para enteros representables en su idioma, si su idioma tiene tal restricción.
Sandbox
Mego
¿Puedo usar utilidades RSA existentes en un envío bash?
Pavel
1
Entonces, ¿desea específicamente la distribución uniforme en todos los semiprimes de N bits?
Misha Lavrov
1
¿Existe realmente una solución para ? Creo que tenemos en ese caso, lo que hace que sea imposible elegir . λ ( n ) ≤ 2 e
Arnauld
2
Además, recomiendo encarecidamente vincular a la pila de cifrado para obtener una explicación sobre los primos de N bits en el contexto de RSA, o explicar mejor el concepto en la pregunta, ya que no es obvio.