Cryptography is the study and the use of techniques to secure communication and prevent information from getting into the hands of unauthorised parties. Cryptography makes it possible for encrypted files, folders, or network connections to become accessible to only permitted users.
Before the modern age, cryptography was synonymous with encryption, which is the process of transforming common information (called plaintext) into an incomprehensible format (called ciphertext). In recent times, cryptography has broadened in use beyond privacy and is now used for message integrity checking, sender/receiver identity authentication, digital signatures, interactive proofs and secure computation.
Cryptography can be applied in various instances like electronic commerce, chip-based payment cards, digital currencies, computer passwords, military communications, among others.
Types of Cryptography
There are 3 different types of cryptography that exists:
1. Secret Key Cryptography
Secret key cryptography which is also known as symmetric cryptography makes use of a single key to encrypt data from unauthorised parties. A single key can be used for the encryption and decryption of data in symmetric cryptography. Examples of symmetric cryptography include AES, DES, Caesar Cipher, etc.
2. Public Key Cryptography
Public Key Cryptography, also called asymmetric cryptography, uses two keys for data encryption. One key is used to encrypt data and the other is used to decrypt the data. One of the keys is a public key that can be shared with anyone while the other is called a private key which must not be shared with a 3rd party. The algorithm of the keys is such that the private key cannot be derived from the public key, but the public key can be derived from the private key. Examples of public-key cryptography include ECC Diffie-Hellman, and DSS.
3. Hash Functions
Hash functions are a type of cryptography that doesn’t involve the use of keys. This function creates a small hash value from often large amounts of data through a one-way process. Hash functions are generally used by many operating systems to encrypt passwords. It is considered as the building block of modern cryptography. Some hash functions include Message Digest 5 (MD5), SHA (Secure Hash Algorithm), RIPEMD, and Whirlpool.