Symmetric Cipher Model
- A symmetric cipher model broadly contains five parts.
- Plaintext: This is the original intelligible message.
- Encryption algorithm: The encryption algorithm performs various substitutions and
transformations on the plaintext. It takes in plaintext and key and gives the ciphertext.
- Secret key: The key is a value independent of the plaintext and of the algorithm. Different keys will yield different outputs.
- Ciphertext: This is the scrambled message produced as output. It depends on the plaintext and the secret key.
- Decryption algorithm: Runs on the ciphertext and the key to producing the plaintext. This is essentially the encryption algorithm run in reverse.
Two basic requirements of encryption are:
Encryption algorithm should be strong. An attacker knowing the algorithm and having any number of ciphertext should not be able to decrypt the ciphertext or guess the key.
The key shared by the sender and the receiver should be secret.
- Let the plaintext be X = [X1, X2,…, Xm], key be K = K2,…, Ku] and the ciphertext produced be Y = [Y1,
Y2,…, YN]. Then, we can write Y = E(K,X)
- Here E represents the encryption algorithm and is a function of plaintext X and key K.
- So The receiver at the other ends decrypts the ciphertext using the key. X = D(K,Y)
- Here D represents the decryption algorithm and it inverts the transformations of encryption
- After that, An opponent not having access to X or K may attempt to recover K or X or both.
- It assumed that the opponent knows the encryption (E) and decryption (D) algorithms.
- If the opponent interested in only this particular message, then the focus of the effort is to recover by generating a plaintext estimate X.
- If the opponent interested in being able to read future messages as well then he will attempt to recover the key by making an estimate