SSL/TLS utiliza técnicas de criptografía simétrica y asimétrica para proteger la integridad de los datos.
En primer lugar, SSL/TLS utiliza un algoritmo de hash, como SHA-256, para generar un valor resumen único y fijo que representa la información de los datos. Este valor se conoce como firma o digest, y se envía junto con los datos. Cuando los datos llegan al destinatario, se utiliza el mismo algoritmo de hash para generar un nuevo valor resumen y se compara con la firma enviada previamente. Si los valores coinciden, significa que los datos no han sido modificados en el camino.
En segundo lugar, SSL/TLS utiliza criptografía asimétrica para garantizar la integridad de los datos. Durante el proceso de negociación SSL/TLS, el servidor y el cliente se ponen de acuerdo en un par de claves: una clave pública y una clave privada. La clave pública se comparte públicamente, mientras que la clave privada se mantiene en secreto. El cliente utiliza la clave pública del servidor para cifrar los datos, y solo el servidor puede descifrarlos con su clave privada. Si alguien intenta modificar los datos cifrados durante la transmisión, el cifrado dejará de funcionar y el destinatario no podrá descifrar los datos correctamente.
En resumen, SSL/TLS garantiza la integridad de los datos mediante el uso de algoritmos de hash y criptografía asimétrica para detectar y prevenir cualquier modificación o alteración malintencionada de los datos durante la transmisión.