Estoy revisando para un curso de seguridad informática y estoy atascado en una de las preguntas anteriores. Aquí es:
Alice ( ) quiere enviar un mensaje corto a Bob ( ) usando un secreto compartido para autenticar que el mensaje proviene de ella. Ella propone enviar un solo mensaje con dos piezas:
donde es una función hash y denota concatenación.
- Explique con cuidado qué hace Bob para verificar que el mensaje proviene de Alice y por qué (aparte de las propiedades de ) puede creerlo.
- Suponga que no satisface la propiedad unidireccional y es posible generar imágenes previas. Explica qué puede hacer un atacante y cómo.
- Si generar imágenes previas es relativamente lento, sugiera una contramedida simple para mejorar el protocolo sin cambiar .
Creo que sé el primero. Bob necesita tomar un hash del mensaje recibido junto con su clave compartida y comparar ese hash con el hash recibido de Alice, si coinciden, esto debería probar que Alice lo envió.
Sin embargo, no estoy seguro de las segundas dos preguntas. Para el segundo, ¿la respuesta sería que un atacante simplemente puede obtener el mensaje original dado un hash? Sin embargo, no estoy seguro de cómo se haría eso.