Desde el descubrimiento del asunto Heartbleed aparecieron distintos fork como LibreSSL, nacido de la pérdida de confianza en OpenSSL el proyecto original. Ahora se une BoringSSL, un fork de OpenSSL iniciado por Google, que
parece también querer aportar su granito de arena.
La intención de Google, en principio, no es competir
con OpenSSL ni con LibreSSL, y de hecho Google ha aportado el sueldo de dos
desarrolladores a tiempo completo para trabajar en corregir los errores en
OpenSSL. En términos de desarrollo, a la larga les resulta más cómodo mantener
su propio fork de OpenSSL (e importar cambios de OpenSSL y LibreSSL) que estar
reaplicando sus parches para cada nueva versión del proyecto original.
Además, de ese modo cada producto de Google que haga
uso de OpenSSL (sea Chrome en cada plataforma, Android, Chromecast...) podrán
utilizar BoringSSL. Es especialmente complejo mantener un código distinto para
cada dispositivo y plataforma (dado que no todos ellos necesitan la totalidad
de los parches que aplica Google). Esta librería debería ayudar también en ese
sentido.
Este proyecto ha surgido de una necesidad interna por
parte de la propia Google, que se encargó de comenzar a limpiar el código que
utilizaban, así como de corregir algunos fallos que ahora forman parte del
proyecto original. Con el paso del tiempo han decidido liberarlo y, de ese
modo, toda la comunidad puede participar de su desarrollo.
Recomendación
- Podéis
ver el código fuente en el servidor Git de Google, por si queréis
revisarlo, contribuir a él o incluso hacer un fork del fork. https://boringssl.googlesource.com/boringssl/
Más información
- ImperialViolet https://www.imperialviolet.org/2014/06/20/boringssl.html