RSA vs ECDSA
RSA y ECDSA son los dos algoritmos de clave pública más usados para firmas digitales y certificados TLS, con un compromiso muy distinto entre tamaño de clave y seguridad.
| Base matemática | Factorización de números primos grandes | Curvas elípticas |
| Tamaño de clave equivalente a 128 bits de seguridad | 3072 bits | 256 bits |
| Velocidad de firma | Más lenta | Más rápida |
| Tamaño del certificado | Mayor | Menor (~4x más compacto) |
| Antigüedad | 1977 | 2005 (estandarización amplia) |
| Adopción actual en TLS | Muy extendida, sobre todo en sistemas legacy | Creciente, por defecto en muchos proveedores modernos (Let's Encrypt, Cloudflare) |
RSA es el algoritmo de clave pública más veterano y extendido, basado en la dificultad de factorizar el producto de dos números primos muy grandes. Lleva usándose en TLS, SSH y firmas digitales desde los años 90, y su seguridad depende directamente del tamaño de la clave: donde antes 1024 bits se consideraban seguros, hoy el mínimo recomendado son 2048 bits, y 3072-4096 bits para uso a largo plazo.
ECDSA (Elliptic Curve Digital Signature Algorithm) logra un nivel de seguridad equivalente con claves muchísimo más pequeñas, gracias a que el problema matemático del logaritmo discreto sobre curvas elípticas es más difícil de resolver por bit de clave que la factorización de RSA. Una clave ECDSA de 256 bits ofrece una seguridad comparable a una RSA de 3072 bits, lo que se traduce en certificados más ligeros, handshakes TLS más rápidos y menos carga computacional en el servidor.
La contrapartida histórica de ECDSA es la compatibilidad: RSA está soportado prácticamente en cualquier sistema, por antiguo que sea, mientras que ECDSA requiere librerías y clientes algo más modernos (en la práctica, esto ya deja de ser un problema real salvo en sistemas muy legacy). Por eso muchos proveedores de certificados ofrecen ambos, o incluso certificados duales, sirviendo ECDSA a los clientes que lo soportan y RSA como respaldo para el resto.
Para un servidor web moderno, la recomendación habitual es ECDSA (curva P-256) por su mejor rendimiento, salvo que existan requisitos concretos de compatibilidad con sistemas antiguos que solo entiendan RSA. En el caso de SSH, la elección de algoritmo de clave sigue una lógica parecida: Ed25519 (otra variante de curva elíptica) es hoy la opción recomendada por rapidez y seguridad frente a RSA.
Herramientas relacionadas
Preguntas frecuentes
¿ECDSA es siempre mejor que RSA?
Es más eficiente en tamaño y velocidad para un mismo nivel de seguridad, pero RSA sigue siendo perfectamente seguro con claves de tamaño adecuado (2048 bits o más) y tiene mejor compatibilidad con sistemas muy antiguos.
¿Puedo mezclar RSA y ECDSA en el mismo servidor?
Sí, muchos servidores web permiten configurar certificados duales para servir ECDSA a clientes compatibles y RSA como fallback, maximizando rendimiento sin sacrificar compatibilidad.
¿Qué tiene que ver esto con Bitcoin?
Bitcoin y otras criptomonedas usan precisamente ECDSA (sobre la curva secp256k1) para firmar las transacciones, aprovechando claves compactas y verificación rápida.
Otras comparativas