¿Por qué ciframos la clave pública efímera en el intercambio de claves cifradas?

1

El intercambio de claves cifradas puede resistir un ataque de diccionario fuera de línea

Protocolo:

      A ---> B : Ep (PK)

      B ---> A : Ep(Epk(K))

K es la clave de sesión generada por B

PK es una clave pública efímera generada por A

B transfiere K a A utilizando doble cifrado.

PK es una clave pública, está destinada a ser pública. Me pregunto cuál es el propósito de cifrar la clave pública epheremal PK ??

    
pregunta Computernerd 20.11.2014 - 09:11
fuente

1 respuesta

5

El paso de "encriptación" es lo que convierte a EKE en un algoritmo de Password Authenticated Key Exchange ; el secreto compartido de baja entropía (la contraseña) se puede tolerar precisamente debido a ese paso.

Tenga en cuenta que es un cifrado especial; No estamos hablando de algo como AES aquí. La idea se puede expresar aproximadamente en los siguientes términos:

  • Hay un algoritmo de intercambio de claves no autenticado, por ejemplo, Diffie-Hellman .
  • Ambas partes cifran sus mensajes con la contraseña compartida como clave.
  • El "cifrado" debe ser tal que convierta cada mensaje en lo que podría ser estructuralmente otro mensaje válido para el algoritmo de intercambio de clave base.
  • Cada cifrado representa un compromiso .

El último punto es el más importante y, sin embargo, el más difícil de comprender. Cuando Alice envía su E p (g a ) (su mitad de DH, cifrada con la contraseña p ), ella confirma la contraseña p . Puede completar el cálculo de DH, es decir, encontrar el secreto de DH compartido gab , solo si ella asume que Bob también usó la misma contraseña p . Una Alicia falsa, tratando de adivinar p , puede intentar cambiar de opinión luego y pensar: bueno, envié E p ( g a ) pero tal vez Bob estaba usando la contraseña p ', por lo que Bob calculó D p' (E p (g a )) y terminó con un elemento de grupo ga' en el que se basó sus cálculos de DH ... y allí Alice falla, porque ella no puede saber ese valor a '. La capa de "cifrado con p y luego descifrado con p '" coloca a Alice fuera del DH interno. El resultado neto es que una transcripción de un solo protocolo de intercambio entre Alice y Bob puede servir para probar solo una contraseña, la contraseña p que Alice usó inicialmente. Esto es lo que protege la contraseña contra ataques de diccionario sin conexión.

(Todo sobre EKE y PAKE se encuentra en el párrafo anterior. Léalo una y otra vez hasta que lo entienda o su cabeza se caiga).

    
respondido por el Tom Leek 20.11.2014 - 13:31
fuente

Lea otras preguntas en las etiquetas