Introduction to Cryptography

Before you start

Objectives: Learn what is encryption, why it is used, what are its primary parts, and what are its features.

Prerequisites: no prerequisites.

Key terms: data, encryption, key, used, cipher, cryptography, algorithm, keys, called, ensure, access


What is Cryptography

Cryptography is the science of hiding sensitive communication from unintended recipients, while allowing the intended recipients to extract and read the message. Cryptosystem is an implementation of cryptographic system. It is composed of four primary parts:

  • plain text
  • key
  • algorithm
  • cipher text

Algorithm

The algorithm is the base element of a cryptosystem. Algorithm is a set of mathematical rules that dictate how enciphering and deciphering process actually takes place. Algorithms are available to the public, but the real secret is the key used to lock the algorithm. Algorithms contains the key space which is a range of valid values which can be used to construct keys.  Algorithm can work in different ways, and those ways are called ciphering. We differentiate three types of cipher. We have character cipher, block cipher and stream cipher. In character cipher each character is ciphered individually. The block cipher is the most common type of cipher. In block cipher the original message is broken down to fixed size chunks of data, and each chunk is then ciphered. Stream cipher is used to encrypt a continuous flows of data on a bit by bit basis.

The Key

The key is the information or sequence that is used to perform enciphering or deciphering process. An algorithm requires the key in order to be locked. The key is used to encrypt a message. Sometimes we might have a problem with keys, for example there is a possibility of Key Clustering. Key clustering is the situation where the original message used with the same algorithm, but with different keys, end up into producing the same encrypted text. This is a problem because we want two different keys to always produce two different types of encrypted messages. If this problem occurs, we need to alter or update our cryptography system.

Types of Encryption

There are two types of encryption that can be performed on data that is transferred between two locations (source to the receiver). One type is called end-to-end encryption, and the other is calledlink encryption. With end-to-end encryption, data is encryption at the source, remains encrypted during the transmission, and then decrypted at the destination. End-to-end encryption is usually implemented at the application layer. With the link encryption, data is encrypted at the source, and then decrypted and re-encrypted at each hop in the path to the destination. Link encryption is performed at the physical layer.

The straight of the particular cryptic system is based on the algorithm, the privacy the keys, the size of the keys and something called an initialization vector. Initialization vector is the specialized entity used to initialize the process of cryptography.

Features of Cryptography

Cryptography can be used to ensure that only authorized individuals have access to protected data. This way we ensure that unauthorized parties are unable to access our protected data. This is called confidentiality. By using cryptography we can also ensure the integrity of our data. Integrity means that our data is uncompromised, unchanged, and valid during transit. Only authorized parties are able to implement changes to our data. With encryption we can also ensure authentication of users by proving their identity before we grant them access to data, or the identity of the sender or receiver. Unauthorized users don’t have access to our data. Authentication is designed to protect against imposters or even man-in-the-middle attacks. With encryption we can also ensure non-repudiation. This means that the sender can not deny the initiated transmission or communication. The communication has come from a user and it has not been altered in transit.

When we use cryptography we can implement one or more mentioned features, depending on what type of cryptography is used and how it is applied.