Romper un protocolo de autenticación basado en una clave simétrica precompartida


13

Considere el siguiente protocolo, destinado a autenticar A (Alice) a si (Bob) y viceversa.

A→si:"Soy Alice",RUNsi→UN:mi(RUN,K)UN→si:mi(⟨RUN+1,PAGUN⟩,K)
  • R es un nonce aleatorio.
  • es una clave simétrica precompartida.K
  • es una carga útil.PAG
  • medios m cifran con K .mi(metro,K)metroK
  • medios m 1 ensamblado con m 2 de una manera que puede ser decodificado de forma inequívoca.⟨m1,m2⟩m1m2
  • Suponemos que los algoritmos criptográficos son seguros e implementados correctamente.

Un atacante (Trudy) quiere convencer a Bob para que acepte su carga útil como proveniente de Alice (en lugar de P A ). ¿Puede Trudy hacerse pasar por Alice? ¿Cómo?PTPA

Esto se modificó ligeramente del ejercicio 9.6 en Seguridad de la información: Principios y práctica de Mark Stamp . En la versión del libro, no hay , el último mensaje es solo E ( R A + 1 , K ) , y el requisito es que Trudy "convenza a Bob de que ella es Alice". Marca del sello nos pide encontrar dos ataques, y los dos me encontré permite Trudy para forjar E ( R + 1 , K ) , pero no E ( ⟨ R , P T ⟩ , K )PAE(RA+1,K)E(R+1,K)E(⟨R,PT⟩,K).


Ver discusión sobre las etiquetas de criptografía / seguridad en meta
— Ran G.

Respuestas:


5

Este protocolo parece ser inseguro debido al hecho de que Bob envía . Esto puede ser usado por Trudy "generar" encriptaciones de E ( ⟨ R A + 1 , P T ⟩ , K ) que posteriormente se utiliza para completar el protocolo de autenticación.mi(RUN,K)mi(⟨RUN+1,PAGT⟩,K)

Específicamente, considere el siguiente ataque:

Trudy elige azar y ejecuta el protocolo con Bob de la siguiente manera: T → B :R1

T→si:"Soy Alice",⟨R1+1,PAGT⟩si→T:mi(⟨R1+1,PAGT⟩,K)

T→si:"Soy Alice",R1si→T:mi(R1,K)T→si:mi(⟨R1+1,PAGT⟩,K)
K

mi(⟨1,RUN⟩)mi(⟨2,RUN+1,PAG⟩)

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.