Cryptography ... An Overview
Ammar Ahmed
Information Security Engineer || MSc Cyber Security || Speaker || Penetration Tester || ISO 27001 Lead Implementer
Encryption...So you have heard this common phrase on TV, Radio, Internet or elsewhere people say it all the time and advertiser use it a lot "We use a very secure website/app with "...." Encryption" so what are they talking about exactly ? what is encryption ? and what it has to do with cryptography anyway ?!.
Let's start with the last question. Cryptography it self is derived from the Greek word "Kryptos" which mean "hidden or secret", so cryptography is actually a way of hiding the original massage from people who are not allowed to view it, by such a way that only the sender and the receiver can read and understand the massage to ensure the confidentiality of the data - confidentiality is actually the third part of the security triangle (CIA) which consist of three parts: C for confidentiality , I for integrity , A for availability.
To secure a message we have to use one of the cryptographic methodologies. something to have in mind that when we see encrypted message usually it will be like total random noise to us (which is the goal of the whole cryptography) but actually it's a calculated random noise (if that make sense to you) because if it is total random method we will not be able to decrypt it at all.
encryption : the process of making the massage look like random noise, unreadable to the unauthorized person.
decryption : the process of getting the real message out of the "random noise".
There are different types of cryptographic methods we will touch on briefly on some of them.
First of all we have to know the difference between symmetric keys encryption and asymmetric keys encryption.
Symmetric key encryption is the cryptographic methodology in which we use the same key for encryption and decryption - hence the name- the symmetric key encryption is relatively faster way of encryption than the asymmetric but the problem comes when the hacker/attacker get hold of the key you can anticipate what will happen here ?!, Yes he can decrypt our message!!.
And this where the asymmetric key cryptography enters the show. Asymmetric key cryptography uses different key for encryption and decryption, Asymmetric key is slower process than symmetric key cryptography. which is better ?! well it depends on what function you want to perform.
In the symmetric key cryptography we have Block ciphers which divide the massage (plain text) to blocks of m length and encrypt them one block at a time and send them to the other side and operate the decryption method (usually reverse of how you encrypt the date) to get the original message. Also there is the Stream cipher which encrypt the message one binary digit at a time and send it over so it's very fast in comparison to Block ciphers.
Examples of the Block ciphers is substitution cipher which substitute a set of data with another set of symbols for encryption and the most famous one are:
Homophonic substitution cipher
polyalphabetic substitution cipher
Another example of Block ciphers is the Transposition ciphers which re-order the data in way that makes it look like random noise.
in order to add more complexity to the Block cipher cryptography we can compose different kind of encryption together to get a more sophisticated functions.
Stream cipher examples are the like of Geffe generators which is based on LFSR (Linear Feedback Shift Register). we may discuss LFSR in a later article.
One of the widely known examples of Asymmetric key cryptography is the famous RSA encryption (public private key encryption) which you are probably used it when accessing this page (https on the left hand corner). we can go on details next time about the mechanism of how the RSA ( Rivest–Shamir–Adleman ) encryption and decryption work.
we have also different kind of hashing algorithm to ensure the integrity of our data ( that the data has not been modified )
Lastly Cryptography is a very big topic and maybe in the future I will write in detail about the LFSR and Geffe function for example. For now I just wanted to give you an entry level to the subject.