**Cryptography:**
It is a technique of scrambling message using mathematical
logic to keep the information secure. It preserve the scrambled
message from being hacked when transport over unsecure network.
Since it convert the readable message in unreadable
text.

**Plaintext:** It is
the content of data which is in readable form that need to share
over insecure network.

**Encrypting key:**
It is random string of bits created particularly to scramble
the plaintext information into unreadable text using mathematical
logic. There are two types of encryption key symmetric key and
asymmetric key.

**Cipher text:** The
output of encryption produce cipher text which in not readable by
human beings.

**Decrypting key:**
It is the key which use to decipher the cipher text into again
plaintext using symmetric or asymmetric key to read original
message.

**Functionality of
cryptosystem**

**Authentication:**It is the process of verification of the identity of the valid person through his username and password that communicates over a network.**Authorization:**It refers to the process of granting or denying access to a network resource or service. Most of the computer security systems that we have today are based on a two-step mechanism. The first step is authentication, and the second step is authorization or access control, which allows the user to access various resources based on the user’s identity.**Confidentiality or privacy:**It means the assurance that only authorized users can read or use confidential information. When cryptographic keys are used on plaintext to create cipher text, privacy is assigned to the information.**Integrity:**Integrity is the security aspect that confirms that the original contents of information have not been altered or corrupted. There should be not any kind of modification with information while it transport over network.**Non repudiation:**Non repudiation makes sure that each party is liable for its sent message. Someone can communicate and then later either falsely deny the communication entirely or claim that it occurred at a different time, or even deny receiving any piece of information.

**Classical Cryptographic
Algorithms types**

**Caesar
Cipher**

Caesar cipher is a type of substitution cipher in which each letter of the alphabet is swap by a letter a certain distance away from that letter.

**Algorithm**

Step 0: Mathematically, map the letters to numbers (i.e., A = 1, B = 2, and so on).

1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |

A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |

Step 1: Select an integer
**key K** in between 1 and 25 (i.e., there are total
26 letters in the English language) let say shift right 3 alphabets
where A +3 = D, B+3 = E and so on.

A |
B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |

D |
E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C |

Step 2: The encryption formula is “Add k mod 26”; that is, the original letter L becomes (L + k)%26.

For example encryption of “IGNITE” will like as:

C = E (L+K) %26

Here L= I and K = 3

C = E (I+3) % 26

C = E (9+3) % 26

C = E (12) % 26

C = E (L)

Hence encryption of IGNITE:
**LJQLWH**

A | B | C | D | E | F | G | H | I |
J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |

D | E | F | G | H | I | J | K | L |
M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C |

A | B | C | D | E | F | G |
H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |

D | E | F | G | H | I | J |
K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C |

A | B | C | D | E | F | G | H | I | J | K | L | M | N |
O | P | Q | R | S | T | U | V | W | X | Y | Z |

D | E | F | G | H | I | J | K | L | M | N | O | P | Q |
R | S | T | U | V | W | X | Y | Z | A | B | C |

A | B | C | D | E | F | G | H | I |
J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |

D | E | F | G | H | I | J | K | L |
M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C |

A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T |
U | V | W | X | Y | Z |

D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W |
X | Y | Z | A | B | C |

A | B | C | D | E |
F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |

D | E | F | G | H |
I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C |

Step 3: The deciphering is “Subtract k mod 26”; that is, the encrypted letter L becomes (L – k) %26.

For example Decryption of “LJQLWH” will like as:

C = D (L-K) %26

C = D (L-3) % 26

C = D (12-3) % 26

C = D (9) % 26

C = D (I)

Hence decryption of LJQLWH:
**IGNITE**

** ****Limitation:**
Caesar cipher is vulnerable to brute-force attack because it
depends on a single key with 25 possible values if the plaintext is
written in English. Consequently, by trying each option and
checking which one results in a meaningful word, it is possible to
find out the key. Once the key is found, the full cipher text can
be deciphered accurately.

** ****Monoalphabetic
Cipher**

It is also a type of substitution
cipher in which each letter of the alphabet is swap by using some
permutation of the letters in alphabet. Hence permutations of 26
letters will be 26! (Factorial of 26) and that is equal to
4×10^{26}. This technique uses a random key for every
single letter for encryption and which makes the monoalphabetic
cipher secure against brute-force attack.

The sender and the receiver decide
on a randomly selected permutation of the letters of the alphabet.
For example in word “HACKING” replace **G** from “J”
and **N** from “W” hence permutation key is 2! i.e.
factorial of 2 and HACKING will become “HACKJIW”.

Algorithm

Step 0: Generate plaintext–cipher
text pair by mapping each plaintext letter to a different random
cipher text letter **IJKLQR——–GFE.**

A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |

I |
J |
K |
L |
Q |
R |
S |
T |
U |
V |
W |
D |
C |
B |
A |
Z |
Y |
X |
P |
O |
N |
M |
H |
G |
F |
E |

Step 1: To encipher, for each letter in the original text, replace the plaintext letter with a cipher text letter.

Hence encryption of “IGNITE” will be as shown below:

A | B | C | D | E | F | G | H | I |
J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |

I | J | K | L | Q | R | S | T | U |
V | W | D | C | B | A | Z | Y | X | P | O | N | M | H | G | F | E |

A | B | C | D | E | F | G |
H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |

I | J | K | L | Q | R | S |
T | U | V | W | D | C | B | A | Z | Y | X | P | O | N | M | H | G | F | E |

A | B | C | D | E | F | G | H | I | J | K | L | M | N |
O | P | Q | R | S | T | U | V | W | X | Y | Z |

I | J | K | L | Q | R | S | T | U | V | W | D | C | B |
A | Z | Y | X | P | O | N | M | H | G | F | E |

A | B | C | D | E | F | G | H | I |
J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |

I | J | K | L | Q | R | S | T | U |
V | W | D | C | B | A | Z | Y | X | P | O | N | M | H | G | F | E |

A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T |
U | V | W | X | Y | Z |

I | J | K | L | Q | R | S | T | U | V | W | D | C | B | A | Z | Y | X | P | O |
N | M | H | G | F | E |

A | B | C | D | E |
F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |

I | J | K | L | Q |
R | S | T | U | V | W | D | C | B | A | Z | Y | X | P | O | N | M | H | G | F | E |

Step 2: For deciphering, reverse the procedure in step 1.

Hence decryption of “USBUOQ” will be “IGNITE”

**Limitations**

Despite its advantages, the random key for each letter in monoalphabetic substitution has some downsides too. It is very difficult to remember the order of the letters in the key, and therefore, it takes a lot of time and effort to encipher or decipher the text manually. Monoalphabetic substitution is vulnerable to frequency analysis.

**Playfair
Cipher**

** **It encrypts
digraphs or pairs of letters rather than single letters like the
plain substitution cipher

In this cipher a table of alphabet
is 5×5 grids is created which contain 25 letters instead of 26. One
alphabet “J” (or any other) is omitted. One would first fill in the
spaces in the table with the letters of the
**keyword** (dropping any duplicate letters), then
fill the remaining spaces with the rest of the letters of the
alphabet in order. If the plaintext () contains J, then it is
replaced by I.

**Algorithm**

Step 0: Split the plaintext into pair, if number of letters are odd then add “X” with last letter of plaintext

For example “TABLE” is our plaintext split it into pair as: TA BL EX

Step 1: Set the 5 × 5 matrix by filling the first positions with the key. Fill the rest of the matrix with other letters. Let assume “ARTI” is our key for encryption.

A |
R |
T |
I |
B |

C | D | E | F | G |

H | K | L | M | N |

O | P | Q | S | U |

V | W | X | Y | Z |

Step 2: For encryption it involves three rules:

If both letters fall in the same
row, substitute each with the letter to its right in a circular
pattern. **TA—–> IR**

A |
R | T |
I | B |

C | D | E | F | G |

H | K | L | M | N |

O | P | Q | S | U |

V | W | X | Y | Z |

If both letters fall in the
different row and column, form a rectangle with the two letters and
take the letters on the horizontal opposite corner of the
rectangle. **BL—–> TN**

A | R | T | I | B |

C | D | E | F | G |

H | K | L |
M | N |

O | P | Q | S | U |

V | W | X | Y | Z |

If both letters fall in the same
column, substitute each letter with the letter below it in a
circular pattern. **EX—–> LT**

A | R | T | I | B |

C | D | E |
F | G |

H | K | L | M | N |

O | P | Q | S | U |

V | W | X |
Y | Z |

Hence encryption of word “TABLE” is “IR TN LT”.

Step 3: For decryption receiver use same key to decipher the text by reversing above three rules used in step 2.

**Limitations:**

Playfair is considerably complicated to break; it is still vulnerable to frequency analysis because in the case of Playfair, frequency analysis will be applied on the 25*25 = 625 possible digraphs rather than the 25 possible monographs (monoalphabetic)

**Polyalphabetic
Cipher**

** **A
polyalphabetic substitution cipher is a series of simple
substitution ciphers. It is used to change each character of the
plaintext with a variable length. The **Vigenere
cipher** is a special example of the polyalphabetic
cipher.

**Algorithm**

Step 0: Decide a encrypting key to change plaintext into cipher, for example take “HACKING” as encryption key whose numerical representation is “7, 0 ,2 ,10, 8, 13, 6 “

0 |
1 | 2 |
3 | 4 | 5 | 6 |
7 |
8 |
9 | 10 |
11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 |

A |
B | C |
D | E | F | G |
H |
I |
J | K |
L | M | N |
O | P | Q | R | S | T | U | V | W | X | Y | Z |

Step 1: To encrypt, the numeric number of first letter of the key encrypts the first letter of the plaintext, the second numeric number of second letter of the key encrypts the second letter of the plaintext, and so on.

For example
**plaintext** is “VISIT TO HACKING ARTICLES” and
**key** is “HACKING: 7 0 2 10 8 13 6”

V |
I |
S |
I |
T |
T |
O |
H |
A |
C |
K |
I |
N |
G |
A |
R |
T |
I |
C |
L |
E |
S |

7 | 0 | 2 | 10 | 8 | 13 | 6 | 7 | 0 | 2 | 10 | 8 | 13 | 6 | 7 | 0 | 2 | 10 | 8 | 13 | 6 | 7 |

Step 2: The encryption formula is “Add k mod 26”; that is, the original letter L becomes (L + k)%26

C = E (L+K) %26

Here L=V and K =7

C = E (V+7) %26

C = E (21+7) %26

C = E (28) %26

C = E (2)

C = E (C)

Hence encryption of “VISIT TO HACKING ARTICLES” is “CIUSBGUOAEUQAMHRVSKYKZ”

V | I | S | I | T | T | O | H | A | C | K | I | N | G | A | R | T | I | C | L | E | S |

7 | 0 | 2 | 10 | 8 | 13 | 6 | 7 | 0 | 2 | 10 | 8 | 13 | 6 | 7 | 0 | 2 | 10 | 8 | 13 | 6 | 7 |

C |
I |
U |
S |
B |
G |
U |
O |
A |
E |
U |
Q |
A |
M |
H |
R |
V |
S |
K |
Y |
K |
Z |

Step 3: The deciphering is “Subtract k mod 26”; that is, the encrypted letter L becomes (L – k) %26.

For example Decryption of “CIUSBGUOAEUQAMHRVSKYKZ” will like as:

C = D (L-K) %26

Here L=C and K =7

C = E (C-7) %26

C = E (21)

C = E (V)

Hence decryption of “CIUSBGUOAEUQAMHRVSKYKZ” is “VISIT TO HACKING ARTICLES”

**Limitation**

The main limitation of the Vigenère cipher is the repeating character of its key. If a cryptanalyst properly estimate the length of the key, then the cipher text can be treated as link Caesar ciphers, which can be easily broken separately.

**Rotation
Cipher**

In rotation cipher generates
cipher text on the behalf of block size and angle of rotation of
plain text in the direction of following angles: 90^{o}
180^{0} 270^{o }

**Algorithm**

Step 0: Decide the size of block
for plaintext “**CRYPTOGRAPHY**”, let assume
**6** as block size for it.

CRYPTO |

GRAPHY |

Step 1: For encryption arrange
plaintext in any direction among these angles 90^{o}
180^{0} 270^{o }as shown
below:

In 90^{o} Rotation place
starting letter downwards vertically from G to C and so
on.

CRYPTO |

GRAPHY |

In 180^{o} Rotation place
letter right to left horizontally from O to C and so on.

CRYPTO |
OTPYRC |

GRAPHY |
YHPARG |

In 270^{o} Rotation place
last letter top to bottom vertically from O to Y and so
on.

CRYPTO |

GRAPHY |

Hence cipher text will arrange in following ways:

90^{o} |
180^{0} |
270^{o} |

GC
RR AY PP HT YO |
OTPYRC
YHPARG |
OY
TH PP YA RR CG |

Step 2: arrange letter according their angles represents:

90^{o } rotated
cipher “GCRRAYPPHTYO”

180^{o }
rotated cipher “YHPARGOTPYRC”

270^{o }
rotated cipher “OYTHPPYARRCG”

Step 3: for decryption using block size and angle of rotation among all above three cipher texts can be decrypt.

**Transposition
Cipher**

In transposition cipher plaintext are rearrange without replacing original letter from other as compare to above cipher techniques.

**Algorithm**

Step 0: Decide the keyword that
will be represent the number of column of a table which store plain
text inside it, and help in generating cipher text, let suppose we
choose **CIPHER** as key.

Step 1: store plaintext
“**classical cryptography**” in a table from left to
right cell.

C |
I |
P |
H |
E |
R |

C | L | A | S | S | I |

C | A | L | C | R | Y |

P | T | O | G | R | A |

P | H | Y |

Step 2: for encryption arrange all letters according to columns from in ascending order of keyword “CIPHER” will be CEHIPR as:

C |
E |
H |
I |
P |
R |

C | S | S | L | A | I |

C | R | C | A | L | Y |

P | R | G | T | O | A |

P | |
H | Y |

Column 1: CCCPP

Column2: ESRR

Column 3: HSCG

Column 4: PALOY

Column 5: RIYA

Hence the cipher obtain will be
“**CCCPPESRRHSCGPALOYRIYA**”

Step 3: for decryption receiver use key to rearrange 26 cipher letters according to its column in 6*5 matrix.

**Limitation**

It was very easy to rearrange cipher letter if correct key is guesses.

**Rail fence
Cipher**

** **The ‘rail
fence cipher’ also called a zigzag cipher is a form
of transposition cipher the plain text is written downwards
and diagonally on successive “rails” of an imaginary fence, then
moving up when we reach the bottom rail.

**Algorithm**

Step 0: choose the number rails
which will act as **key** for plotting the plaintext
on it. Here **3 rails** is decided as key for
encryption

Step 1: plot
**plaintext** “RAJ CHANDEL” on the rail in
**zigzag form**, in direction top to bottom (downwards
and diagonally) and then bottom to up (upwards and
diagonally)

R |
H |
E |
|||||||

A |
C |
A |
D |
L |
|||||

J |
N |

Step 2: for encryption place all letter horizontally starting form row 1 to row 3 as:

Row 1: RHE

Row 2: ACADL

Row 3: JN

Hence encryption for “RAJCHANDEL” is “RHEACADLJN”

Step 3: for decryption generate the matrix by multiplying total cipher text with number of rail, here

Total 10 letters are in cipher text “RHEACADELJN” and 3 rails, hence matrix will of 10*3.

1 |
5 |
9 |
|||||||

2 |
4 |
6 |
8 |
10 |
|||||

3 |
7 |

Transverse the above rule use in encryption and place the cipher text as

**Row 1:
RHE**

R |
H |
E |
|||||||

2 |
4 |
6 |
8 |
10 |
|||||

3 |
7 |

**Row 2:
ACADL**** **

R |
H |
E |
|||||||

A |
C |
A |
D |
L |
|||||

3 |
7 |

** ****Row
3: JN**

R |
H |
E |
|||||||

A |
C |
A |
D |
L |
|||||

J |
N |

** ****Limitations**

The rail fence cipher is not very strong; the number of practical keys (the number of rails) is small enough that a cryptanalyst can try them all by hand.

**Author: **AArti Singh is a
Researcher and Technical Writer at Hacking Articles an Information
Security Consultant Social Media Lover and Gadgets.
Contact here

The post Beginner Guide to Classic Cryptography appeared first on Hacking Articles.

Read more http://www.hackingarticles.in/beginner-guide-classic-cryptography/