¿Es seguro el cifrado simétrico con una sola clave precompartida?

3

Supongamos que tengo un canal seguro entre el cliente y el servidor, con la validación de certificados adecuada, etc. (en realidad, sesión ssh).

Quiero establecer una conexión segura entre mi propia aplicación en un servidor y un cliente, pero no quiero implementar TLS o algún tipo de validación de certificado, o enviar mis datos a través del túnel SSH.

¿Es suficiente generar una clave aleatoria fuerte, enviarla a través de la sesión ssh y simplemente usar esa clave para el cifrado simétrico, por ejemplo, AES?

Editar. Comprendí que mi pregunta no estaba lo suficientemente clara. La verdadera pregunta debería verse así:

Si tengo una clave de un solo uso pre-compartida, ¿vale la pena usar TLS? ¿Qué problemas puedo encontrar con mi propia implementación utilizando un cifrado simétrico fuerte, como AES?

    
pregunta deniss 26.03.2016 - 23:37
fuente

1 respuesta

8

Básicamente, no.

Ni siquiera has recorrido la mitad del camino para describir tu sistema. ¿Utilizará un cifrado de flujo o un cifrado de bloque? ¿Cómo va a autenticar este tráfico? ¿Cómo lo protegerá de los ataques de reproducción, los ataques de volcado de bits, los ataques de sincronización, etc.?

Una vez que hayas solucionado todas las vulnerabilidades en tu sistema, creo que encontrarás que se parece a TLS de todos modos. Excepto que probablemente habrás perdido algunas cosas en el camino. Terminarás poniendo mucho esfuerzo en hacer una implementación defectuosa de algo que ya puedes tener gratis.

Utilizar TLS desde el principio parece ser lo más sensato de hacer aquí.

    
respondido por el squeamish ossifrage 27.03.2016 - 00:08
fuente

Lea otras preguntas en las etiquetas