Deep dive with SSL certificates
Introduction
I figured that I never really understood certificates the way I want to, but knowing about them is of paramount importance to any software developer. This article is my effort to do a deep dive on certificates lifecycle. I am not sorry the length of the article as I have tried to move slow and explain myself every nuances of the process. Still interested?
Grab a coffee and let’s start.
The end idea is that how can we create a mechanism by which a server and a client can establish a secured connection so that they can talk to each other.
Now it is not easy as it might sound like. The process of establishing a secured channel between a server and a client involves in creating an encrypted connection between the server and the client, so that any one sitting in between the server and the client may not know what is going on, as because the connection is encrypted, they only see scrambled data, unless they have a way to parse the data and see what is going on.
Types of encryption
There are 2 types of encryption mechanism used today.
Symmetric
Here the encryption and decryption is done using the same key. Though it sounds like a easy way to achieve encryption, the real pain is the distribution of the encryption key from the one who in encrypting to the one who needs to decrypt the data.
This is a simple technique and…