참고 답변
Secure Sockets Layer (SSL) is a protocol for establishing encrypted links between two systems on a network, typically a client (like a web browser) and a server. This secure link ensures that all data transmitted between the two systems remains private and integral, contributing to network security. Here's a high-level description of how SSL works:
To start with, when a client wishes to make a secure connection, it sends a request to the server. The server responds by providing its SSL certificate, which includes the server's public key and other details like the certificate authority that issued it, its validity, etc.
The client verifies the server's SSL certificate. It checks if it's issued by a trusted certificate authority, if it hasn't expired, and if it matches the server's address or domain. If everything checks out, it creates a pre-master secret for the session and encrypts it with the server's public key from the certificate.
This encrypted pre-master secret is sent to the server. The server uses its private key to decrypt the pre-master secret. Both the client and server now generate session keys from this pre-master secret.
From this point onwards, the session keys are used to encrypt and decrypt the data exchanged between the client and server. Also, these keys are used to verify the integrity of the messages (that they haven't been altered in transit).
In essence, SSL provides an encrypted tunnel within which data can be safely transmitted, mitigating risks like data interception, tampering, or forgery. You'll often find it utilized on websites where sensitive data, such as personal information, login credentials, or credit card numbers, are transmitted.