Detectar si las claves AES y hmac no son válidas

1

Tengo un servidor que tiene un valor configurado de AES y clave HMAC. El cliente también debe tener las mismas claves.

Cuando el cliente envía una solicitud, el servidor interpreta esta solicitud y lee el mensaje.

Ahora, cuando el cliente tiene las claves AES y HMAC incorrectas, el servidor aún interpretará la solicitud del cliente pero obtendrá el mensaje incorrecto, ya que las claves AES y HMAC son diferentes.

¿Hay alguna forma en que el servidor pueda saber si las claves AES y HMAC utilizadas por el cliente son incorrectas? Según entiendo, el servidor recibirá el mensaje incorrecto después de descifrar la solicitud del cliente, pero no puede saber si las claves utilizadas por el cliente son incorrectas.

    
pregunta Anand 11.06.2015 - 17:59
fuente

1 respuesta

1

El servidor nunca debe siquiera intentar descifrar el mensaje. Si las claves HMAC son diferentes entre el servidor y el cliente, la autenticación debería fallar (el servidor no podrá crear el mismo MAC a partir del texto cifrado y la clave del servidor, ya que la clave del servidor no es la misma que la clave del cliente , y el proceso debería abortar.

Ahora, si está haciendo algo subóptimo como MAC-then-Encrypt, o MAC-and-Encrypt, tiene otros problemas, pero aún no podrá autenticar el texto sin formato ya que ni el texto en claro ni El MAC coincidirá y, en ese momento, debe saber que tiene un problema.

    
respondido por el Xander 11.06.2015 - 18:06
fuente

Lea otras preguntas en las etiquetas