Perfect Forward Secrecy es un estilo de cifrado que produce intercambios temporales de claves privadas entre servidores y clientes. Se utiliza principalmente en aplicaciones de llamadas, páginas web y aplicaciones de mensajería donde la privacidad de los usuarios es de suma importancia. Cada vez que el usuario realiza una acción, se genera una nueva clave de sesión por lo que los datos no se ven comprometidos y están a salvo de los atacantes, que es independiente de la clave especial.
En caso de que la clave de sesión se vea comprometida, los datos de cualquier otra sesión no se verán comprometidos porque se generará nuevamente una nueva clave de sesión cada vez que el usuario o el cliente inicie una sesión. Los datos de las sesiones anteriores permanecen a salvo de ataques en el futuro.
La idea básica detrás de la técnica Perfect Forward Secrecy es generar nuevas claves de cifrado cada vez que el usuario inicia una sesión, de modo que si la clave de cifrado se ve comprometida solamente, esa conversación se filtraría y si la clave especial del usuario se ve comprometida, la conversación aún estar a salvo del atacante debido a la clave de cifrado que genera Perfect Forward Secrecy. Básicamente brinda protección de doble capa contra los atacantes.
Cifrado:
El cifrado se realiza para evitar que los atacantes espíen la información. Los mensajes o datos son básicamente convertidos en códigos (texto cifrado) para que se oculte el verdadero significado. Los datos a cifrar se denominan texto sin formato y los datos codificados o cifrados se denominan texto cifrado. Se requiere una fórmula o algoritmo particular para descifrar la información del texto cifrado, se llama cifrados o algoritmos de cifrado.
¿Cómo funciona Perfect Forward Secrecy?
Suponga que hay un cliente (C) y un servidor (S). El cliente envía un «hola del cliente», que es el comienzo del protocolo de enlace TLS. El servidor devuelve un «certificado» que tiene la clave pública que tiene el servidor. Ofrece una clave pública para todos porque es pública. Luego, el cliente calculará un «secreto maestro previo» y lo cifrará utilizando la clave pública que se incluyó en el certificado que se envía al servidor. Luego, el servidor usa su clave privada para descifrar la clave maestra previa.
A partir del secreto premaestro, el cliente y el servidor generarán la clave maestra o la clave de sesión que se utiliza para el cifrado masivo, que es principalmente AES. El algoritmo de cifrado AES (también conocido como algoritmo Rijndael) es un bloque simétrico. algoritmo de cifrado. AES se implementa en software y hardware en todo el mundo para cifrar datos confidenciales.
Los problemas surgen cuando esta clave pública se ve comprometida. Si lo hace, toda la información se descifrará porque el secreto premaestro y el secreto maestro están encriptados por esta clave privada y, por lo tanto, toda la comunicación.
Para superar este problema, se utiliza el conjunto de cifrado de intercambio de claves efímeras Diffie-Hellman . Aquí, después de que el cliente envía un mensaje, el servidor genera un número primo, un módulo y un entero aleatorio y calcula un valor, digamos A, y lo envía de vuelta al cliente. Ahora el cliente también genera un valor, digamos B, utilizando el mismo número primo y módulo, pero el entero aleatorio se selecciona solo. El valor B se devuelve al servidor. Usando estos valores y matemáticas realmente complejas, generan el mismo secreto maestro previo y luego se genera la clave maestra.
Entonces, llegamos al mismo resultado que antes, solo que con un enfoque diferente, pero sin tener que lidiar con la clave privada. Por lo tanto, no hay forma de que se comprometa. El valor aleatorio (A y B, tomados como ejemplos) se vuelve a generar en cada sesión que inicia el cliente, por lo que si estos valores aleatorios se ven comprometidos de alguna manera, solo la conversación de esa sesión se verá comprometida y tan pronto como se inicie una nueva sesión. , se generan nuevas claves premaestras y claves maestras, etc., por lo que es extremadamente difícil para los atacantes capturar la información.
ventajas:
Perfect Forward Secrecy es un estilo de cifrado altamente eficiente y ahora lo utilizan varios sitios web y aplicaciones. La clave de cifrado se cambia con cada mensaje de texto recibido y enviado, llamada telefónica realizada o incluso actualización de página. Aunque los ataques de fuerza bruta pueden eventualmente penetrar en sistemas muy seguros con suficiente tiempo y recursos informáticos, un servidor protegido por Perfect Forward Secrecy garantiza que los ataques de fuerza bruta no tendrán éxito. Por lo tanto, un servidor protegido por Perfect Forward Secrecy es mucho menos atractivo para los atacantes, ya que requiere mucho esfuerzo para entrar.
Usos de Perfect Forward Secrecy:
Este estilo de encriptación se usa cuando la privacidad del usuario es una gran preocupación, como en organizaciones bancarias, Twitter, Gmail, WhatsApp, Facebook Messenger, etc. de daño es causado.