HMAC y no repudio

2

Esta fue una pregunta en un examen:

Dos personas están utilizando un canal de comunicación unidireccional y la funcionalidad HMAC (concretamente HMAC-SHA1). Elija la declaración correcta a continuación:

1) Podemos probar quién es el remitente, porque HMAC-SHA1 utiliza un secreto compartido, que ambos conocen. Aún más, el canal de comunicación solo funciona de una manera.

2) Podemos probar quién es el remitente, porque HMAC-SHA1 usa un secreto compartido, que ambos conocen.

3) El remitente puede negar que envió el mensaje, porque no se proporcionó confidencialidad.

4) Nada de lo anterior.

Se sabe que las preguntas de este examen son difíciles. Pienso que la respuesta 3 o 4 es correcta (necesita una firma digital para proporcionar el no repudio y la confidencialidad no tiene nada que ver con el no repudio), pero me inclino hacia la cuarta respuesta.

¿Cuál elegirías?

    
pregunta RunoTheDog 15.01.2015 - 10:09
fuente

2 respuestas

3

La respuesta 2 es absurda; dice literalmente "podemos probar quién es el remitente porque dos las personas tienen la capacidad de crear el MAC". Con un MAC, cualquiera de las partes podría haber creado el mensaje MACED; cada parte sabe quién lo creó (sabes si escribiste algo o no, y si no lo hizo el otro chico), pero no pueden probárselo a nadie más, ni pueden probar No lo crearon después del hecho. Para hacer eso, tendrían que poder demostrar que usted envió el texto a través del canal (incluida alguna prueba que no pudo haber sido manipulada en tránsito, por ejemplo, una persona a la que le dio la clave HMAC), pero si podrían hacer eso, así que podrían saltarse el HMAC y decir "él lo envió, aquí hay una prueba de que lo envió".

El canal unidireccional significaría que todo lo que se envió a través del canal no vino de la persona 2. Sin embargo, tendría que probar que el mensaje que presentó fue de hecho enviado a través del canal, y que nadie podría enviar un mensaje falso a través del canal (por ejemplo, después de que la persona 2 les haya dado la clave HMAC). Si alguien te envía algo a través de un canal en el que es verificable que pasó por ese canal y solo ellos pudieron enviar algo a través del canal, y ambas cosas pueden ser probadas, ese canal nuevamente brinda no repudio sin necesidad de HMAC.

El elemento compartido entre estos es que dos partes pueden crear HMAC válidos, y uno está tratando de probar que el otro creó uno en particular. Es como tener dos personas que tienen sellos de firma idénticos, con uno que intenta probar que el otro es el que selló algo. Un MAC por sí solo no puede ayudar con el no repudio, ya que cualquiera de las partes puede crearlos, lo que hace que tenga que probar que alguien es el que creó un MAC en particular, lo cual no es más fácil que mostrar que hizo el mensaje en el primer lugar. Así que las respuestas 1 y 2 no son correctas; el secreto compartido es por qué HMAC no puede proporcionar esto de manera efectiva. (En contraste, las firmas digitales no involucran a ambas partes para poder crearlas, por lo que son mejores para proporcionar el no repudio). (nota: el no repudio no es en realidad un concepto técnico, y los tribunales a menudo aceptan s/My Full Name/ como una firma en los documentos electrónicos; los HMAC podrían, de hecho, convencer a alguien lo suficiente como para confiar en la persona que afirma que usted escribió algo, incluso si no lo hacen. técnicamente evitan que lo falsifiquen).

La respuesta 3 es realmente incorrecta; La confidencialidad no es necesaria para el no repudio. Una de las mejores fuentes de no repudio es una declaración en audiencia pública; la no confidencialidad es parte de la razón por qué que proporciona el no repudio (es decir, todos pueden acceder a los registros).

Por proceso de eliminación, la respuesta es 4.

    
respondido por el cpast 15.01.2015 - 18:48
fuente
0

Yo diría 2.

La razón: Hay 2 tipos de no repudio: uno que puede demostrar a los demás y otro que no puede.

Hay esquemas que se hacen específicamente para evitar la posibilidad de demostrar a otra persona que X lo envió. Se llama firmas PGP no transferibles y continúa de esta manera:

Hash el mensaje con un MAC, usando un k aleatorio. Luego firma la k aleatoria con su clave privada y la cifra con la clave pública del destinatario.

Esto significa que el receptor puede probar (a sí mismo) que el remitente envió el mensaje, ya que el receptor sabe que no escribió el mensaje en sí mismo, lo que evita la falsificación del hombre en el medio. Pero dado que también el receptor conoce la clave MAC, y también debe revelar la clave MAC al verificador, no puede demostrar a los demás lo que el remitente envió, porque también podría crear ese mensaje.

En este caso, ambas partes ya tienen una clave compartida, por lo que no es necesario un intercambio de clave que use un k aleatorio cifrado y firmado. También puede ejecutar HMAC directamente en la clave compartida. Pero se aplica el mismo principio, que el receptor puede probarse a sí mismo que el remitente envió el mensaje, obteniendo el no repudio de esta manera, pero no puede demostrar a otros que envió el mensaje.

Pero el esquema de MAC mencionado no gana el no repudio a otros, no se puede demostrar a otras personas que alguien envió algo.

    
respondido por el sebastian nielsen 16.01.2015 - 23:49
fuente

Lea otras preguntas en las etiquetas