Cyber Security Minor Project: - Type of Cipher
Caesar Cipher: -
In Caesar’s cipher, each alphabet in the message is replaced by three
places down. Let’s see one example. The plain text is EDUCBA. As a
Caesar cipher, each alphabet is replaced by three places down. So that E
will be replaced by H, D will be replaced by G, U will be replaced by X, C
will be replaced by F, B will be replaced by E, and A will be replaced by D.
So here, the plain text is EDUCBA and ciphertext Is HGXFED.
Implementation: -
Monoalphabetic Cipher: -
In monoalphabetic, each alphabet in plain text can be replaced by any
other alphabet except the original alphabet. That is, A can be replaced by
any other alphabet from B to Z. B can be replaced by A or C to Z. C can
be replaced by A, B, and D to z, etc. Mono alphabetic cipher causes
difficulty to crack the message as there are random substitutions and a
large number of permutations and combinations are available.
So here, the plain text is and ciphertext Is GM XU RWXA MH
WRLWS, M PNZA GWEIMRL.
Implementation: -
Homophonic Substitution Cipher: -
A homophonic substitution cipher is similar to a monoalphabetic cipher;
the only difference is in monoalphabetic, we replace the alphabet with
any other random alphabet except the original alphabet wherein in
homophonic substitution cipher, the alphabet is replaced by a fixed
alphabet or set of alphabets. The substitution alphabet is replaced with
the fixed one. For example, replace A with x, E with B, S with A, etc., or
replace A with E, x or L, B with T, A, Z, etc.
Implementation: -
Polygram Substitution Cipher: -
In PolyGram substation cipher, rather than replacing each alphabet with
another, the alphabet’s Block is replaced with another block of alphabets.
Replace EDUCBA with XYQLAB. In this case, EDUCBA will replace with
XYQLAB, but EDU can be replaced with another set of blocks, let’s
assume EDU will replace with LOD. In this type of cipher, plain text
replacement is done block by block rather than character by character.
Implementation: -
Polyalphabetic Substitution Cipher: -
Polyalphabetic Cipher is also known as Vigenère Cipher, which Leon
Battista Alberti invents. In Polyalphabetic Substitution, Cipher is a
method of encrypting alphabetic texts. It uses multiple substitution
alphabets for encryption. Vigenère square or Vigenère table is used to
encrypt the text. The table contains 26 alphabets written in different
rows; each alphabet is cyclically shifted to the left according to the
previous alphabet, equivalent to the 26 possible Caesar Ciphers. The
cipher uses a different alphabet from one of the rows at various points in
the encryption process.
Implementation: -
Playfair Cipher: -
Playfair cipher is also called Playfair square. It is a cryptographic
technique that is used to encrypt the data. The Playfair cipher process is
as follows:
Creation and population of the matrix.
Encryption process.
Let’s discuss the above-mentioned steps in detail manner the creation
and population of the matrix. It uses a 5 * 5 matrix to store the keyword
or the key, which is used for the encryption and decryption process.
This step is working as follows.
1. Enter the keyword in the matrix in a row-wise manner, i.e., from left to
right and top to bottom.
2. Skip the duplicate words in the keyword.
3. Fill the remaining spaces with the rest of the alphabet (A – Z) that were
not a part of the keyword.
Implementation: -
Hill Cipher: -
Hill cipher works on multiple alphabets at the same time. Hill cipher
works as follows:
1. Assign the number to each alphabet in plain text. A = 0, B= 1….z = 25
2. Organize the plain text message as a matrix of numbers based on the
above step in number format. The resultant matrix is called a plain text
matrix.
3. Multiply the plain text matrix with a randomly chosen key. Note that the
key matrix must be the size of n*n where n stands for the number of rows
in a plain text matrix.
4. Multiply both the matrix, i.e. step 2 and step 3.
5. Calculate the mod 26 value of the above matrix, i.e. matrix results in step
4.
6. Now translate the numbers to alphabets i.e. 0 =A, 1 =B, etc.
7. The result of step 6 becomes our ciphertext.
Implementation: -
-------> Submitted by Sahil Sharma