Classical Cryptographic Techniques,
Feistel Cipher Structure
Adri Jovin J J, M.Tech., Ph.D.
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY
Symmetric Cipher Model
Plaintext
the original intelligible message or data that is fed into the algorithm as input.
Encryption algorithm
performs various substitutions and transformations on the plaintext
Secret key
a value independent of the plaintext and of the algorithm which helps the algorithm to produce a different output
depending on the one being used at the time
Ciphertext
the scrambled message produced as output
Decryption algorithm
essentially the encryption algorithm run in reverse
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 2
A question….
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 3
Why most cryptographic algorithms are open to the public?
The reason is:
Kerckhoff’s Principle
Encryption Scheme is not secret
- The only secret is the key
- The key must be chosen at random and kept secret
Advantages:
• Easier to keep a secret key than a secret algorithm
• Easier to change the key than the algorithm
• Standardization
• Ease of deployment
• Public validation
Cryptography
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 4
Cryptographic systems are characterized along three independent dimensions:
1. The type of operations used for transforming plaintext to ciphertext
2. The number of keys used
3. The way in which the plaintext is processed
Cryptanalysis
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 5
Cryptanalysis
Rely on the nature of the algorithm plus
perhaps some knowledge of the general
characteristics of the plaintext or even some
sample plaintext-ciphertext pairs
Brute-force attack
Attacker tries every possible key on a piece of
ciphertext until an intelligible translation into
plaintext is obtained
Type of attack Known to cryptanalyst
Ciphertext Only • Encryption algorithm
• Ciphertext
Known Plaintext • Encryption algorithm
• Ciphertext
• One or more plaintext–ciphertext pairs formed with the
secret key
Chosen Plaintext • Encryption algorithm
• Ciphertext
• Plaintext message chosen by cryptanalyst, together with
its corresponding ciphertext generated with the secret key
Type of attack Known to cryptanalyst
Chosen Ciphertext • Encryption algorithm
• Ciphertext
• Ciphertext chosen by cryptanalyst, together with its
corresponding decrypted plaintext generated with the secret
key
Chosen Text • Encryption algorithm
• Ciphertext
• Plaintext message chosen by cryptanalyst, together with its
corresponding ciphertext generated with the secret key
• Ciphertext chosen by cryptanalyst, together with its
corresponding decrypted plaintext generated with the secret
key
Average Time Required for Exhaustive Key Search
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 6
Key size (bits) Number of alternative keys Time required at 1 decryption/ms Time required at 106
decryption/ms
32 232 = 4.3 x 109 231 ms = 35.8 minutes 2.15 milliseconds
56 256 = 7.2 x 1016 255 ms = 1142 years 10.01 hours
128 2128 = 3.4 x 1038 2127 ms = 5.4 x 1024 years 5.4 x 1018 years
168 2168 = 3.7 x 1050 2167 ms = 5.9 x 1036 years 5.9 x 1030 years
26 characters
(permutation)
26! = 4 x 1026 2 x 1026 ms = 6.4 x 1012 years 6.4 x 106 years
Caesar Cipher
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 7
plain: meet me after the toga party
cipher: PHHW PH DIWHU WKH WRJD SDUWB
C = E(3, p) = (p + 3) mod 26
Generalised as:
C = E(k, p) = (p + k) mod 26
Decryption: p = D(k, C) = (C - k) mod 26
a b c d e f g h i j k l m
0 1 2 3 4 5 6 7 8 9 10 11 12
n o p q r s t u v w x y z
13 14 15 16 17 18 19 20 21 22 23 24 25
helloworld jgnnqyqtnfb
c
Brute-Force Cryptanalysis of Caesar Cipher
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 8
Playfair Cipher
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 9
1. Repeating plaintext letters that are in the same pair are separated with a filler letter,
such as x, so that balloon would be treated as ba lx lo on.
2. Two plaintext letters that fall in the same row of the matrix are each replaced by the
letter to the right, with the first element of the row circularly following the last. For
example, ar is encrypted as RM.
3. Two plaintext letters that fall in the same column are each replaced by the letter
beneath, with the top element of the column circularly following the last. For
example, mu is encrypted as CM.
4. Otherwise, each plaintext letter in a pair is replaced by the letter that lies in its own
row and the column occupied by the other plaintext letter. Thus, hs becomes BP and
ea becomes IM (or JM, as the encipherer wishes).
Hill Cipher
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 10
    26mod
333231
232221
131211
321321











kkk
kkk
kkk
pppccc
C = KP mod 26
P = K-1C mod 26
An example
Plain text=‘pay more money’
𝐾 =
17 17 5
21 18 21
2 2 19
𝑃 =
15
0
24
𝐾𝑃 =
375
819
486
mod 26
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 11
𝐾𝑃 =
11
13
18
=
𝐿
𝑁
𝑆
𝐾−1
=
4 9 15
15 17 6
24 0 17
Vigenère Cipher
• Poly-alphabetic
• A set of related monoalphabetic substitution rules is used.
• A key determines which particular rule is chosen for a given transformation.
Key : deceptivedeceptivedeceptive
Plaintext : wearediscoveredsaveyourself
Ciphertext : ZICVTWQNGRZGVTWAVZHCQYGLMGJ
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 12
The Modern Vigenère Tableau
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 13
Image Source:
https://pages.mtu.edu/~shen
e/NSF-4/Tutorial/VIG/Vig-
Base.html
ASCII Table
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 14
ASCII-based solution
Plain-text: Hello!
Key: 0xA1 2F
Plain-text XOR Key
Hello! – 0x48 65 6C 6C 6F 21
XOR 0xA1 2F A1 2F A1 2F
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 15
0X48 XOR 0xA1
0100 1000 XOR 1010 0001
= 1110 1001
= 0xE9
On following the similar procedure we obtain the cipher text as
0xE9 4A CD 43 CE 0E
Secure Encryption
Regardless of any prior information, the attacker has about the plaintext, the ciphertext should leak no additional
information about the plaintext.
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 16
One-Time Pad
Ciphertext : ANKYODKYUREPFJBYOJDSPLREYIUNOFDOIUERFPLUYTS
Key : pxlmvmsydofuyrvzwc tnlebnecvgdupahfzzlmnyih
Plaintext : mr mustard with the candlestick in the hall
Ciphertext : ANKYODKYUREPFJBYOJDSPLREYIUNOFDOIUERFPLUYTS
Key : mfugpmiydgaxgoufhklllmhsqdqogtewbqfgyovuhwt
Plaintext : miss scarlet with the knife in the library
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 17
One-Time Pad (Contd…)
In theory, we need look no further for a cipher. The one-time pad offers complete security but, in practice, has two
fundamental difficulties:
1. There is the practical problem of making large quantities of random keys. Supplying truly random characters in this
volume is a significant task.
2. The problem of key distribution and protection. For every message to be sent, a key of equal length is needed by
both sender and receiver.
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 18
Transposition Techniques
Rail-fence Cipher
Plain-text : meet me after the toga party
Key : 2
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 19
m e m a t r h t g p r y
e t e f e t e o a a t
Steganography
• Character marking
• Invisible ink
• Pin punctures
• Typewriter correction ribbon
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 20
Image Source: https://www.pinterest.co.uk/pin/600667669026142225/
Image Source: https://www.pinterest.com/pin/305259680973137511/
Traditional Block Ciphers
Stream Cipher
• Encrypts a digital data stream one bit or one byte at a time
• Example: Vigenère cipher, Vernam Cipher
Block Cipher
• A block of plaintext is treated as a whole and used to produce a ciphertext block of equal length
• Example: Data Encryption Standard
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 21
Feistel Cipher
• Proposed by Feistel
• Execution of two or more ciphers in a sequence in such a way that the result or product is cryptographically stronger
• Use of cipher that alternates substitutions and permutations
• Practical application of a proposal by Claude Shannon to develop a product cipher that alternated diffusion and
confusion functions
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 22
Each plaintext element
or group of elements
is uniquely replaced
by a corresponding
ciphertext element or
group of elements.
A sequence of
plaintext elements is
replaced by a
permutation of that
sequence. That is,
no elements are
added or deleted or
replaced in the
sequence, rather the
order in which the
elements appear in
the sequence is
changed.
The statistical structure
of the plaintext is
dissipated into long-
range statistics of the
ciphertext.
Make the relationship
between the statistics
of the ciphertext and
the value of the
encryption key as
complex as possible
Feistel Encryption and Decryption
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 23
Influencing parameters
Block size
• Larger block sizes mean greater security (Reasonable size: 64/128-bit block)
Key size
• Larger key size means greater security (Reasonable size: 64/128 bits)
Number of rounds
• Multiple rounds offer increased security
Subkey generation algorithm
• Greater complexity in this algorithm leads to greater difficulty of cryptanalysis
Round function F
• Greater complexity generally leads to greater resistance to cryptanalysis
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 24
Considerations in design
Fast software encryption/decryption
• Encryption is embedded in applications or utility functions in such a way as to preclude a hardware implementation.
Ease of analysis
• If the algorithm can be concisely and clearly explained, it is easier to analyze that algorithm for cryptanalytic
vulnerabilities and therefore develop a higher level of assurance as to its strength
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 25
References
Schneier, B. (2007). Applied cryptography: protocols, algorithms, and source code in C. John Wiley & Sons.
Stallings, W. (2014). Cryptography and network security, 6/E. Pearson Education India.
Katz, J., & Lindell, Y. (2014). Introduction to modern cryptography. CRC press.
UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 26

Classical cryptographic techniques, Feistel cipher structure

  • 1.
    Classical Cryptographic Techniques, FeistelCipher Structure Adri Jovin J J, M.Tech., Ph.D. UITC203 CRYPTOGRAPHY AND NETWORK SECURITY
  • 2.
    Symmetric Cipher Model Plaintext theoriginal intelligible message or data that is fed into the algorithm as input. Encryption algorithm performs various substitutions and transformations on the plaintext Secret key a value independent of the plaintext and of the algorithm which helps the algorithm to produce a different output depending on the one being used at the time Ciphertext the scrambled message produced as output Decryption algorithm essentially the encryption algorithm run in reverse UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 2
  • 3.
    A question…. UITC203 CRYPTOGRAPHYAND NETWORK SECURITY 3 Why most cryptographic algorithms are open to the public? The reason is: Kerckhoff’s Principle Encryption Scheme is not secret - The only secret is the key - The key must be chosen at random and kept secret Advantages: • Easier to keep a secret key than a secret algorithm • Easier to change the key than the algorithm • Standardization • Ease of deployment • Public validation
  • 4.
    Cryptography UITC203 CRYPTOGRAPHY ANDNETWORK SECURITY 4 Cryptographic systems are characterized along three independent dimensions: 1. The type of operations used for transforming plaintext to ciphertext 2. The number of keys used 3. The way in which the plaintext is processed
  • 5.
    Cryptanalysis UITC203 CRYPTOGRAPHY ANDNETWORK SECURITY 5 Cryptanalysis Rely on the nature of the algorithm plus perhaps some knowledge of the general characteristics of the plaintext or even some sample plaintext-ciphertext pairs Brute-force attack Attacker tries every possible key on a piece of ciphertext until an intelligible translation into plaintext is obtained Type of attack Known to cryptanalyst Ciphertext Only • Encryption algorithm • Ciphertext Known Plaintext • Encryption algorithm • Ciphertext • One or more plaintext–ciphertext pairs formed with the secret key Chosen Plaintext • Encryption algorithm • Ciphertext • Plaintext message chosen by cryptanalyst, together with its corresponding ciphertext generated with the secret key Type of attack Known to cryptanalyst Chosen Ciphertext • Encryption algorithm • Ciphertext • Ciphertext chosen by cryptanalyst, together with its corresponding decrypted plaintext generated with the secret key Chosen Text • Encryption algorithm • Ciphertext • Plaintext message chosen by cryptanalyst, together with its corresponding ciphertext generated with the secret key • Ciphertext chosen by cryptanalyst, together with its corresponding decrypted plaintext generated with the secret key
  • 6.
    Average Time Requiredfor Exhaustive Key Search UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 6 Key size (bits) Number of alternative keys Time required at 1 decryption/ms Time required at 106 decryption/ms 32 232 = 4.3 x 109 231 ms = 35.8 minutes 2.15 milliseconds 56 256 = 7.2 x 1016 255 ms = 1142 years 10.01 hours 128 2128 = 3.4 x 1038 2127 ms = 5.4 x 1024 years 5.4 x 1018 years 168 2168 = 3.7 x 1050 2167 ms = 5.9 x 1036 years 5.9 x 1030 years 26 characters (permutation) 26! = 4 x 1026 2 x 1026 ms = 6.4 x 1012 years 6.4 x 106 years
  • 7.
    Caesar Cipher UITC203 CRYPTOGRAPHYAND NETWORK SECURITY 7 plain: meet me after the toga party cipher: PHHW PH DIWHU WKH WRJD SDUWB C = E(3, p) = (p + 3) mod 26 Generalised as: C = E(k, p) = (p + k) mod 26 Decryption: p = D(k, C) = (C - k) mod 26 a b c d e f g h i j k l m 0 1 2 3 4 5 6 7 8 9 10 11 12 n o p q r s t u v w x y z 13 14 15 16 17 18 19 20 21 22 23 24 25 helloworld jgnnqyqtnfb c
  • 8.
    Brute-Force Cryptanalysis ofCaesar Cipher UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 8
  • 9.
    Playfair Cipher UITC203 CRYPTOGRAPHYAND NETWORK SECURITY 9 1. Repeating plaintext letters that are in the same pair are separated with a filler letter, such as x, so that balloon would be treated as ba lx lo on. 2. Two plaintext letters that fall in the same row of the matrix are each replaced by the letter to the right, with the first element of the row circularly following the last. For example, ar is encrypted as RM. 3. Two plaintext letters that fall in the same column are each replaced by the letter beneath, with the top element of the column circularly following the last. For example, mu is encrypted as CM. 4. Otherwise, each plaintext letter in a pair is replaced by the letter that lies in its own row and the column occupied by the other plaintext letter. Thus, hs becomes BP and ea becomes IM (or JM, as the encipherer wishes).
  • 10.
    Hill Cipher UITC203 CRYPTOGRAPHYAND NETWORK SECURITY 10     26mod 333231 232221 131211 321321            kkk kkk kkk pppccc C = KP mod 26 P = K-1C mod 26
  • 11.
    An example Plain text=‘paymore money’ 𝐾 = 17 17 5 21 18 21 2 2 19 𝑃 = 15 0 24 𝐾𝑃 = 375 819 486 mod 26 UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 11 𝐾𝑃 = 11 13 18 = 𝐿 𝑁 𝑆 𝐾−1 = 4 9 15 15 17 6 24 0 17
  • 12.
    Vigenère Cipher • Poly-alphabetic •A set of related monoalphabetic substitution rules is used. • A key determines which particular rule is chosen for a given transformation. Key : deceptivedeceptivedeceptive Plaintext : wearediscoveredsaveyourself Ciphertext : ZICVTWQNGRZGVTWAVZHCQYGLMGJ UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 12
  • 13.
    The Modern VigenèreTableau UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 13 Image Source: https://pages.mtu.edu/~shen e/NSF-4/Tutorial/VIG/Vig- Base.html
  • 14.
    ASCII Table UITC203 CRYPTOGRAPHYAND NETWORK SECURITY 14
  • 15.
    ASCII-based solution Plain-text: Hello! Key:0xA1 2F Plain-text XOR Key Hello! – 0x48 65 6C 6C 6F 21 XOR 0xA1 2F A1 2F A1 2F UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 15 0X48 XOR 0xA1 0100 1000 XOR 1010 0001 = 1110 1001 = 0xE9 On following the similar procedure we obtain the cipher text as 0xE9 4A CD 43 CE 0E
  • 16.
    Secure Encryption Regardless ofany prior information, the attacker has about the plaintext, the ciphertext should leak no additional information about the plaintext. UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 16
  • 17.
    One-Time Pad Ciphertext :ANKYODKYUREPFJBYOJDSPLREYIUNOFDOIUERFPLUYTS Key : pxlmvmsydofuyrvzwc tnlebnecvgdupahfzzlmnyih Plaintext : mr mustard with the candlestick in the hall Ciphertext : ANKYODKYUREPFJBYOJDSPLREYIUNOFDOIUERFPLUYTS Key : mfugpmiydgaxgoufhklllmhsqdqogtewbqfgyovuhwt Plaintext : miss scarlet with the knife in the library UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 17
  • 18.
    One-Time Pad (Contd…) Intheory, we need look no further for a cipher. The one-time pad offers complete security but, in practice, has two fundamental difficulties: 1. There is the practical problem of making large quantities of random keys. Supplying truly random characters in this volume is a significant task. 2. The problem of key distribution and protection. For every message to be sent, a key of equal length is needed by both sender and receiver. UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 18
  • 19.
    Transposition Techniques Rail-fence Cipher Plain-text: meet me after the toga party Key : 2 UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 19 m e m a t r h t g p r y e t e f e t e o a a t
  • 20.
    Steganography • Character marking •Invisible ink • Pin punctures • Typewriter correction ribbon UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 20 Image Source: https://www.pinterest.co.uk/pin/600667669026142225/ Image Source: https://www.pinterest.com/pin/305259680973137511/
  • 21.
    Traditional Block Ciphers StreamCipher • Encrypts a digital data stream one bit or one byte at a time • Example: Vigenère cipher, Vernam Cipher Block Cipher • A block of plaintext is treated as a whole and used to produce a ciphertext block of equal length • Example: Data Encryption Standard UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 21
  • 22.
    Feistel Cipher • Proposedby Feistel • Execution of two or more ciphers in a sequence in such a way that the result or product is cryptographically stronger • Use of cipher that alternates substitutions and permutations • Practical application of a proposal by Claude Shannon to develop a product cipher that alternated diffusion and confusion functions UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 22 Each plaintext element or group of elements is uniquely replaced by a corresponding ciphertext element or group of elements. A sequence of plaintext elements is replaced by a permutation of that sequence. That is, no elements are added or deleted or replaced in the sequence, rather the order in which the elements appear in the sequence is changed. The statistical structure of the plaintext is dissipated into long- range statistics of the ciphertext. Make the relationship between the statistics of the ciphertext and the value of the encryption key as complex as possible
  • 23.
    Feistel Encryption andDecryption UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 23
  • 24.
    Influencing parameters Block size •Larger block sizes mean greater security (Reasonable size: 64/128-bit block) Key size • Larger key size means greater security (Reasonable size: 64/128 bits) Number of rounds • Multiple rounds offer increased security Subkey generation algorithm • Greater complexity in this algorithm leads to greater difficulty of cryptanalysis Round function F • Greater complexity generally leads to greater resistance to cryptanalysis UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 24
  • 25.
    Considerations in design Fastsoftware encryption/decryption • Encryption is embedded in applications or utility functions in such a way as to preclude a hardware implementation. Ease of analysis • If the algorithm can be concisely and clearly explained, it is easier to analyze that algorithm for cryptanalytic vulnerabilities and therefore develop a higher level of assurance as to its strength UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 25
  • 26.
    References Schneier, B. (2007).Applied cryptography: protocols, algorithms, and source code in C. John Wiley & Sons. Stallings, W. (2014). Cryptography and network security, 6/E. Pearson Education India. Katz, J., & Lindell, Y. (2014). Introduction to modern cryptography. CRC press. UITC203 CRYPTOGRAPHY AND NETWORK SECURITY 26