What is Encryption?
Encryption is a means of maintaining secure data in an insecure environment. Encryption consists of applying an encryption algorithm to data using some prespecified encryption key. The resulting data has to be decrypted using a decryption key to recover the original data.
Data and Advanced Encryption Standards
The Data Encryption Standard (DES) is a system developed by U.S. Government for use by the general public. It has been widely accepted as a cryptographic standard both in the United States.
Data Encryption Standard can provide end-to-end encryption on the channel between the sender A and receiver B.
The DES algorithm is a careful and complex combination of two of the fundamental building blocks of encryption: substitution and permutation.
The algorithm derives its strength from repeated application if these two techniques for a total of 16 cycles.
Plaintext (the original form of the message) is encrypted as blocks of 64 bits. Although the key is 64 bits long, in effect the key can be any 56-bit number. After questioning the adequacy of DES, the National Institute of Standards (NIST) introduced the Advanced Encryption Standards (AES).
This algorithm has a block size of 128 bits, compared with DES’s 56-block size, and can use keys of 128, 192, or 256 bits, compared with DES’s 56-bit key.
AES introduces more possible keys, compared with DES, and thus takes a much longer time to crack.
Public Key Encryption
In 1976, Diffie and Hellman proposed a new kind of cryptosystem, which they called public key encryption. Public key algorithms are based in mathematical functions rather than operations on bit patterns.
They also involve the use of two separate keys, in contrast to conventional encryption, which uses only one key. The use of two keys can have prefound consequences in the areas of confidentiality, key distribution, and authentication.
The two keys used for public key encryption are referred to as the public key and the private key.
The private key is kept secret, but it is referred to as a private key rather than a secret key (the key used in conventional encryption) to avoid confusion with conventional encryption.
A public key encryption scheme, or infrastructure, has six ingredients:
This is the data or readable message that is fed into the algorithm as input.
The encryption algorithm performs various transformations on the plaintext.
Public and Private Keys
These are a pair of keys that have been selected so that if one is used for encryption, the other is used for decryption. The exact transformations performed by the encryption algorithm depends on the public or private key that is provided as input.
This is the scrambled message produced as output. It depends on the plaintext and the key. For a given message, two different keys will produce two different cipher-texts.
This algorithm accepts the cipher-text and the matching key and produces the original plaintext.