El
proyecto OpenBSD ha lanzado la primera versión portátil de LibreSSL, OpenSSL
tenedor del equipo, lo que significa que se puede construir para sistemas
operativos distintos de OpenBSD.
El
proyecto LibreSSL, cuyo objetivo es limpiar el código de OpenSSL
inescrutable, fue fundada hace unos dos meses por un grupo de desarrolladores
de OpenBSD, por lo que sólo tiene sentido que conseguir que se ejecutan en ese
sistema operativo sería su prioridad.
Con
el lanzamiento de LibreSSL 2.0.0 el viernes, sin embargo, muchas de las
dependencias de OpenBSD han eliminado y la biblioteca ahora se puede construir
de varios sabores de Linux, Solaris, OS X y FreeBSD.
Tenga
en cuenta que esto sigue siendo considerablemente menos plataformas que la
biblioteca original OpenSSL compatible. Pero el enfoque de portabilidad de
OpenSSL se había convertido en uno de exageración extrema, con el código de la
incorporación de numerosos hacks y soluciones para hacer que se ejecute en este
tipo de plataformas obsoletas como VMS, OS / 2, NetWare, Windows de 16 bits, e
incluso DOS.
En
comparación, LibreSSL se centra en los sistemas operativos de tipo Unix, por
ahora, a pesar de un puerto de Windows puede aparecer en el futuro.
En
una presentación realizada en mayo, el desarrollador LibreSSL Bob Beck explicó que
gran parte del trabajo inicial sobre LibreSSL involucrados código de borrar que
sólo existía para proporcionar apoyo a los sistemas en desuso. Entre que el
esfuerzo y la eliminación de código redundante y sin usar, el grupo LibreSSL
fue capaz de reducir el tamaño de la base de código de OpenSSL en alrededor del
23 por ciento.
Los
desarrolladores LibreSSL también han trabajado para obtener el código fuente no
ortodoxa e inconsistente de OpenSSL en "forma kernel normal" (KNF),
un estilo de C estándar de codificación utilizado por el proyecto OpenBSD.
Además,
si bien el objetivo del proyecto es crear LibreSSL un sustituto seguro drop-in
para OpenSSL, los desarrolladores también han tratado de deshacer algunas de
las decisiones de diseño más desacertados de los desarrolladores de OpenSSL.
Por
ejemplo, la biblioteca OpenSSL se basa en una capa de administración de memoria
personalizada peculiar que se comporta de manera extraña, lo que hace que sea
imposible para auditar el código con herramientas diseñadas para problemas de
gestión de la memoria de la bandera. El equipo LibreSSL ha ido reemplazando
este código con nuevas rutinas que utilizan las rutinas de asignación de
memoria de la biblioteca estándar de C, lo que es mucho más fácil de detectar
errores.
La
versión portátil de LibrSSL 2.0.0 ya está disponible en el directorio LibreSSL
de los diversos sitios espejo de OpenBSD en todo el mundo.
Mientras
tanto, se sigue trabajando en un esfuerzo paralelo para limpiar la base de
código original OpenSSL, un proyecto que ha sido patrocinado por la Fundación
Linux, entre otros. El proyecto LibreSSL, por el contrario, dice que todavía no
ha recibido un compromiso estable de financiamiento
Fuente:
The Register