Estoy tratando de implementar, como un ejercicio, un protocolo basado en el conjunto de cifrado ECDHE-RSA-AES256-GCM-SHA384
.
Como entiendo, se usa ECDHE
para el intercambio de claves, RSA
para la autenticidad de la clave pública ECDHE, AES (en GCM) para el cifrado y SHA para obtener una clave aleatoria para usar con AES de la clave secreta derivada de ECDHE.
Ahora lo que no entiendo es que AES256 requiere una clave de 256 bits, pero SHA384 produce un resumen 384. Así que tengo dos preguntas:
- ¿Por qué no usar simplemente SHA256 aquí para producir un resumen cuyo tamaño coincida con el tamaño esperado para la clave de algoritmo de cifrado? (¿Tiene algo que ver con el hecho de que tanto AES256 como SHA384 operan más rápido en arquitecturas de 64 bits?)
- ¿Qué operación se debe realizar para usar el resumen de 384 bits como una clave AES256? ¿Mantener los primeros 256 bits? ¿O me estoy perdiendo algo?