TLS / SSL a través de USB usando OpenSSL [cerrado]

3

Quiero asegurar la comunicación de un dispositivo integrado que está conectado a un host a través de USB. Por el momento estoy considerando usar la biblioteca openssl. Puedo usarlo en el dispositivo integrado y en el host (win / linux). ¿Es posible utilizar terminales USB en lugar de sockets para establecer una conexión SSL segura a través de USB utilizando openssl?

    
pregunta tzippy 28.02.2018 - 09:10
fuente

1 respuesta

2

Edit: Lo siento, malinterpreté nuestra pregunta. Sí, es posible cambiar la capa de transporte. Simplemente puede cambiar las funciones de envío / lectura de la capa de transporte (TCP) con lo que desee. Sin embargo, tienes que mantener la estructura del servidor / cliente. Además, su capa de transporte debe ser confiable (como se explica a continuación) o usted debe usar DTLS.

Aunque este no sea el ámbito de la seguridad de la información, responderé de todos modos, porque estoy trabajando en un tema muy similar en mi tesis de licenciatura. No uso OpenSSL o GNUTLS porque su paso de memoria es demasiado grande para mi aplicación.

Eche un vistazo a la Comparación de bibliotecas TLS en Wikipedia . Hay una tabla para la portabilidad en la que la columna Sin sistema operativo puede ser interesante para usted. Como también comparé bibliotecas para mí, aquí están los resultados:

Comparé

Primero: si busca una implementación gratuita de código abierto que sea sin licencia GPL , mbedTLS es lo que está buscando. Con su licencia de Apache, puede usarla para proyectos de código cerrado sin problemas.

GuardTLS no es una imo muy emocionante, tampoco son GitHub muy activos. El equipo de WolfSSL es muy activo en GitHub y el producto se ve muy prometedor. Sin embargo, el repositorio de mbedTLS GitHub está mucho más respaldado por la comunidad. Fui por mbedTLS al final. Sin embargo, siempre depende de tus necesidades.

Una última sugerencia: si su capa de transporte no es confiable (paquetes fuera de orden o pérdida de paquetes), entonces necesita usar DTLS (TLS para protocolos de datagramas). Todas las bibliotecas anteriores son compatibles con DTLS.

    
respondido por el MemAllox 28.02.2018 - 14:53
fuente

Lea otras preguntas en las etiquetas