Hi there, How are you?
Fine! Ok. So, let's talk about Cryptography.
Suppose, You have a message, a secret message. And, you want to send it to your friend(s), in such a way that noone else, other than you and your friend(s) can read that message. In other words, you want your message to be hidden in the plain sight!
So what do you do? You turn to Cryptography.
Cryptography deals with techniques that can help you keep the information secret and safe. That's it.
And, wait..., here 'friends' could be anyone.
During a war, allies in an army are 'friends', and want to communicate important messages and notices secretly. They use Cryptography.
When you do online shopping and online bank transactions, you and the Bank are also 'friends', and you want to communicate your secret PIN or password. There is also Cryptography in use.
In fact, in the modern world of Information Technology, Cryptography is used extensively to make the online communication safe. Just imagine, on the Internet, there are millions of users from around the globe just like you, everyone connected over the same network; and when people try to communicate over such highly public medium, won't they want to make sure that their messages are secure, safe and concealed. Obviously, now more than ever.
So, Cryptography is very, very important today. But how is it? What does it looks like?
Well, It's simple (but sometimes not easy).
Basically
i) you have your message in plaintext
(let's say, "MEET BEHIND HOME TWO PM"),
ii) which you convert into some 'gibberish-looking' 'not-making-sense' text called 'ciphertext',
(ex: "ZRRG ORUVAQ UBZR GJB CZ")
iii) using some technique.
And then you send it to your friend who converts that ciphertext back to plaintext again with the help of the same technique, revealing your hidden message to him/her.
But wait! there is a mistake in the above approach.
If your friend can convert-back the ciphertext to plaintext, by just knowing the technique that you used; then so can anyone else!
In other words, anyone who knows the technique used by you, can easily decipher your secret message, even if you do not want. Well, this is like just 'encoding-decoding'. But, we want something else, something more.
We want to share the secret message ONLY with our few trusted friends. So, what else can we do?
Here is one approach.
What if, instead of using: Plaintext + Technique = Ciphertext;
we use: Plaintext + some key + Technique = Ciphertext.
Now, what is 'some_key'? Depends on the technique. That can be a word, a book, a number, etc. It will become more clear when we will discuss the techniques in next posts. But before that, let's see how wonderfully this approach works!
Now, you use not-only some technique, but also a secret 'key' to convert your plaintext to gibberish-looking-text/ciphertext. Now even if the techinque used by you is known publicly to everyone; only those people who know the secret 'key' will be able to decipher/'decrypt' the ciphertext successfully.
Now, you only need to share the secret 'key' to your friends, and then whenever you send them some ciphertext (which will be unreadable for everyone else), they will be able to easily decipher it with their copy of your secret 'key'.
Great! Mission Accomplished! That's what we want. To share secret message with selected friends!
There also exist few more approaches, more advanced and more clever, where you don't even need to tell your friends your secret key!
But that's for some other time.