1 / 52

CSC 405 Introduction to Computer Security

CSC 405 Introduction to Computer Security. Topic 2. Basic Cryptography (Part I). Cryptography. Cryptography Original meaning: The art of secret writing Becoming a science that relies on mathematics (number theory, algebra) Process data into unintelligible form, reversible, without data loss

venecia
Télécharger la présentation

CSC 405 Introduction to Computer Security

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CSC 405Introduction to Computer Security Topic 2. Basic Cryptography (Part I) By Dr. Peng Ning

  2. Cryptography • Cryptography • Original meaning: The art of secret writing • Becoming a science that relies on mathematics (number theory, algebra) • Process data into unintelligible form, reversible, without data loss • Usually one-to-one (not compression) By Dr. Peng Ning

  3. Encryption/Decryption • Plaintext: a message in its original form • Ciphertext: a message in the transformed, unrecognized form • Encryption: the process that transforms a plaintext into a ciphertext; also known as encode and encipher • Decryption: the process that transforms a ciphertext to the corresponding plaintext; also known as decode and decipher • Key: the value used to control encryption/decryption • Cryptosystem: a system for encryption and decryption plaintext ciphertext plaintext encryption decryption key key By Dr. Peng Ning

  4. Cryptanalysis • Ciphertext only: • Analyze only with the ciphertext • Example: Exhaustive search until “recognizable plaintext” • Smarter ways available • Known plaintext: • Secret may be revealed (by spy, time), thus <ciphertext, plaintext> pair is obtained • Great for mono-alphabetic ciphers By Dr. Peng Ning

  5. Cryptanalysis (Cont’d) • Chosen plaintext: • Choose text, get encrypted • Useful if limited set of messages • Chosen ciphertext: • Choose ciphertext • Get feedback from decryption, etc. By Dr. Peng Ning

  6. Simple Forms of Encryption • Substitutions • One letter is replaced with another • Transpositions • Also called permutations • The order of the letters is rearranged • Building blocks of modern cryptographic algorithms By Dr. Peng Ning

  7. Substitution Ciphers • Monoalphabetic cipher (simple substitution) • Use a correspondence table • Substitute a character or symbol for each character of the original message • Example: Caesar cipher • Replace each letter with the one 3 letters later • Exercise • E (“COMPUTER SCIENCE”)  • D (“qf vwdwh”)  By Dr. Peng Ning

  8. Caesar Cipher • Cryptanalysis of Caesar cipher • Can be done by guessing • Clues • Break between two words is preserved • You can try common letters starting or ending a word • Double letters are preserved • Always use the same mapping • Exercise: • wklv phvvdjh lv qrw wrr kdug wr euhdn By Dr. Peng Ning

  9. Other Substitutions • In general • The alphabet is scrambled • Each plaintext letter maps to a unique ciphertext letter • A substitution table can be defined using a permutation • A permutation is a reordering of the elements of a sequence By Dr. Peng Ning

  10. Cryptanalysis of Substitution Ciphers • Ad hoc clues • Short words, words with repeated patterns, common initial and final letters • Language specific knowledge • Frequency of letters • E, T, O, and A occur far more often than J, Q, X, and Z • Letter patterns • th, er, en, ss, st, … By Dr. Peng Ning

  11. One-Time Pads • Encrypt plaintext with a large, non-repeating set of keys • Absolute synchronization between sender and receiver • Unlimited number of keys Vernam cipher By Dr. Peng Ning

  12. Book Cipher • Use book, piece of music, or other object with which structure can be analyzed • Both sender and receiver need access to identical objects • Example: book cipher with Vigenère tableau • Key: I am, I exist, that is certain. • Plaintext: MACHINES CANNOT THINK column iamie xistt hatis cert MACHI NESCA NNOTT HINK row Uaopm kmkvt unbhl jmed By Dr. Peng Ning

  13. a b c d e f g h i j k l m n o p q r s t u v w x y z A a b c d e f g h i j k l m no p q r s t u v w x y z B b c d e f g h i j k l m n o p q r s t u v w x y z a C c d e f g h i j k l m n o p q r s t u v w x y z a b D d e f g h i j k l m n o p q r s t u v w x y z a b c E e f g h i j k l m n o p q rs t u v w x y z a b c d F 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 G 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 f H h i j k l m n o p q r s t u v w x y z a b c d e f g I i j k l m n o p q r s t u vw x y z a b c d e f g h J j k l m n o p q r s t u v w x y z a b c d e f g h i K k l m n o p q r s t u v w x y z a b c d e f g h i j L l m n o p q r s t u v w x y z a b c d e f g h i j k M m n o p q r s t u v w x y z a b c d e f g h i j k l … Vigenère Tableau By Dr. Peng Ning

  14. Cryptanalysis of Book Cipher • Flaw of book cipher • Distributions of both key and message cluster around high frequency letters • Example • A, E, O, T, N, I account for 50% of all letters • Probability of both key and plaintext letters are one of them: 0.25 • Cryptanalysis • Look for intersections of the above six letters • For each cipher text letter, identify the possible plaint text letter from those intersections uaopm kmkvt unbhl jmed ?AA?E ?E??A ?ANN? ?EA? O I I T NTTIE T T T Correct prediction underlined By Dr. Peng Ning

  15. Transpositions (Permutations) • Letters of the message are rearranged • Aim to break established patterns • Confusion and diffusion • Confusion • Make it difficult to determine how message and key are transformed into cipher text • Complex relationship between plaintext, key, and ciphertext • Done through substitution • Diffusion • Widely spread the information from the message or key across the cipher text • Done through transposition (permutation) By Dr. Peng Ning

  16. Columnar Transpositions • Rearrange characters of the plain text into columns Cipher text: ______________________________________ By Dr. Peng Ning

  17. Cryptanalysis of Transpositions • Diagram analysis • Frequent diagram • Patterns of pairs of adjacent letters • RE, EN, ER, NT, … • Frequent trigrams • Groups of three letters • ENT, ION, AND, ING, … • Infrequent diagrams and trigrams • VK and QP By Dr. Peng Ning

  18. Cryptanalysis by Diagram Analysis • Confirms it is a transposition • Compute the letter frequencies • Find adjacent columns • Try different column sizes • Look for common diagrams • Verify possible matches for different positions • Rely heavily on a human’s judgment of what “looks right” By Dr. Peng Ning

  19. Product Cipher • Product cipher • Combination of two ciphers • Modern ciphers: interleaved substitutions and transpositions (permutations) • SPSP… • But • How about SPSSP… • How about SPPS… By Dr. Peng Ning

  20. “Good” Encryption algorithms • What does it mean for a cipher to be “good”? • Meaning of “good” depends on intended use of the cipher • Commercial applications • Military applications By Dr. Peng Ning

  21. Characteristics of “Good” Ciphers • Shannon’s principles • The amount of secrecy needed should determine the amount of labor appropriate for the encryption and decryption • The set of keys and the enciphering algorithm should be free from complexity • No restrictions on keys or plain text; keys should be short • The implementation of the process should be as simple as possible • Formulated with hand encryption in mind • Implementation on a computer need not be simple, as long as the time complexity is tolerable By Dr. Peng Ning

  22. Characteristics of “Good” Ciphers • Shannon’s Principles (Cont’d) • Errors in ciphering should not propagate and cause corruption of further information in the message • No error propagation • The size of the enciphered text should be no larger than the text of the original message • Dramatic cipher expansion in size does not carry more information, but • It gives the cryptanalyst more data to infer patterns By Dr. Peng Ning

  23. Security of An Encryption Algorithm • Unconditionally secure • It is impossible to decrypt the ciphertext • One-time pad (the key is as long as the plaintext) • 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 By Dr. Peng Ning

  24. Secret Keys v.s. Secret Algorithms • Security by obscurity • We can achieve better security if we keep the algorithms secret • Hard to keep secret if used widely • Reverse engineering, social engineering • Publish the algorithms • Security of the algorithms depends on the secrecy of the keys • Less unknown vulnerability if all the smart (good) people in the world are examine the algorithms By Dr. Peng Ning

  25. Secret Keys v.s. Secret Algorithms (Cont’d) • Commercial world • Published • Wide review, trust • Military • Keep algorithms secret • Avoid giving enemy good ideas • Military has access to the public domain knowledge anyway. By Dr. Peng Ning

  26. Types of Cryptography • Number of keys • Hash functions: no key • Secret key cryptography: one key • Public key cryptography: two keys - public, private • The way in which the plaintext is processed • Block cipher: divides input elements into blocks • Stream cipher: process one element (e.g., bit) a time By Dr. Peng Ning

  27. Secret Key Cryptography • Same key is used for encryption and decryption • Also known as • Symmetric cryptography • Conventional cryptography plaintext ciphertext plaintext encryption decryption key Same key key By Dr. Peng Ning

  28. Secret Key Cryptography (Cont’d) • Basic technique • Product cipher • Multiple applications of interleaved substitutions and permutations • Cipher text approximately the same length as plaintext S P S P S plaintext ciphertext … key By Dr. Peng Ning

  29. Stream and Block Ciphers • Stream ciphers • Convert one symbol of plaintext immediately into a symbol of ciphertext • A symbol: a character, a bit • Examples • Substitution ciphers discussed earlier • Modern example: RC4 By Dr. Peng Ning

  30. Stream and Block Ciphers (Cont’d) • Block cipher • Encrypt a group of plaintext symbols as on block • Examples • Columnar transposition • Modern examples: DES, AES By Dr. Peng Ning

  31. Applications of Secret Key Cryptography • Transmitting over an insecure channel • Challenge: How to share the key? • Secure Storage on insecure media • Authentication • Challenge-response • To prove the other party knows the secret key • Must be secure against chosen plaintext attack • Integrity check • Message Integrity Code (MIC) • Also called Message Authentication Code (MAC) By Dr. Peng Ning

  32. Public Key Cryptography • Invented/published in 1975 • A public/private key pair is used • Public key can be publicly known • Private key is kept secret by the owner of the key • Much slower than secret key cryptography • Also known as • Asymmetric cryptography plaintext ciphertext plaintext encryption decryption Public key Private key By Dr. Peng Ning

  33. Public Key Cryptography (Cont’d) • Another mode: digital signature • Only the party with the private key can create a digital signature. • The digital signature is verifiable by anyone who knows the public key. • The signer cannot deny that he/she has done so. message Yes/No Digital signature Sign Verify Private key Public key By Dr. Peng Ning

  34. Applications of Public Key Cryptography • Data transmission • Alice encrypts ma using Bob’s public key eB, Bob decrypts ma using his private key dB. • Storage • Can create a safety copy: using public key of trusted person. • Authentication • No need to store secrets, only need public keys. • Secret key cryptography: need to share secret key for every person to communicate with. By Dr. Peng Ning

  35. Applications of Public Key Cryptography (Cont’d) • Digital signatures • Sign hash H(m) with the private key • Authorship • Integrity • Non-repudiation: can’t do with secret key cryptography • Key exchange • Establish a common session key between two parties By Dr. Peng Ning

  36. Hash Algorithms • Also known as • Message digests • One-way transformations • One-way functions • Hash functions • Length of H(m) much shorter then length of m • Usually fixed lengths: 128 or 160 bits Message of arbitrary length A fixed-length short message Hash H By Dr. Peng Ning

  37. Hash Algorithms (Cont’d) • Desirable properties of hash functions • Performance: Easy to compute H(m) • One-way property: Given H(m) but not m, it’s difficult to find m • Weak collision free: Given H(m), it’s difficult to find m’ such that H(m’) = H(m). • Strong collision free: Computationally infeasible to find m1, m2 such that H(m1) = H(m2) By Dr. Peng Ning

  38. Applications of Hash Functions • Primary application • Generate/verify digital signature H(m) Message m Signature Sig(H(m)) H Sign Private key Message m H(m) H Verify Yes/No Signature Sig(H(m)) Public key By Dr. Peng Ning

  39. Applications of Hash Functions (Cont’d) • Password hashing • Doesn’t need to know password to verify it • Store H(password+salt) and salt, and compare it with the user-entered password • Salt makes dictionary attack more difficult • Message integrity • Agree on a secrete key k • Compute H(m|k) and send with m • Doesn’t require encryption algorithm, so the technology is exportable By Dr. Peng Ning

  40. DES (Data Encryption Standard) • Officially adopted in 1976 • Expired in 1998 • Key: 64 bit quantity=8-bit parity+56-bit key • Every 8th bit is a parity bit. • 64 bit input, 64 bit output. 64 bit M 64 bit C DES Encryption 56 bits By Dr. Peng Ning

  41. DES Top View 56-bit Key 64-bit Input Generate keys Initial Permutation Permutation 48-bit K1 Round 1 48-bit K2 Round 2 …... 48-bit K16 Round 16 Swap Swap 32-bit halves Final Permutation Permutation 64-bit Output By Dr. Peng Ning

  42. Bit Permutation (1-to-1) 1 2 3 4 32 ……. 0 0 1 0 1 Input: 1 bit Output …….. 1 0 1 1 1 22 6 13 32 3 By Dr. Peng Ning

  43. Initial and Final Permutations • Initial permutation (IP) • View the input as M: 8 X 8 bit matrix • Transform M into M’ in two steps • Transpose row x into column (9-x), 0<x<9 • Apply permutation on the rows: • For even row y, it becomes row y/2 • For odd row y, it becomes row (5+y/2) • Final permutation FP = IP-1 By Dr. Peng Ning

  44. Per-Round Key Generation Initial Permutation of DES key C i-1 D i-1 28 bits 28 bits Circular Left Shift Circular Left Shift Round 1,2,9,16: single shift Others: two bits Permutation with Discard 48 bits Ki C i D i 28 bits 28 bits By Dr. Peng Ning

  45. A DES Round 32 bits 32 bits E-Boxes Ki One Round Encryption 48 bits Mangler Function S-Boxes P 32 bits 32 bits 32 bits By Dr. Peng Ning

  46. E Box of DES (Expansion Permutation) • How is the E box defined • Each row expands from 4 bits to 6 bits By Dr. Peng Ning

  47. 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 S1 S2 S3 S4 S5 S6 S7 S8 + + + + + + + + Another View of the Mangler Function subkey The permutation produces “spread” among the chunks/S-boxes! Permutation By Dr. Peng Ning

  48. 2 bits row I1 I2 I3 I4 I5 I6 S O1 O2 O3 O4 i an integer between 0 and 15. 4 bits column = 1,…8. i S-Box (Substitute and Shrink) • 48 bits ==> 32 bits. (8*6 ==> 8 *4) • 2 bits used to select amongst 4 permutations for the rest of the 4-bit quantity By Dr. Peng Ning

  49. The First S Box S1 Each row and column contain different numbers. 0 1 2 3 4 5 6 … 15 0 14 4 13 1 2 15 11 1 0 15 7 4 14 2 13 2 4 1 14 8 13 6 2 3 15 12 8 2 4 9 1 Example: input: 100110 output: ??? By Dr. Peng Ning

  50. Cipher Iterative Action Input: 64 bits Key: 48 bits Output: 64 bits Key Generation Box Input: 56 bits Output: 48 bits DES Standard One round (Total 16 rounds) By Dr. Peng Ning

More Related