Inicio / Blog / Let’s Encrypt: La democratización de los certificados SSL

Let’s Encrypt: La democratización de los certificados SSL

Publicado el 02/02/2016, por Antonio Rodríguez (INCIBE)
Let’s Encrypt: La democratización de los certificados SSL

Uno de los problemas que veníamos arrastrando desde hace años en cuanto a la seguridad de las comunicaciones web es el gran número de sitios que no utilizan todavía SSL/TLS para cifrar sus conexiones.

Las razones son diversas, pero quizá la más importante es que históricamente disponer de un certificado SSL resultaba económicamente inviable, especialmente para webs personales, PYMEs, o pequeñas tiendas online que no generan suficientes ingresos como para permitirse pagar por un certificado.

Hoy en día existen “certificados no premium” que son mucho más baratos, sin embargo sigue siendo “tabú” para mucha gente, y generan la falsa impresión de que al ser baratos “no protegen tanto”; aunque la realidad es que el certificado es solo un “mecanismo de confianza” en una entidad certificadora, y no tiene relación con lo robusto del cifrado (una web con un certificado autofirmado sigue estando cifrado, aunque no ha sido certificado por un tercero).

Para acabar con esta brecha, hace un tiempo nació Let’s Encrypt de la mano de un conjunto de investigadores de seguridad, y apoyado por grandes organizaciones como (entre otros), EFF, Mozilla, Google, Cisco, Akamai, ...

Let’s Encrypt es una Autoridad Certificadora sin ánimo de lucro que permite generar certificados SSL gratuítamente, y de forma automatizada y sencilla. La premisa es “democratizar” el uso de comunicaciones seguras poniendo a disposición de todo el mundo este tipo de certificados. Esta CA es ya soportada por la gran mayoría de los navegadores más utilizados.

Let's Encrypt en Chrome

Una de las grandes preocupaciones por parte de ciertos sectores en cuanto a la gratuidad de los certificados es el posible abuso de los mismos por parte de los desarrolladores de malware, que podrían empezar a utilizarlos para sus dominios maliciosos de forma regular y sencilla al no tener que invertir dinero.

Lo cierto es que, aunque si se lo pone más fácil, es algo que ya se venía haciendo con certificados de pago, especialmente con certificados de bajo coste, cuyo precio es ridículo en comparación con las ganancias que obtienen sus actividades delictivas.

Por otro lado, imponer una “dificultad económica” para frenar a los criminales es un gran error en seguridad; por un lado, es solo un pequeño escollo fácilmente salvable por ellos, sin embargo es una gran barrera para la gente que los necesita para fines lícitos, lo cual nos ha llevado a la situación actual, en la que un gran porcentaje de sitios web no están protegidos por razones puramente económicas.

Se ha conseguido el efecto contrario al de proteger a todo el mundo, creando una mayor inseguridad general por imponer un modelo de confianza basado en el dinero, en lugar de basarse en alguna autoridad internacional “pública”, función que si cumple por ejemplo ICANN para la asignación de dominios.

Otra de las falsas creencias es la de que este sistema permitiría crear certificados válidos para dominios ajenos, permitiendo así ataques MiTM.

Esto es una asunción un tanto precipitada, y presumiblemente alimentada por algunos mercaderes de certificados de pago no dispuestos a competir con alternativas gratuítas.

Cualquier certificado validado por dominio (DV) (Let’s Encrypt utiliza este sistema) es susceptible de este tipo de “ataque” (y enfatizo las comillas), pero para ello es necesario comprometer el dominio y obtener control sobre el mismo, en cuyo caso toda la estructura estaría ya comprometida, por lo que la protección que ofrece SSL/TLS quedaría anulada.

Cabe destacar que no solo los certificados de Let’s Encrypt se validan por dominio; todos los certificados comerciales de bajo coste también son DV, y podrían utilizarse para dominios comprometidos con la misma facilidad.

La ventaja de la validación por dominio es precisamente que facilita la automatización y la sencillez de su uso, sin trámites que se alargan en el tiempo, lo que ayudaría a conseguir el objetivo de que todas las webs utilicen cifrado en sus comunicaciones.

Es más prioritario conseguir que todo el mundo disponga de tráfico cifrado en sus comunicaciones web, que el intentar impedir el uso de cifrado a los criminales, esto último, una utopía en la que seguimos invirtiendo esfuerzos que deberíamos enfocar en otras estratégias.

Aunque el servicio de Let’s Encrypt todavía está en beta, es ya lo suficientemente maduro para utilizarlo en cualquier web, y con un mínimo de mantenimiento. Por el momento, los certificados tienen una vida de 3 meses, aunque pueden renovarse de forma automatizada y programada (por ejemplo, mediante cron) utilizando el software disponible en GitHub.

Dicho software dispone además de plugins que facilitan su instalación en servidores como Apache o Nginx, en incluso empiezan a aparecer plugins no oficiales para otras plataformas cloud, como Amazon AWS o Microsoft Azure.

Let’s Encrypt es una importante iniciativa, que puede marcar un antes y un después en la seguridad de las comunicaciones web.

Ya sea utilizando uno de pago, o uno gratuíto, ya no hay excusa para que todos empecemos a utilizar SSL/TLS.