Hash en todos los mensajes anteriores

2

Estoy implementando un sistema similar a TLS , y me gustaría configurar un Finished de mensaje, para evitar los ataques de reproducción.

Hasta donde entiendo TLS , contiene un hash en los mensajes de intercambio anteriores, encriptados y firmados con el algoritmo elegido.

El servidor primero construye su marco Finished , con un hash de todos los mensajes anteriores. Luego se envía al cliente.

¿El cliente tiene que tomar el mensaje Finished del servidor como "mensaje anterior "? (para calcular un hash)

Porque, de no ser así, el contenido de hash es el mismo que el servidor, pero en un orden diferente (que generará un hash completamente diferente).

Dicen esto en el capítulo sobre el mensaje finalizado :

  

Todos los datos de todos los mensajes en este protocolo de enlace (no            incluyendo cualquier mensaje HelloRequest) hasta, pero sin incluir,            este mensaje.

En mi opinión, el cliente tiene que tomar el mensaje Finished recibido (del servidor) junto con otros mensajes de negociación.

    
pregunta EisenHeim 22.09.2015 - 11:47
fuente

1 respuesta

2

Esa sección de la RFC también dice:

  

El valor handshake_messages incluye todos los mensajes de handshake que comienzan   en ClientHello hasta, pero sin incluir, este mensaje finalizado. Esta   puede ser diferente de handshake_messages en la Sección 7.4.8 porque
  incluiría el mensaje CertificateVerify (si se envía). Además, el
  handshake_messages para el mensaje finalizado enviado por el cliente

  será diferente a la del mensaje finalizado enviado por el servidor,
  porque el que se envía en segundo lugar incluirá el anterior.

El cliente envía primero su mensaje finalizado, y luego el servidor envía su mensaje, incluido el mensaje finalizado anterior del cliente.

  

¿Pero no será el hash demasiado tiempo?

Un algoritmo de hash criptográfico siempre genera hashes de la misma longitud. Agregar más longitud a la entrada no aumenta la longitud de salida.

    
respondido por el SilverlightFox 22.09.2015 - 12:46
fuente

Lea otras preguntas en las etiquetas