PKCS11 generación de pares de claves - atributos MODULUS_BITS y PUBLIC_EXPONENT

0

Estamos utilizando una interfaz PKCS # 11 de nivel bastante bajo y estamos intentando generar un par de claves para RSA con ella. Estamos utilizando el mecanismo RSA_PKCS_KEY_PAIR_GEN (0x00). Entre otros, hemos copiado los siguientes dos atributos de uno de los ejemplos de código de la interfaz:

MODULUS_BITS (0x0121) = 1024
PUBLIC_EXPONENT (0x0122) = { 0x01, 0x00, 0x01 }

Estamos bastante seguros de que los valores utilizados son solo valores de demostración y necesitamos usar diferentes en nuestro código de producción.

Dos preguntas en realidad:

  1. ¿Es MODULUS_BITS la longitud de la clave generada? Es decir, ¿es 4096 un buen valor hoy en día?
  2. ¿Es realmente necesario PUBLIC_EXPONENT? ¿Qué es?
pregunta D.R. 10.12.2018 - 20:00
fuente

1 respuesta

0
  1. Sí, MODULUS_BITS es la longitud de la clave. 4096 se supone que es bueno hoy en día.
  2. PUBLIC_EXPONENT es público y {0x01, 0x00, 0x01} = 65537 es un valor ampliamente utilizado desde:
    • es primordial
    • no es demasiado corto
    • no es demasiado largo y solo contiene dos '1' en su representación binaria, lo que hace que la exponenciación binaria sea más rápida (puede cifrar o verificar la firma más rápido)

PUBLIC_EXPONENT es realmente necesario en el algoritmo RSA, pero es posible que si lo omites, el algoritmo de generación usaría 65537 de forma predeterminada.

    
respondido por el Strigo 10.12.2018 - 20:57
fuente

Lea otras preguntas en las etiquetas