Related Articles
• Explore Our Geeks Community
• Cryptography Tutorial

# Symmetric Cipher Model

Symmetric Encryption is the most basic and old method of encryption. It uses only one key for the process of both the encryption and decryption of data. Thus, it is also known as Single-Key Encryption.

A few basic terms in Cryptography are as follows:

Plain Text: original message to be communicated between sender and receiver

Cipher Text: encoded format of the original message that cannot be understood by humans

Encryption (or Enciphering): the conversion of plain text to cipher text

Decryption (or Deciphering): the conversion of cipher text to plain text, i.e., reverse of encryption

### The Symmetric Cipher Model:

A symmetric cipher model is composed of five essential parts:

1. Plain Text (x): This is the original data/message that is to be communicated to the receiver by the sender. It is one of the inputs to the encryption algorithm.

2. Secret Key (k): It is a value/string/textfile used by the encryption and decryption algorithm to encode and decode the plain text to cipher text and vice-versa respectively. It is independent of the encryption algorithm. It governs all the conversions in plain text. All the substitutions and transformations done depend on the secret key.

3. Encryption Algorithm (E): It takes the plain text and the secret key as inputs and produces Cipher Text as output. It implies several techniques such as substitutions and transformations on the plain text using the secret key.

E(x, k) = y

4. Cipher Text (y): It is the formatted form of the plain text (x) which is unreadable for humans, hence providing encryption during the transmission. It is completely dependent upon the secret key provided to the encryption algorithm. Each unique secret key produces a unique cipher text.

5. Decryption Algorithm (D): It performs reversal of the encryption algorithm at the recipient’s side. It also takes the secret key as input and decodes the cipher text received from the sender based on the secret key. It produces plain text as output.

D(y, k) = x

### Requirements for Encryption:

There are only two requirements that need to be met to perform encryption. They are,

1. Encryption Algorithm: There is a need for a very strong encryption algorithm that produces cipher texts in such a way that the attacker should be unable to crack the secret key even if they have access to one or more cipher texts.

2. Secure way to share Secret Key: There must be a secure and robust way to share the secret key between the sender and the receiver. It should be leakproof so that the attacker cannot access the secret key.

Unlock the Power of Placement Preparation!
Feeling lost in OS, DBMS, CN, SQL, and DSA chaos? Our Complete Interview Preparation Course is the ultimate guide to conquer placements. Trusted by over 100,000+ geeks, this course is your roadmap to interview triumph.