Cryptography of the Internet - Part 1

Now that I have talked about and Private-key Cryptography (Part Base article) and about Public-key Cryptography (Part 0 article), I am writing about the way that GnuPG handles its so called Public-key Cryptography; which should be more accurately described as a Hybrid-type of Cryptography (between and Public-key and Private-key Cryptography). I call this Hybrid-kind of Cryptography as Session-key Cryptography.

Zero (One) of the problems with (pure) Public-key Cryptography is that it is estimated to be 1000 times slower than Private-key Cryptography. So, Session-key Cryptography was designed as a way for GnuPG to handle its Public-key Cryptography. Taking the best out of both other types of Cryptography.

For Session-key Cryptography, GnuPG generates a random string of characters, called a session key. And, GnuPG applies Private-key Cryptography on the message using this session key as the secret number.

Then, GnuPG uses Public-key Cryptography only on that session key (the secret number), by using the Public-key Cryptography's public key of the recipient of the message.

And, both the ciphered message and the ciphered session key are sent to the recipient.

On the recipient side, Public-key Cryptography's private key of the recipient is used to reveal the session key. And then, the recipient's GnuPG software uses the revealed session key as a Private-key Cryptography's secret number, to decipher the message. Now the recipient can read the pre-ciphered message.

Session-key Cryptography is an ingenious way that PGPs cryptosystems (such as GnuPG) do employ as its, misleadingly named, Public-key Cryptography.

tags: #gnupg #public_key #publickey #cryptography #key #privacy


keyboardan

gopher://tilde.club/1/~keyboardan/
http://tilde.club/~keyboardan/