¿Cómo convierte IPsec KEYMAT en claves de encriptación y autenticación?

2

IPsec es un protocolo marco que consiste en los subprotocolo ESP y AH. IPsec, por su parte, no incluye un mecanismo de intercambio de claves y, por lo tanto, depende de la configuración manual de las claves (arcaico) o del uso de IKEv1 o IKEv2 para establecer de forma segura las claves mutuas entre dos partes.

Al leer los RFC de IKE e IKEv2, sé que ambos generan en algún momento KEYMAT, que se debe pasar a IPsec para que IPsec pueda generar sus propias claves simétricas.

IKEv1 genera KEYMAT utilizando esta fórmula:

PFS Disabled:
KEYMAT = prf(SKEYID_d, protocol | SPI | Ni_b | Nr_b).

PFS Enabled:
KEYMAT = prf(SKEYID_d, g(qm)^xy | protocol | SPI | Ni_b | Nr_b)

IKEv2 genera KEYMAT con esta fórmula:

For the first Child SA:
KEYMAT = prf+(SK_d, Ni | Nr)

For all subsequent Child SA's
KEYMAT = prf+(SK_d, g^ir (new) | Ni | Nr )

En ambos casos, KEYMAT se pasa a IPSec para (probablemente) crear sus propias claves simétricas de cifrado y autenticación. Pero no he podido encontrar en ningún lugar las fórmulas que IPsec usa para tomar las claves KEYMAT y / o derivadas (SKEYID_d o SK_d) y crear sus propias claves.

Entonces, mi pregunta es, ¿Qué hace IPsec con KEYMAT para generar sus propias claves simétricas? Y también está relacionado, ¿Qué claves genera IPsec después de recibir KEYMAT? Aunque siento que responder la primera pregunta también responderá la segunda.

    
pregunta Eddie 04.12.2014 - 22:44
fuente

1 respuesta

1

La pila de IPsec no crea sus propias claves, o solicita cualquier clave, en su lugar, el daemon IKE genera tanto material de clave como sea necesario para los algoritmos de encriptación y autenticación negociados utilizando el PRF + ( que básicamente puede devolver una cantidad arbitraria de material clave). La forma en que se extrae el material clave de KEYMAT ampliado se describe en detalle en RFC 7296 (IKEv2), sección 2.17 . Luego, las claves resultantes se pasan con el resto de la información sobre una SA de IPsec a la pila. Con la interfaz PF_KEY estandarizada, por ejemplo, esto se hace con dos Extensiones de clave si se usa el cifrado y la autenticación.

    
respondido por el ecdsa 05.12.2014 - 09:13
fuente

Lea otras preguntas en las etiquetas