SSL Encryption: How Does It Work?

Mohit Varikuti
Geek Culture
Published in
5 min readJan 14, 2022

When you open a browser (called a client) and visit an encrypted website (called a server), an SSL handshake is triggered. Think of this SSL handshake process as a communication session between them. If detected, both parties begin a communication process known as the SSL/TLS handshake. An SSL handshake is an asymmetric encryption that allows the browser to verify the web server, obtain the public key, and establish a secure connection before the actual data transfer begins.

This includes the client’s SSL version number, encryption settings, session-related data, and other information that the server needs to communicate with the client over SSL. This includes the server’s SSL version number, encryption settings, session data, public key SSL certificates, and other information that clients need to communicate with the server over SSL. The browser uses SSL (https) to connect to the server. The server responds with a server certificate that contains the web server’s public key.

The web server sends a copy of its SSL certificate back to the browser or server. When your browser connects to an HTTPS server, the server will respond with its certificate. If the proxy sends a real certificate to the client, it cannot decrypt the information that the client sends to the web server.

Once the client confirms the validity of the SSL certificate, a “session key” is generated by the client and server. This secure connection cannot be established without an SSL certificate, which digitally binds corporate information to a cryptographic key. An organization must install an SSL certificate on its web server in order to initiate a secure session with browsers. Therefore, when the communication between the web browser and the server needs to be secure, the browser automatically switches to SSL, that is, provided that the server has an SSL certificate installed.

SSL certificates help keep online interactions private and guarantee the authenticity and security of websites where users exchange personal information. Websites require SSL certificates to protect user data, verify website ownership, prevent attackers from creating fake versions of websites, and ensure user trust. Businesses and organizations need to add SSL certificates to their websites to protect online transactions and keep customer information private and secure.

Typically, SSL is used to secure credit card transactions, data transfers, and logins, and more recently it has become the norm for securing browsing on social networking sites. Many websites use SSL for secure areas of their website, such as user account pages and online payments. Typically, when you are asked to “log in” to a website, the resulting page is secured with SSL, essentially creating a secure session. SSL encrypts the transmitted data, making it impossible for third parties to “intercept” the transmission and view the transmitted data.

SSL/TLS offers point-to-point security to keep data secure during transit. SSL/TLS connections ensure that no data is lost or corrupted during transmission, including the message authentication code or MAC.

This communication between client and server is carried out using a cryptographic technique called asymmetric cryptography or so-called public key cryptography. The client can encrypt a random number with the public key, send it to the server for decryption, and both parties use this number to establish a session key. So once the SSL handshake is complete, both the client and server have a valid session key, which they will use to encrypt or decrypt the actual data. For this to work, the CA certificate must be in the browser’s trusted store. The browser uses this public key to negotiate a session key with the server.

After your browser confirms that the SSL certificate is valid, it encrypts the data session using the website server’s public key. Data encryption is now set and information is securely transferred between your browser and the website. It’s like people getting to know each other before they feel safe to speak deeper, only it happens in the blink of an eye. The default strength of SSL/TLS is 256-bit encryption of the data in transit from the browser to the website server. TLS solves this problem by using asymmetric encryption only at the start of a session to encrypt the conversation, whereby the server and client must agree on a single session key that they will both use to encrypt their packets from then on.

On the other hand, the private key is stored on the server and used to decrypt the data. This type of key arrangement is very secure and is used in all modern encryption/signing systems.

SSL/TLS uses a public and private key system to encrypt and ensure data integrity. Almost all modern encryption methods use public and private keys. These keys and certificates are as secure as commercial keys and certificates, and can be considered more secure in most cases.

Anyone can create a certificate, but browsers only trust organization certificates from the list of trusted CAs. On Debian-based Linux systems, these root certificates are stored in the /etc/ssl/certs folder along with the ca-certificates.crt file. This standard allows certificates to carry a lot of information in addition to the public key and verified identity of the certificate holder; DigiCert is a CA that has a detailed breakdown of the standard in its knowledge base.

SSL or TLS certificates work by storing randomly generated keys (public and private keys) on the server. Digital certificates provide a convenient way to distribute trusted public encryption keys. SSL certificates protect your privacy by encrypting data between the client (usually a web browser) and the web server.

This means that the communication between your web application and website is encrypted. HTTP is just a protocol, but when it is associated with TLS or Transport Layer Security, it is encrypted.

The SSL protocol uses asymmetric and symmetric encryption to securely transfer data. Essentially, an SSL handshake is nothing more than a conversation between two parties (client and server) who want to achieve the same goal: to secure communications with symmetric encryption.

This connection is used to send emails to Gmail, etc. on the Internet, as well as for online banking, shopping, and more. SSL uses port number 443 to encrypt data exchanged between browsers and servers and authenticate users. After the certificate is successfully installed on the server, the application protocol (also known as HTTP) is changed to HTTPS, where S stands for secure.

SSL certificates, also known as Secure Socket Layer certificates, are used to secure connections between a browser and a server. SSL is a secure protocol designed to securely send information over the Internet. In general, SSL/TLS is an important protocol for building a secure network. This means that even if you think you’ve installed something called an SSL certificate, you’re probably actually using the most up-to-date and secure TLS protocol.

--

--

Mohit Varikuti
Geek Culture

Im some random highschooler on the internet who likes to write about AI and tech and stuff. Leave a follow if u like my stuff I really appreciate it!