Lecture Four

Total Page:16

File Type:pdf, Size:1020Kb

Lecture Four Lecture Four Today’s Topics . Historic Symmetric ciphers . Modern symmetric ciphers . DES, AES . Asymmetric ciphers . RSA . Next class: Protocols Example Ciphers . Shift cipher: each plaintext characters is replaced by a character k to the right. (When k=3, it’s a Caesar cipher). “Watch out for Brutus!” => “Jngpu bhg sbe Oehghf!” . Only 25 choices! Not hard to break by brute force. Substitution Cipher: each character in plaintext is replaced by a corresponding character of ciphertext. E.g., cryptograms in newspapers. plaintext code: a b c d e f g h i f k l m n o p q r s t u v w x y z ciphertext code: m n b v c x z a s d f g h j k l p o i u y t r e w q . 26! Possible pairs. Is is really that hard to break? Substitution ciphers . The Caesar cipher has a small key space, but doesn’t create a statistical independence between the plaintext and the ciphertext. The best ciphers allow no statistical attacks, thereby forcing a brute force, exhaustive search; all the security lies with the key space. As cryptographic algorithms matured, the statistical independence between the plaintext and cipher text increased. Ciphers . The caesar cipher, hill cipher, and playfair cipher all work with a single alphabet for doing substitutions . They are monoalphabetic substitutions. A more complex (and more robust) alternative is to use different substitution mappings on various portions of the plaintext. Polyalphabetic substitutions. More ciphers . Vigenère cipher: each character of plaintext is encrypted with a different a cipher key. In the simplest version, each key is a shift cipher Plaintext: a b c d e f g h i f k l m n o p q r s t u v w x y z C1(k=6): f g h i j k l m n o p q r s t u v w x y z a b c d e C2(k=20): t u v w x y z a b c d e f g h i j k l m n o p q r s Plaintext is encrypted as sequence of C1,C2,C1,C2,… . The example above has a period of 2: there are two alphabets used. Breaking the Vigenère cipher . We assume the algorithm is known. (Safest assumption!) . The ciphers keys repeat with period t. We need to find that period. Once we find the period, we can attack each shift cipher independently. (Shift ciphers are cake to break). We must look for occurrences in the ciphertext of plaintext that is repeated in a multiple of the cipher key. the man is in the plane on the ground. QER ASX AS SD QER SDFWD WE QER SDFWED . period = 10. Breaking the Vigenère cipher . themanisintheplaneontheground QERASXASSDQERSDFWDWEQERSDFWED . period = 10. Chances of this happening three times are small. More formally, we can apply statistical measures, like auto-correlation, to the ciphertext. Intuitively, guess period is no larger than L. For each letter of ciphertext, Ci , count how often Ci=Ci+T, where 1<T<L. Plot the counts for all Ts, the period will appear as a spike on the graph. Permutation (i.e., transposition) . Permuting the plaintext is another type of cipher technique; also referred to as permutation. Take the input, rearrange the output in a specific way. E.g., by writing the letters in a rectangle 1 3 2 4 5 6 7 8 <- key!(simple) t h e l a u n c h c o d e i s i n t h e d e s k = thn eoh hct lde aed uie nss cik . You can even do this twice with the same key. Better, but… . Using the technique simply is weak as it preserves the frequencies of the letters. The stronger, modern ciphers combine permutations and substitutions. Rotors . Rotor machines have a keyboard and a series of rotors to mechanically assist in the encryption of text. Each rotor is an arbitrary permutation of the alphabet . Output of one rotor is connected to the input of the next. For each character, the rotors shift like an odometer. Initial position of the rotors is the key. For one rotor, period = 26 . For two rotors, period = 262 = 676 . three, period = 263 = 17,576 . for six, 266 = 308,915,776 . Not bad! Two diagrams of the Enigma http://fn2.freenet.edmonton.ab.ca/~jsavard/crypto/roto02.htm Modern Cryptography . Symmetric key algorithm . Examples: . DES (Data Encryption Standard) . IDEA (International Data Encryption Alg.) . AES (Advanced Encryption Standard) . Public/Private key algorithm . Examples: RSA (El Gamal, Elliptical curves) Diffusion and Confusion . (remember: P= plaintext, C= ciphertext) . The operations of cryptographic algorithms can be explained with two terms: . Diffusion spreads the influence of single bits of P over as much C as possible. For instance, if we flip a bit of P, each of the bits of C should have about a ½ chance of flipping as well. Permutation is a tool for diffusion. Confusion obscures the relationship between P and C; it eliminates redundancies and statistical patterns . Substitution (that is table-look up) is a tool for confusion. Confusion alone is sufficient for security, but expensive in terms of storage. A 128-bit key-dependent lookup table of 64- bit blocks of P to C requires 1041 bytes of memory. Symmetric Key Algorithms There are two basic cipher structures: . Block ciphers . Plaintext is treated as n-bit blocks of data . Ciphertext is same length as plaintext . Can be made to behave as a stream cipher . Stream ciphers . Encrypts one bit/byte at a time . Useful if you have a never ending, bursty stream of data. Often easier to analyze mathematically . Block ciphers can be made to behave as stream ciphers Feistel Ciphers (also called Feistel Networks) . Most block ciphers are Feistel Networks . Approximate substitution cipher behavior using a combination of substitution and permutation (confusion and diffusion) . Defined in terms of . Block size . Key size . Number of rounds . Subkey generation algorithm . Round function F . Two other considerations . Speed in software/hardware . Ease of analysis Plaintext Feistel Networks L0 R0 Key1 . Consists of n –rounds. Round 1 ⊕ F . All rounds are identical. L1 R1 . Pi is broken in to two halves Li and Ri. Key i . The key K is broken in to sub- Round i ⊕ F keys Ki , one for each round. L i Ri . A round function F is applied to Ri using Ki Keyn . L = R i i-1 Round n ⊕ F . Ri = Li-1 xor F ( Ri-1 , Ki ) Ln Rn . Decryption is essentially the same as encryption using sub- L R keys Ki in reverse order. n+1 n+1 Ciphertext Feistel Networks . Often Feistel networks make use of substitution boxes, called S-boxes. (for instance, in the function F) . The strength of a Feistel network is tied to the design of it’s S-boxes. The design of the S-box can influence resistance against linear and differential cryptanalysis. In general, an S-Box substitutes p input bits for q output bits. For example: . Given bits “110011” as input and an S-box 1001 Take first and last bits “11” to choose row 3 (in decimal counting from 0) . Take middle four bits “1001”: column 9. 6 . E.g., the value from S-box 6 … 8 12 3 7 4 10 1 13 … of DES is 14 (“1110”). 11 14 1 7 6 8 … . Substitute “1110” for “110011” S-Box 6 from DES Data Encryption Standard (DES) . Adopted by the US govt in ‘76, dropped recently for AES. A 16-round Feistel-network with an initial and final permutation of the data. Block cipher: data is encrypted in 64-bit blocks . Symmetric Key algorithm, key length is 56-bits. The 56-bit key is transformed in to sixteen 48-bit subkeys. DES consists of . initial permutation of the 64 bits (from the P-box) . 16 identical "rounds" of operation where the data is confused and diffused with the key and the previous round. A final permutation (from the P-box). Same algorithm for encryption and decryption (sub-keys are used in reverse order for decryption). DES . The operation of each round is identical, taking the output of the previous round as input. During each round, the rightmost 32 bits of the input are moved to the left 32 bits of the output. Then a function f() is run on the left and right halves, and the key. The key is shifted for each round. A final permutation finishes it. Classic Feistel cipher operation! Curious about DES and f()? . What’s f()? For round i . Take 48 bits of the shifted key . Expand the right 32-bits of the data to 48 bits . XOR the two together, and then send it through the S-Box (the predefined substitution table). The S-BOX produces 32 new bits, which is XORed with the left half of the data. Then Li= Ri-1 . Ri = Li-1 ⊕ f (Ri, Ki) . Incredibly, this process is reversible. DES . An initial permutation (IP) . Key transformation . 16 rounds of: . Expansion permutation of input (Avalanche Effect) . Expands 32 bits to 48 bits, thus a single bit affects 2 substitutions. Dependency of output bits on input bits spread faster . S-box substitution (confusion) . P-box permutation (diffusion) . A final permutation (IP-1) More on DES . Exhaustive search is the best way to break it; there are 256 (about 7x1017 ) keys. Originally, complaints that the NSA fixed the S-boxes to provide a backdoor. This has never been found, the S-boxes appear to be strong against even differential cryptanalysis (Which means the NSA knew about DC before 1978.
Recommended publications
  • Chapter 3 – Block Ciphers and the Data Encryption Standard
    Chapter 3 –Block Ciphers and the Data Cryptography and Network Encryption Standard Security All the afternoon Mungo had been working on Stern's Chapter 3 code, principally with the aid of the latest messages which he had copied down at the Nevin Square drop. Stern was very confident. He must be well aware London Central knew about that drop. It was obvious Fifth Edition that they didn't care how often Mungo read their messages, so confident were they in the by William Stallings impenetrability of the code. —Talking to Strange Men, Ruth Rendell Lecture slides by Lawrie Brown Modern Block Ciphers Block vs Stream Ciphers now look at modern block ciphers • block ciphers process messages in blocks, each one of the most widely used types of of which is then en/decrypted cryptographic algorithms • like a substitution on very big characters provide secrecy /hii/authentication services – 64‐bits or more focus on DES (Data Encryption Standard) • stream ciphers process messages a bit or byte at a time when en/decrypting to illustrate block cipher design principles • many current ciphers are block ciphers – better analysed – broader range of applications Block vs Stream Ciphers Block Cipher Principles • most symmetric block ciphers are based on a Feistel Cipher Structure • needed since must be able to decrypt ciphertext to recover messages efficiently • bloc k cihiphers lklook like an extremely large substitution • would need table of 264 entries for a 64‐bit block • instead create from smaller building blocks • using idea of a product cipher 1 Claude
    [Show full text]
  • Feistel Like Construction of Involutory Binary Matrices with High Branch Number
    Feistel Like Construction of Involutory Binary Matrices With High Branch Number Adnan Baysal1,2, Mustafa C¸oban3, and Mehmet Ozen¨ 3 1TUB¨ ITAK_ - BILGEM,_ PK 74, 41470, Gebze, Kocaeli, Turkey, [email protected] 2Kocaeli University, Department of Computer Engineering, Faculty of Engineering, Institute of Science, 41380, Umuttepe, Kocaeli, Turkey 3Sakarya University, Faculty of Arts and Sciences, Department of Mathematics, Sakarya, Turkey, [email protected], [email protected] August 4, 2016 Abstract In this paper, we propose a generic method to construct involutory binary matrices from a three round Feistel scheme with a linear round function. We prove bounds on the maximum achievable branch number (BN) and the number of fixed points of our construction. We also define two families of efficiently implementable round functions to be used in our method. The usage of these families in the proposed method produces matrices achieving the proven bounds on branch numbers and fixed points. Moreover, we show that BN of the transpose matrix is the same with the original matrix for the function families we defined. Some of the generated matrices are Maximum Distance Binary Linear (MDBL), i.e. matrices with the highest achievable BN. The number of fixed points of the generated matrices are close to the expected value for a random involution. Generated matrices are especially suitable for utilising in bitslice block ciphers and hash functions. They can be implemented efficiently in many platforms, from low cost CPUs to dedicated hardware. Keywords: Diffusion layer, bitslice cipher, hash function, involution, MDBL matrices, Fixed points. 1 Introduction Modern block ciphers and hash functions use two basic layers iteratively to provide security: confusion and diffusion.
    [Show full text]
  • Block Ciphers
    Block Ciphers Chester Rebeiro IIT Madras CR STINSON : chapters 3 Block Cipher KE KD untrusted communication link Alice E D Bob #%AR3Xf34^$ “Attack at Dawn!!” message encryption (ciphertext) decryption “Attack at Dawn!!” Encryption key is the same as the decryption key (KE = K D) CR 2 Block Cipher : Encryption Key Length Secret Key Plaintext Ciphertext Block Cipher (Encryption) Block Length • A block cipher encryption algorithm encrypts n bits of plaintext at a time • May need to pad the plaintext if necessary • y = ek(x) CR 3 Block Cipher : Decryption Key Length Secret Key Ciphertext Plaintext Block Cipher (Decryption) Block Length • A block cipher decryption algorithm recovers the plaintext from the ciphertext. • x = dk(y) CR 4 Inside the Block Cipher PlaintextBlock (an iterative cipher) Key Whitening Round 1 key1 Round 2 key2 Round 3 key3 Round n keyn Ciphertext Block • Each round has the same endomorphic cryptosystem, which takes a key and produces an intermediate ouput • Size of the key is huge… much larger than the block size. CR 5 Inside the Block Cipher (the key schedule) PlaintextBlock Secret Key Key Whitening Round 1 Round Key 1 Round 2 Round Key 2 Round 3 Round Key 3 Key Expansion Expansion Key Key Round n Round Key n Ciphertext Block • A single secret key of fixed size used to generate ‘round keys’ for each round CR 6 Inside the Round Function Round Input • Add Round key : Add Round Key Mixing operation between the round input and the round key. typically, an ex-or operation Confusion Layer • Confusion layer : Makes the relationship between round Diffusion Layer input and output complex.
    [Show full text]
  • Confusion and Diffusion
    Confusion and Diffusion Ref: William Stallings, Cryptography and Network Security, 3rd Edition, Prentice Hall, 2003 Confusion and Diffusion 1 Statistics and Plaintext • Suppose the frequency distribution of plaintext in a human-readable message in some language is known. • Or suppose there are known words or phrases that are used in the plaintext message. • A cryptanalysist can use this information to break a cryptographic algorithm. Confusion and Diffusion 2 Changing Statistics • Claude Shannon suggested that to complicate statistical attacks, the cryptographer could dissipate the statistical structure of the plaintext in the long range statistics of the ciphertext. • Shannon called this process diffusion . Confusion and Diffusion 3 Changing Statistics (p.2) • Diffusion can be accomplished by having many plaintext characters affect each ciphertext character. • An example of diffusion is the encryption of a message M=m 1,m 2,... using a an averaging: y n= ∑i=1,k mn+i (mod26). Confusion and Diffusion 4 Changing Statistics (p.3) • In binary block ciphers, such as the Data Encryption Standard (DES), diffusion can be accomplished using permutations on data, and then applying a function to the permutation to produce ciphertext. Confusion and Diffusion 5 Complex Use of a Key • Diffusion complicates the statistics of the ciphertext, and makes it difficult to discover the key of the encryption process. • The process of confusion , makes the use of the key so complex, that even when an attacker knows the statistics, it is still difficult to deduce the key. Confusion and Diffusion 6 Complex Use of a Key(p.2) • Confusion can be accomplished by using a complex substitution algorithm.
    [Show full text]
  • What You Should Know for the Final Exam
    MATC16 Cryptography and Coding Theory G´abor Pete University of Toronto Scarborough What you should know for the final exam Principles and goals of cryptography: Kerckhoff’s principle. Shannon’s confusion and diffusion. Possible attack situations (cipher- text only, chosen plaintext, etc.). Possible goals of attacker, and the corresponding tasks of cryptography (confidentiality, data integrity, authentication, non-repudiation). [Chap- ter 1, plus page 38 and http://en.wikipedia.org/wiki/Confusion_and_diffusion for diffusion & confusion.] Classical cryptosystems: Number theory basics: infinitely many primes exist, basics of modular arithmetic, extended Euclidean algorithm, solving ax+by = d, inverting numbers and matrices (mod n). [Sections 3.1-3 and 3.8.] Shift and affine ciphers. Their ciphertext only and known plaintext attacks. Composition of two affine ciphers is again an affine cipher. [Sections 2.1-2.] Substitution ciphers in general. [Section 2.4] Vigen`ere cipher. Known plaintext attack. Ciphertext only: finding the key length, then frequency analysis. [Section 2.3.] Hill cipher. Known plaintext attack. [Section 2.7.] One-time pad. LFSR sequences. Known plaintext attack, finding the recursion. [Sections 2.9 and 11.] Basics of Enigma. [Section 2.12, up to middle of page 53.] The DES: Feistel systems, simplified and real DES (without the exact expansion functions and S-boxes and permutations, of course), how decryption works in these DES versions. How the extra parity check bits in the real DES key ensure error detection. How confusion and diffusion are fulfilled in DES. [Sections 4.1-2 and 4.4.] Double and Triple DES. Meet-in-the-middle attack. (I mentioned here that one can organize the two lists of length n and find a match between them in almost linear time (n log n) instead of the naive approach that would give only n2, and hence would ruin the attack completely.
    [Show full text]
  • A Lightweight Encryption Algorithm for Secure Internet of Things
    Pre-Print Version, Original article is available at (IJACSA) International Journal of Advanced Computer Science and Applications, Vol. 8, No. 1, 2017 SIT: A Lightweight Encryption Algorithm for Secure Internet of Things Muhammad Usman∗, Irfan Ahmedy, M. Imran Aslamy, Shujaat Khan∗ and Usman Ali Shahy ∗Faculty of Engineering Science and Technology (FEST), Iqra University, Defence View, Karachi-75500, Pakistan. Email: fmusman, [email protected] yDepartment of Electronic Engineering, NED University of Engineering and Technology, University Road, Karachi 75270, Pakistan. Email: firfans, [email protected], [email protected] Abstract—The Internet of Things (IoT) being a promising and apply analytics to share the most valuable data with the technology of the future is expected to connect billions of devices. applications. The IoT is taking the conventional internet, sensor The increased number of communication is expected to generate network and mobile network to another level as every thing mountains of data and the security of data can be a threat. The will be connected to the internet. A matter of concern that must devices in the architecture are essentially smaller in size and be kept under consideration is to ensure the issues related to low powered. Conventional encryption algorithms are generally confidentiality, data integrity and authenticity that will emerge computationally expensive due to their complexity and requires many rounds to encrypt, essentially wasting the constrained on account of security and privacy [4]. energy of the gadgets. Less complex algorithm, however, may compromise the desired integrity. In this paper we propose a A. Applications of IoT: lightweight encryption algorithm named as Secure IoT (SIT).
    [Show full text]
  • Stream and Block Ciphers
    Symmetric Cryptography Block Ciphers and Stream Ciphers Stream Ciphers K Seeded by a key K the stream cipher Stream ⃗z generates a random bit-stream z. Cipher A stream of plain-text bits p is XORed with the pseudo-random stream to obtain the cipher text stream c ⃗c=⃗p⊕⃗z and ⃗p=⃗c⊕⃗z ⃗c cipher text ⃗p plain text The same stream generator (using the same seed) ⃗z key stream used for both encryption and decryption Stream Ciphers K →¯zk ¯c=¯p⊕¯z k ¯ci=¯pi ⊕¯z k ¯c j=¯p j ⊕¯zk Attacker has access to ¯ci and ¯c j ¯ci⊕¯c j=(¯pi⊕¯zk )⊕(¯p j⊕¯z k)=¯pi⊕ ¯p j ● XORing two cipher-texts encrypted using the same seed results in XOR of corresponding plain-texts ● Redundancy in plain-text structure can be easily used to determine both plain- texts ● And hence, the key stream ● Never reuse seed? ● Impractical ● Extend seed using an initial value (IV) which can be sent in the clear ● Never reuse IV Block Ciphers ● C=E(P,K) ● P=D(C,K) ● E() and D() are algorithms ● P is a block of “plain text” (m bits) ● C is the corresponding “cipher text” (also m bits) ● K is the secret key (k bits long) ● (k,m) block cipher – k-bit keysize, m-bit blocksize ● (m+k)-bit input, m-bit output Desired Properties ● The most efficient attack should be the brute-force attack (complexity depends only on key length) ● Knowledge of any number of plain-cipher text pairs, still does not reveal any information regarding any bit of the key.
    [Show full text]
  • Applied Cryptography and Data Security
    Lecture Notes APPLIED CRYPTOGRAPHY AND DATA SECURITY (version 2.5 | January 2005) Prof. Christof Paar Chair for Communication Security Department of Electrical Engineering and Information Sciences Ruhr-Universit¨at Bochum Germany www.crypto.rub.de Table of Contents 1 Introduction to Cryptography and Data Security 2 1.1 Literature Recommendations . 3 1.2 Overview on the Field of Cryptology . 4 1.3 Symmetric Cryptosystems . 5 1.3.1 Basics . 5 1.3.2 A Motivating Example: The Substitution Cipher . 7 1.3.3 How Many Key Bits Are Enough? . 9 1.4 Cryptanalysis . 10 1.4.1 Rules of the Game . 10 1.4.2 Attacks against Crypto Algorithms . 11 1.5 Some Number Theory . 12 1.6 Simple Blockciphers . 17 1.6.1 Shift Cipher . 18 1.6.2 Affine Cipher . 20 1.7 Lessons Learned | Introduction . 21 2 Stream Ciphers 22 2.1 Introduction . 22 2.2 Some Remarks on Random Number Generators . 26 2.3 General Thoughts on Security, One-Time Pad and Practical Stream Ciphers 27 2.4 Synchronous Stream Ciphers . 31 i 2.4.1 Linear Feedback Shift Registers (LFSR) . 31 2.4.2 Clock Controlled Shift Registers . 34 2.5 Known Plaintext Attack Against Single LFSRs . 35 2.6 Lessons Learned | Stream Ciphers . 37 3 Data Encryption Standard (DES) 38 3.1 Confusion and Diffusion . 38 3.2 Introduction to DES . 40 3.2.1 Overview . 41 3.2.2 Permutations . 42 3.2.3 Core Iteration / f-Function . 43 3.2.4 Key Schedule . 45 3.3 Decryption . 47 3.4 Implementation . 50 3.4.1 Hardware .
    [Show full text]
  • A Comprehensive Study of Various High Security Encryption Algorithms
    © 2019 JETIR March 2019, Volume 6, Issue 3 www.jetir.org (ISSN-2349-5162) A COMPREHENSIVE STUDY OF VARIOUS HIGH SECURITY ENCRYPTION ALGORITHMS 1J T Pramod, 2N Gayathri, 3N Jayaram, 4T Geethanjali, 5M Anusha 1Assistant Professor, 2,3,4,5Student 1Department of Electronics and Communication Engineering 1Aditya College of Engineering, Madanapalle, Andhra Pradesh, India Abstract: It is well known that with the rapid technological development in the areas of multimedia and data communication networks, the data stored in image format has become so common and necessary. As digital images have become a vital mode of information transfer for confidential data, security has become a vital issue. Images containing sensitive data can be encrypted to another suitable form in order to preserve the information in a secure way. Modern cryptography provides various essential methods for securing the vital information available in the multimedia form. This paper outlines various high secure encryption algorithms. Considerable amount of research has been carried out in confusion and diffusion steps of cryptography using various chaotic maps for image encryption. The chaos-based image encryption scheme employs various pixel mapping methods applied during the confusion and diffusion stages of encryption. Following the same steps of cryptography but performing pixel scrambling and substitution using Genetic Algorithm and DNA Sequence respectively is another way to securely encrypt an image. Generalized Singular Value Decomposition a matrix decomposition method a generalized version of Singular Value Decomposition suits well for encrypting images. Using the similar guidelines, by employing Quadtree Decomposition to partially encrypt an image is yet another method used to secure a portion of an image containing confidential information.
    [Show full text]
  • Applications of Search Techniques to Cryptanalysis and the Construction of Cipher Components. James David Mclaughlin Submitted F
    Applications of search techniques to cryptanalysis and the construction of cipher components. James David McLaughlin Submitted for the degree of Doctor of Philosophy (PhD) University of York Department of Computer Science September 2012 2 Abstract In this dissertation, we investigate the ways in which search techniques, and in particular metaheuristic search techniques, can be used in cryptology. We address the design of simple cryptographic components (Boolean functions), before moving on to more complex entities (S-boxes). The emphasis then shifts from the construction of cryptographic arte- facts to the related area of cryptanalysis, in which we first derive non-linear approximations to S-boxes more powerful than the existing linear approximations, and then exploit these in cryptanalytic attacks against the ciphers DES and Serpent. Contents 1 Introduction. 11 1.1 The Structure of this Thesis . 12 2 A brief history of cryptography and cryptanalysis. 14 3 Literature review 20 3.1 Information on various types of block cipher, and a brief description of the Data Encryption Standard. 20 3.1.1 Feistel ciphers . 21 3.1.2 Other types of block cipher . 23 3.1.3 Confusion and diffusion . 24 3.2 Linear cryptanalysis. 26 3.2.1 The attack. 27 3.3 Differential cryptanalysis. 35 3.3.1 The attack. 39 3.3.2 Variants of the differential cryptanalytic attack . 44 3.4 Stream ciphers based on linear feedback shift registers . 48 3.5 A brief introduction to metaheuristics . 52 3.5.1 Hill-climbing . 55 3.5.2 Simulated annealing . 57 3.5.3 Memetic algorithms . 58 3.5.4 Ant algorithms .
    [Show full text]
  • What You Should Know for the Midterm Test
    MATC16 Cryptography and Coding Theory G´abor Pete University of Toronto Scarborough What you should know for the midterm test Principles and goals of cryptography: Kerckhoff’s principle. Shannon’s confusion and diffusion. Possible attack situations (cipher- text only, chosen plaintext, etc.). Possible goals of attacker, and the corresponding tasks of cryptography (confidentiality, data integrity, authentication, non-repudiation). [Chap- ter 1, plus page 38 and http://en.wikipedia.org/wiki/Confusion_and_diffusion for diffusion & confusion.] Classical cryptosystems: Number theory basics: infinitely many primes exist, basics of modular arithmetic, extended Euclidean algorithm, solving ax+by = d, inverting numbers and matrices (mod n). [Sections 3.1-3 and 3.8.] Shift and affine ciphers. Their ciphertext only and known plaintext attacks. Composition of two affine ciphers is again an affine cipher. [Sections 2.1-2.] Substitution ciphers in general. [Section 2.4] Vigen`ere cipher. Known plaintext attack. Ciphertext only: finding the key length, then frequency analysis. [Section 2.3.] Hill cipher. Known plaintext attack. [Section 2.7.] One-time pad. LFSR sequences. Known plaintext attack, finding the recursion. [Sections 2.9 and 11.] Basics of Enigma. [Section 2.12, up to middle of page 53.] The DES: Feistel systems, simplified and real DES (without the exact expansion functions and S-boxes and permutations, of course), how decryption works in these DES versions. How the extra parity check bits in the real DES key ensure error detection. How confusion and diffusion are fulfilled in DES. [Sections 4.1-2 and 4.4.] Double and Triple DES. Meet-in-the-middle attack. (I mentioned here that one can organize the two lists of length n and find a match between them in almost linear time (n log n) instead of the naive approach that would give only n2, and hence would ruin the attack completely.
    [Show full text]
  • Data Encryption Standard (DES)
    6 Data Encryption Standard (DES) Objectives In this chapter, we discuss the Data Encryption Standard (DES), the modern symmetric-key block cipher. The following are our main objectives for this chapter: + To review a short history of DES + To defi ne the basic structure of DES + To describe the details of building elements of DES + To describe the round keys generation process + To analyze DES he emphasis is on how DES uses a Feistel cipher to achieve confusion and diffusion of bits from the Tplaintext to the ciphertext. 6.1 INTRODUCTION The Data Encryption Standard (DES) is a symmetric-key block cipher published by the National Institute of Standards and Technology (NIST). 6.1.1 History In 1973, NIST published a request for proposals for a national symmetric-key cryptosystem. A proposal from IBM, a modifi cation of a project called Lucifer, was accepted as DES. DES was published in the Federal Register in March 1975 as a draft of the Federal Information Processing Standard (FIPS). After the publication, the draft was criticized severely for two reasons. First, critics questioned the small key length (only 56 bits), which could make the cipher vulnerable to brute-force attack. Second, critics were concerned about some hidden design behind the internal structure of DES. They were suspicious that some part of the structure (the S-boxes) may have some hidden trapdoor that would allow the National Security Agency (NSA) to decrypt the messages without the need for the key. Later IBM designers mentioned that the internal structure was designed to prevent differential cryptanalysis.
    [Show full text]