¿Qué tan "oficial" es el soporte de libressl en High Sierra?

0

Estoy intentando portar un programa C basado en OpenSSL de Linux a macOS, y me gustaría usar una biblioteca para TLS que es oficialmente compatible con el sistema operativo, porque entonces el sistema operativo mantiene esa biblioteca actualizada y seguro sin ningún trabajo adicional para mí o para el usuario de mi aplicación.

A pesar de que LibreSSL estaba oficialmente soportado en macOS y ya he portado mi programa con un servidor LibreSSL, pero no estoy seguro del estado de LibreSSL dentro de macOS. ¿Existe alguna documentación oficial que aborde si los desarrolladores deben tratar la biblioteca LibreSSL como si estuviera o no restringida?

PS: He buscado en el sitio de desarrolladores de Apple, pero La documentación oficial de Apple sobre la encriptación de la comunicación de red hace que NO HAY MUCHAS NOMBRES de LibreSSL (que no es lo mismo que OpenSSL).

    
pregunta rexroni 02.05.2018 - 20:33

3 respuestas

3

Para responder a la pregunta formulada:

  

¿Qué tan "oficial" es el soporte de libreSSL en High Sierra?

No hay soporte oficial. Apple pone a disposición todos los código de código abierto que utiliza en macOS / OS X. Desde la última versión de High Sierra (10.13.3) todo el camino de regreso a Lion 10.7.0, no se menciona a libreSSL.

Esto es no para decir que no funcionará si decides instalar las bibliotecas. Es que no usan oficialmente el código en macOS. Si lo hace funcionar y algo se rompe cuando actualiza macOS, usted podrá arreglarlo.

Apple ha desaprobado * OpenSSL y, en cambio, está utilizando Common Crypto , algo que Apple desarrolla.

* Se ha desaprobado, ya no se ha desarrollado pero no se ha eliminado. OpenSSL aún se incluye para la compatibilidad con versiones anteriores, pero a los desarrolladores se les notifica que no hay más desarrollos y deberían comenzar a utilizar la tecnología más reciente.

    
respondido por el Allan 27.08.2018 - 20:36
4

MacOS proporcionó openssl-0.9.8 (cuando el mundo estaba usando 1.0.2 y contemplando 1.1 y 1.1.1) hasta el lanzamiento de High Sierra. Ahora en MacOS 10.13.5 es libressl-2.2.7, mientras que la versión actual es 2.7.4.

Parece que el LibreSSL proporcionado por MacOS no viene con ningún motor, y no está claro si es posible agregarle un motor. Eso significa que no hay openssl usando claves en tokens de hardware accesibles a través de PKCS # 11, ningún RNG de hardware accesible a través de PKCS # 11 o RDRAND, etc. ACTUALIZACIÓN: Tampoco parece tener los archivos de inclusión necesarios para compilar sus aplicaciones. Así que parece que no puedes compilar tu software contra MacOS LibreSSL incluso si quisieras (bueno, puedes descargar LibreSSL-2.2.7 por ti mismo, etc.) pero estoy seguro de que no vale la pena. ).

Ya que no quiero escribir código que se ejecute solo en Mac, no puedo permitirme quedarme estancado con Apple Secure Transport o algo así.

Por lo tanto, mi recomendación personal sería instalar y trabajar con un openssl "real", instalarlo a través de Macports (como hice con el material de "producción" en mis sistemas) o Brew. En ese caso, los mantenedores de paquetes rastrearán las actualizaciones y las correcciones de seguridad para usted, pero usted mantiene la compatibilidad con su código de Linux con un mínimo esfuerzo.

    
respondido por el Mouse 25.06.2018 - 02:05
3

La biblioteca TLS admitida oficial en macOS es Apple Secure Transport :

  

Transporte seguro

     

Comunicación de red segura utilizando mecanismos de seguridad de capa de transporte estandarizados.

     

La API Security.SecureTransport le da acceso a la implementación de Apple de Secure Sockets Layer versión 3.0 (SSLv3), las versiones de seguridad de la capa de transporte (TLS) 1.0 a 1.2, y la versión de seguridad de la capa de transporte de Datagram (DTLS) 1.0.

    
respondido por el jksoegaard 03.05.2018 - 09:52

Lea otras preguntas en las etiquetas