@Yuan Xue CS 285 Network Security Block Cipher Principle Fall 2012 Yuan Xue.

Slides:



Advertisements
Similar presentations
CLASSICAL ENCRYPTION TECHNIQUES
Advertisements

CS 483 – SD SECTION BY DR. DANIYAL ALGHAZZAWI (3) Information Security.
1 CIS 5371 Cryptography 5b. Pseudorandom Objects in Practice Block Ciphers.
Cryptography and Network Security Chapter 3
Block Ciphers and the Data Encryption Standard
Cryptography and Network Security
Rachana Y. Patil 1 Data Encryption Standard (DES) (DES)
Data Encryption Standard (DES)
Cryptography and Network Security, resuming some notes Dr. M. Sakalli.
Announcement Grading adjusted –10% participation and two exams 20% each Newsgroup up Assignment upload webpage up Homework 1 will be released over the.
ICS 454: Principles of Cryptography
Introduction to Symmetric Block Cipher Jing Deng Based on Prof. Rick Han’s Lecture Slides Dr. Andreas Steffen’s Security Tutorial.
Session 6: Introduction to cryptanalysis part 1. Contents Problem definition Symmetric systems cryptanalysis Particularities of block ciphers cryptanalysis.
Ref: STAL03More Concepts of Cryptography and Cryptanalysis 1 Reference –William Stallings, Cryptography and Network Security, 3rd Edition, Prentice Hall.
Lecture 23 Symmetric Encryption
Review What is security: history and definition Security policy, mechanisms and services Security models.
Computer Security CS 426 Lecture 3
Network Security Chapter
CS555Spring 2012/Topic 91 Cryptography CS 555 Topic 9: Block Cipher Construction & DES.
CSE 651: Introduction to Network Security
ECE454/CS594 Computer and Network Security Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall 2011.
Data Encryption Standard (DES). Symmetric Cryptography  C = E(P,K)  P = D(C,K)  Requirements  Given C, the only way to obtain P should be with  the.
IT 221: Classical and Modern Encryption Techniques Lecture 2: Classical and Modern Encryption Techniques For Educational Purposes Only Revised: September.
Chapter 2 – Classical Encryption Techniques
Cryptography Week-6.
Cryptanalysis. The Speaker  Chuck Easttom  
CSCI 5857: Encoding and Encryption
Confusion and Diffusion1 Ref: William Stallings, Cryptography and Network Security, 3rd Edition, Prentice Hall, 2003.
1 University of Palestine Information Security Principles ITGD 2202 Ms. Eman Alajrami 2 nd Semester
Hill Cipher Developed by the mathematician Lester Hill in The encryption algorithm takes m successive plain text and substitute for them m cipher.
Chapter 20 Symmetric Encryption and Message Confidentiality.
Lec. 5 : History of Cryptologic Research II
1 Chapter 2-1 Conventional Encryption Message Confidentiality.
Chapter 20 Symmetric Encryption and Message Confidentiality.
Network Security Lecture 11 Presented by: Dr. Munam Ali Shah.
Introduction to Cryptography Techniques How secure is that banking network traffic?
Data Security and Encryption (CSE348) 1. Lecture # 6 2.
Classical Encryption techniques
Classical Crypto By: Luong-Sorin VA, IMIT Dith Nimol, IMIT.
Stream Ciphers and Block Ciphers A stream cipher is one that encrypts a digital data stream one bit or one byte at a time. Examples of classical stream.
1 University of Palestine Information Security Principles ITGD 2202 Ms. Eman Alajrami 2 nd Semester
Le Trong Ngoc Security Fundamentals (2) Encryption mechanisms 4/2011.
Lecture 23 Symmetric Encryption
Symmetric Encryption Lesson Introduction ●Block cipher primitives ●DES ●AES ●Encrypting large message ●Message integrity.
Computer and Network Security Rabie A. Ramadan Lecture 3.
K. Salah1 Cryptography Module I. K. Salah2 Cryptographic Protocols  Messages should be transmitted to destination  Only the recipient should see it.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Chapter 2 Symmetric Encryption.
Symmetric Cipher Model Plaintext input 1- encryption algorithm 2- secret key Encryption Cipher text output Cipher text input 1- Decryption algorithm 2-
Module :MA3036NI Symmetric Encryption -3 Lecture Week 4.
Block Ciphers and the Data Encryption Standard. Modern Block Ciphers  One of the most widely used types of cryptographic algorithms  Used in symmetric.
CST 312 Pablo Breuer. A block of plaintext is treated as a whole and used to produce a ciphertext block of equal length Typically a block size of 64 or.
Information and Network Security Lecture 2 Dr. Hadi AL Saadi.
Computer Security By Rubel Biswas. Introduction History Terms & Definitions Symmetric and Asymmetric Attacks on Cryptosystems Outline.
@Yuan Xue Announcement Project Release Team forming Homework 1 will be released next Tuesday.
CS480 Cryptography and Information Security Huiping Guo Department of Computer Science California State University, Los Angeles 4. Traditional and Modern.
Lecture 4 Data Encryption Standard (DES) Dr. Nermin Hamza
@Yuan Xue Quick Review.
Cryptography and Network Security Chapter 3
ICS 454: Principles of Cryptography
Block Ciphers and the Data Encryption Standard (DES)
Cryptography Lecture 17.
Confusion and Diffusion
Cryptography Lecture 16.
Cryptanalysis Network Security.
ICS 555: Block Ciphers & DES Sultan Almuhammadi.
Presentation transcript:

@Yuan Xue CS 285 Network Security Block Cipher Principle Fall 2012 Yuan Xue

@Yuan Xue From Classical Ciphers to Modern Ciphers Classical Cipher  Modern Cipher (Block cipher) Alphabetic letters  Binary data  Easy to do Large block size, large key space Relationship between key and plaintext-to-ciphertext map needs to be complex (e.g., can not be a linear mapping)  How substitution should be specified? Design Principle Solution in a nutshell Substitution + Transposition  Feistel Network Illustrate Solution with DES design

@Yuan Xue An exercise before we start n-bit block Number of all possible plaintext? Number of all possible plaintext-to-ciphertext mapping? Number of keys needed? Required key length? K-bit key How many possible keys?

@Yuan Xue An example Encryption/ decryption mapping can be defined by a tabulation Ideal block cipher Maximum number of possible encryption mapping Each mapping constitutes the key How to design/represent the key and assign it to each mapping?

@Yuan Xue Another exercise Let X be a random variable with n values. Let the elements of its probability distribution P(X) be p 1, p 2, …, p n, such that p 1  p 2  …  p n. What is the average number of guesses needed to determine the value of X using an optimal strategy? This example shows how statistical information (of plaintext) helps to reduce the effort of hacking the text. For statistical analysis, we care more about the correlation statistics between the plaintext and the ciphertext. (mutual information)

@Yuan Xue Block Cipher Principle Statistical analysis Attacker has some knowledge of the statistical characteristics of the plaintext If the statistics are in any way reflected in the ciphtertext, then it reduces the complexity for the attacker to guess the plaintext Ideally, the statistics of plaintext and ciphertext is independent

@Yuan Xue Block Cipher Principle Design a symmetric key cryptographic scheme with enough security Using a reasonable large block size  Minimizes the correlation statistics between the plaintext and the ciphertext  Against frequency analysis With a reasonable size key  Against to brute-force attack where the attackers may search through all possible keys These two conditions are necessary but not sufficient The relationship among plaintext, ciphertext and key is also important  Intuitively, the mapping from plaintext to ciphertext via key should be “random”

@Yuan Xue Encryption Algorithm Security Unconditionally secure If the ciphertext generated by the algorithm does not contain enough information to determine uniquely the corresponding plaintext, no matter how much ciphertext is available, and how much time an opponents has.  One-time pad Computationally secure The cost of breaking the cipher exceeds the value of the encrypted information The time required to break the cipher exceeds the useful lifetime of the information

@Yuan Xue Secure Pseudorandom Function (PRF) Let F: K  X  Y be a PRF Funs[X,Y]: the set of all functions from X to Y S F = { F(k,  ) s.t. k  K }  Funs[X,Y] Intuition: a PRF is secure if a random function in Funs[X,Y] is indistinguishable from a random function in S F SFSF Size |K| Funs[X,Y] Size |Y| |X| Credit: Dan Boneh, “Introduction to Cryptography”

@Yuan Xue Secure Pseudorandom Permutation (PRP) Let E: K  X  Y be a PRP Perms[X]: the set of all one-to-one functions from X to Y S F = { E(k,  ) s.t. k  K }  Perms[X,Y] Intuition: a PRP is secure if a random function in Perms[X] is indistinguishable from a random function in S F k  K π  Perms[X] x  X π(x) or E(k,x) ? ??? Credit: Dan Boneh, “Introduction to Cryptography”

@Yuan Xue Block Cipher Principle Two methods Diffusion makes the statistical relationship between plaintext and the ciphertext as complex and as involved as possible  redundancy in the statistics of the plaintext is "dissipated" in the statistics of the ciphertext  Against frequency analysis  Avalanche effect Each plaintext bit affect as many as possible ciphertext bit Let’s see a demodemo Confusion makes the relationship between the key and the plaintext/ciphertext as complex and as involved as possible  Ideally, the relationship between plaintext/ciphertext is independent of the structure of the key

@Yuan Xue Block Cipher Principle Confusion makes the relationship between the key and the plaintext/ciphertext as complex and as involved as possible  Ideally, the relationship between plaintext/ciphertext is independent of the structure of the key  Hard to find the key even if one has a large number of plaintext-ciphertext pairs produced with the same key Hill cipher is a bad example  Arbitrary substitution cipher is a good (ideal) example  but it is not practical  Still we hope changing one bit of the key should change the ciphertext completely.

@Yuan Xue Block Cipher Principle Feistel Network  Product ciphers use the two classical encryption forms: substitution and transposition, alternatively in multiple rounds to achieve both confusion and diffusion respectively  Substitution is a mechanism primarily for confusion  Transposition + substitution is a technique for diffusion

@Yuan Xue Feistel Network Design features/parameters Block size Key size Number of rounds Subkey generation algorithm Round function (F)

@Yuan Xue Feistel Network The process of decryption with a Feistel cipher is essentially the same as the encryption process. Rule: Use the ciphertext as input to the algorithm, but use the subkeys in the reverse order