El intercambio de los exponentes públicos y privados en RSA incurre en dos problemas:
- No funciona.
- Es inseguro.
El "no funciona" se refiere a implementaciones implementadas de SSL en clientes . Aunque la definición formal de RSA permite un exponente público arbitrariamente largo, algunas implementaciones de RSA ampliamente implementadas esperan que el exponente público se ajuste en un entero de 32 bits (en particular, CryptoAPI de Windows).
El punto sobre la inseguridad es que un exponente privado demasiado corto debilita el sistema. Se ha demostrado un ataque, que muestra cómo recuperar la clave privada si la longitud del exponente privado es inferior al 29% de la longitud del módulo; esto significa que si usa un módulo RSA de 2048 bits (como debería), y establece la longitud del exponente privado en menos de 600 bits, entonces se aplica un ataque implementado ya descrito. La sabiduría colectiva de los criptógrafos es que los exponentes privados significativamente más cortos que el módulo son un riesgo demasiado grande.
Por lo tanto: no, no debes intentar acortar los exponentes privados de RSA, por muy tentador que sea.
Si tiene poco poder de cómputo, quizás desee investigar algoritmos alternativos basados en curvas elípticas. Un conjunto de cifrado "ECDSA_ECDHE" evitaría los cálculos RSA y proporcionaría un rendimiento sustancialmente mejor para el protocolo de enlace TLS (sin embargo, no será compatible con IE 8 en Windows XP como cliente).