HMAC con o sin cifrado de datos?

6

Estoy en el proceso de desarrollar un sistema que transmite periódicamente una pequeña cantidad de datos (16/18 bytes), donde la única parte que cambiará es un contador de 4 bytes que se incrementará para cada transmisión. Los datos en sí no son confidenciales, por lo que el cifrado no es obligatorio, pero el receptor debe validar los datos mediante un algoritmo MAC; HMAC-SHA fue mi elección. Dado el hecho de que, para transmisiones sucesivas, solo se modificarán algunos bits de la carga útil de datos (el incremento del contador), ¿es seguro usar HMAC-SHA sin cifrado de datos o este tipo de implementación podría llevar a un atacante a generar MAC falsos? / p>     

pregunta samuele.forconi 14.01.2016 - 13:31
fuente

2 respuestas

2

Para establecer la integridad del mensaje, sí, HMAC-SHA debería estar bien.

La única preocupación que puede tener es en el caso de un ataque de hombre en el medio donde el mensaje podría ser interceptado, el contador cambió, el HMAC se regeneró y el mensaje modificado se transmitió al destinatario original. . En este caso, podría considerar el uso de un algoritmo de clave pública para firmar el hash HMAC (en realidad, una firma digital) para autenticar al remitente.

Editar: no es una preocupación a menos que las llaves queden en las manos equivocadas.

    
respondido por el Whome 14.01.2016 - 15:38
fuente
2

Los ataques en el cifrado no son ataques en MAC, ya que son dos entidades separadas para diferentes propósitos. Usted mismo respondió a la pregunta. Dado que no considera que los datos sean sensibles al rastreo, no necesita cifrado.

Sin embargo, para un MAC, tiene los siguientes problemas que pueden requerir el cifrado de otros datos:

  1. compartir claves: compartir la "clave" que produce el hash

  2. demostrando a un tercero (no rechazo) que los datos o la clave asimétrica del # 1 provinieron de usted y no de la persona a la que está enviando los datos. Ya que ahora pueden suplantarlo con la clave compartida con ellos ... Los MAC tienen una naturaleza simétrica, ya que es un "hash" con clave "

Para resolver el cifrado asimétrico # 1 es necesario transferir las claves que se utilizan para HMAC los datos. Para resolver el # 2 y / o verificar la clave asimétrica en el # 1, se debe configurar alguna PKI, ya sea una certificación o una red de confianza.

    
respondido por el dylan7 14.01.2016 - 15:45
fuente

Lea otras preguntas en las etiquetas