780 likes | 940 Views
Information Security Management -- Cryptography. Summary. Symmetric Encryption Public Encryption Digital Signature Key Distribution. Basic Terminology. plaintext - the original message ciphertext - the coded message cipher - algorithm for transforming plaintext to ciphertext
E N D
Information Security Management-- Cryptography CPSC499 Information Security Management
Summary • Symmetric Encryption • Public Encryption • Digital Signature • Key Distribution CPSC499 Information Security Management
Basic Terminology • plaintext - the original message • ciphertext - the coded message • cipher - algorithm for transforming plaintext to ciphertext • key - info used in cipher known only to sender/receiver • encipher (encrypt) - converting plaintext to ciphertext • decipher (decrypt) - recovering ciphertext from plaintext • cryptography - study of encryption principles/methods • cryptanalysis (codebreaking) - the study of principles/ methods of deciphering ciphertext without knowing key • cryptology - the field of both cryptography and cryptanalysis CPSC499 Information Security Management
K K A B The language of cryptography Alice’s encryption key Bob’s decryption key symmetric key crypto: sender, receiver keys identical public-key crypto: encryption key public, decryption key secret (private) encryption algorithm decryption algorithm ciphertext plaintext plaintext CPSC499 Information Security Management
Symmetric Encryption • or conventional / secret-key / single-key • sender and recipient share a common key • all classical encryption algorithms are private-key • was only type prior to invention of public-key in 1970’s CPSC499 Information Security Management
Symmetric Cipher Model CPSC499 Information Security Management
K K A-B A-B K (m) m = K ( ) A-B A-B Symmetric Key Cryptography symmetric key crypto: Bob and Alice share know same (symmetric) key: K • e.g., key is knowing substitution pattern in mono alphabetic substitution cipher encryption algorithm decryption algorithm ciphertext plaintext plaintext message, m K (m) A-B A-B CPSC499 Information Security Management
Requirements • two requirements for secure use of symmetric encryption: • a strong encryption algorithm • a secret key known only to sender / receiver Y = EK(X) X = DK(Y) • assume encryption algorithm is known • implies a secure channel to distribute key CPSC499 Information Security Management
Cryptography • can characterize by: • type of encryption operations used • substitution / transposition / product • number of keys used • single-key or private / two-key or public • way in which plaintext is processed • block / stream CPSC499 Information Security Management
More Definitions • unconditional security • no matter how much computer power is available, the cipher cannot be broken since the ciphertext provides insufficient information to uniquely determine the corresponding plaintext • computational security • given limited computing resources (eg time needed for calculations is greater than age of universe), the cipher cannot be broken CPSC499 Information Security Management
Classical Substitution Ciphers • where letters of plaintext are replaced by other letters or by numbers or symbols • or if plaintext is viewed as a sequence of bits, then substitution involves replacing plaintext bit patterns with ciphertext bit patterns CPSC499 Information Security Management
Caesar Cipher • earliest known substitution cipher • by Julius Caesar • first attested use in military affairs • replaces each letter by 3rd letter later • example: meet me after the toga party PHHW PH DIWHU WKH WRJD SDUWB CPSC499 Information Security Management
Caesar Cipher • can define transformation as: 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 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 • mathematically give each letter a number 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 • then have Caesar cipher as: C = E(p) = (p + k) mod (26) p = D(C) = (C – k) mod (26) CPSC499 Information Security Management
Cryptanalysis of Caesar Cipher • only have 26 possible ciphers • A maps to A,B,..Z • could simply try each in turn • a brute force search • given ciphertext, just try all shifts of letters • do need to recognize when have plaintext • eg. break ciphertext “ERE L ORYH BRX DOLFH" CPSC499 Information Security Management
K K A-B A-B Symmetric Encryption Example-- Substitution encryption algorithm decryption algorithm ciphertext plaintext plaintext message, m K (m) A-B • Plaintext • KA-B • Ciphertext • Encryption algorithm • Decryption algorithm CPSC499 Information Security Management
Monoalphabetic Ciphers • “Cipher” line can be any permutation of the 26 alphabetic char • Statistical analysis • Letters “e” and “t” are the most frequent occurring letters • Two and three letter occurrences of letters appear quite often together, like “the”, “in” • Guess the appearance of the words CPSC499 Information Security Management
Types of Cryptanalytic Attacks • ciphertext only • only know algorithm / ciphertext, statistical, can identify plaintext • known plaintext • know/suspect plaintext & ciphertext to attack cipher • chosen plaintext • select plaintext and obtain ciphertext to attack cipher CPSC499 Information Security Management
Brute Force Search • always possible to simply try every key • most basic attack, proportional to key size • assume either know / recognise plaintext CPSC499 Information Security Management
PIN is encrypted and transmitted to bank cipher(key,PIN) Crook #2 eavesdrops on the wire and learns ciphertext corresponding to chosen plaintext PIN Chosen-Plaintext Attack Crook #1 changes his PIN to a number of his choice … repeat for any PIN value CPSC499 Information Security Management
Polyalphabetic encryption • monoalphabetic ciphers + Caesar cipher. • Two Caesar ciphers (k=5, k=19) • Repeating pattern c1, c2, c2, c1, c2 CPSC499 Information Security Management
Transposition Ciphers • now consider classical transposition or permutation ciphers • these hide the message by rearranging the letter order • without altering the actual letters used • can recognise these since have the same frequency distribution as the original text CPSC499 Information Security Management
Rail Fence cipher • write message letters out diagonally over a number of rows • then read off cipher row by row • eg. write message out as: m e m a t r h t g p r y e t e f e t e o a a t • giving ciphertext MEMATRHTGPRYETEFETEOAAT CPSC499 Information Security Management
Row Transposition Ciphers • a more complex scheme • write letters of message out in rows over a specified number of columns • then reorder the columns according to some key before reading off the rows Key: 4 3 1 2 5 6 7 Plaintext: a t t a c k p o s t p o n e d u n t i l t w o a m x y z Ciphertext: TTNAAPTMTSUOAODWCOIXKNLYPETZ CPSC499 Information Security Management
Product Ciphers • ciphers using substitutions or transpositions are not secure because of language characteristics • hence consider using several ciphers in succession to make harder, but: • two substitutions make a more complex substitution • two transpositions make more complex transposition • but a substitution followed by a transposition makes a new much harder cipher • this is bridge from classical to modern ciphers CPSC499 Information Security Management
Simple Idea: One-Time Pad 10111101… ----- ----- ----- = 10111101… 10001111… = 00110010… 00110010… Key is a never-repeating bit sequence as long as plaintext Decrypt by bitwise XOR of ciphertext and key: ciphertext key = (plaintext key) key = plaintext (key key) = plaintext Encrypt by bitwise XOR of plaintext and key: ciphertext =plaintext key Cipher achievesperfect secrecyif and only if there are as many possible keys as possible plaintexts, and every key is equally likely (Claude Shannon’s result) CPSC499 Information Security Management
Advantages of One-Time Pad • Easy to compute • Encryption and decryption are the same operation • Bitwise XOR is very cheap to compute • As secure as possible • Given a ciphertext, all plaintexts are equally likely, regardless of attacker’s computational resources • …as long as the key sequence is truly random • True randomness is expensive to obtain in large quantities • …as long as each key is same length as plaintext • But how does the sender communicate the key to receiver? CPSC499 Information Security Management
Problems with One-Time Pad • Key must be as long as plaintext • Impractical in most realistic scenarios • Still used for diplomatic and intelligence traffic • Does not guarantee integrity • One-time pad only guarantees confidentiality • Attacker cannot recover plaintext, but can easily change it to something else • Insecure if keys are reused • Attacker can obtain XOR of plaintexts CPSC499 Information Security Management
Modern Block Ciphers • will now look at modern block ciphers • one of the most widely used types of cryptographic algorithms • provide secrecy and/or authentication services • in particular will introduce DES (Data Encryption Standard) CPSC499 Information Security Management
Block vs Stream Ciphers • block ciphers process messages into blocks, each of which is then en/decrypted • like a substitution on very big characters • 64-bits or more • stream ciphers process messages a bit or byte at a time when en/decrypting • many current ciphers are block ciphers • hence are focus of course CPSC499 Information Security Management
Block Ciphers • Operates on a single chunk (“block”) of plaintext • For example, 64 bits for DES • Same key is reused for each block (can use short keys) • Result should look like a random permutation • As if plaintext bits were randomly shuffled • Only computational guarantee of secrecy • Not impossible to break, just very expensive • If there is no efficient algorithm (unproven assumption!), then can only break by brute-force, try-every-possible-key search • Time/cost of breaking the cipher exceeds the value and/or useful lifetime of protected information CPSC499 Information Security Management
Permutation 1 1 • For N-bit input, N! possible permutations • Idea: split plaintext into blocks, for each block use secret key to pick a permutation, rinse and repeat • Without the key, permutation should “look random” 2 2 3 3 4 4 CODE becomes DCEO CPSC499 Information Security Management
repeat for several rounds Block of ciphertext Block Cipher Operation (Simplified) Block of plaintext Key S S S S Add some secret key bits to provide confusion S S S S Each S-box permutes its input bits in a “random-looking” way to provide diffusion (spread plaintext bits throughout ciphertext) S S S S Procedure must be reversible (for decryption) CPSC499 Information Security Management
Block Cipher Principles • needed since must be able to decrypt ciphertext to recover messages efficiently • block ciphers look like an extremely large substitution • instead create from smaller building blocks • using idea of a product cipher CPSC499 Information Security Management
Claude Shannon and Substitution-Permutation Ciphers • in 1949 Claude Shannon introduced idea of substitution-permutation (S-P) networks • modern substitution-transposition product cipher • these form the basis of modern block ciphers • S-P networks are based on the two primitive cryptographic operations we have seen before: • substitution (S-box) • permutation (P-box) • provide confusion and diffusion of message CPSC499 Information Security Management
Confusion and Diffusion • cipher needs to completely obscure statistical properties of original message • a one-time pad does this • more practically Shannon suggested combining elements to obtain: • diffusion – dissipates statistical structure of plaintext over bulk of ciphertext • confusion – makes relationship between ciphertext and key as complex as possible CPSC499 Information Security Management
Data Encryption Standard (DES) • most widely used block cipher in world • adopted in 1977 by NBS (now NIST http://www.itl.nist.gov/fipspubs/fip46-2.htm ) • encrypts 64-bit data using 56-bit key • has widespread use • has been considerable controversy over its security CPSC499 Information Security Management
DES History • IBM developed Lucifer cipher • by team led by Feistel • used 64-bit data blocks with 128-bit key • then redeveloped as a commercial cipher with input from NSA and others • in 1973 NBS issued request for proposals for a national cipher standard • IBM submitted their revised Lucifer which was eventually accepted as the DES CPSC499 Information Security Management
DES Encryption CPSC499 Information Security Management
Strength of DES – Key Size • 56-bit keys have 256 = 7.2 x 1016 values • brute force search looks hard • recent advances have shown is possible • in 1997 on Internet in a few months • in 1998 on dedicated h/w (EFF) in a few days • in 1999 above combined in 22hrs! • still must be able to recognize plaintext CPSC499 Information Security Management
Design Principles • block size • increasing size improves security, but slows cipher • key size • increasing size improves security, makes exhaustive key searching harder, but may slow cipher • number of rounds • increasing number improves security, but slows cipher • subkey generation • greater complexity can make analysis harder, but slows cipher • round function • greater complexity can make analysis harder, but slows cipher • fast software en/decryption & ease of analysis • are more recent concerns for practical use and testing CPSC499 Information Security Management
Confidentiality using Symmetric Encryption • have two major placement alternatives • link encryption • encryption occurs independently on every link • implies must decrypt traffic between links • end-to-end encryption • encryption occurs between original source and final destination • need devices at each end with shared keys CPSC499 Information Security Management
Placement of Encryption • can place encryption function at various layers in OSI Reference Model • link encryption occurs at layers 1 or 2 • end-to-end can occur at layers 3, 4, 6, 7 • as move higher less information is encrypted but it is more secure though more complex with more entities and keys CPSC499 Information Security Management
Summary • Symmetric encryption • Public encryption • Digital Signature • Key distribution CPSC499 Information Security Management
Private-Key Cryptography • traditional private/secret/single key cryptography uses one key • shared by both sender and receiver • if this key is disclosed communications are compromised • also is symmetric, parties are equal • hence does not protect sender from receiver forging a message & claiming is sent by sender CPSC499 Information Security Management
Public-Key Cryptography • probably most significant advance in the 3000 year history of cryptography • uses two keys – a public & a private key • asymmetric since parties are not equal • uses clever application of number theoretic concepts to function • complements rather than replaces private key crypto CPSC499 Information Security Management
Public-Key Cryptography • public-key/two-key/asymmetric cryptography involves the use of two keys: • a public-key, which may be known by anybody, and can be used to encrypt messages, and verify signatures • a private-key, known only to the recipient, used to decrypt messages, and sign (create) signatures • is asymmetric because • those who encrypt messages or verify signatures cannot decrypt messages or create signatures CPSC499 Information Security Management
Public-Key Cryptography CPSC499 Information Security Management
Public-Key Characteristics • Public-Key algorithms rely on two keys with the characteristics that it is: • computationally infeasible to find decryption key knowing only algorithm & encryption key • computationally easy to en/decrypt messages when the relevant (en/decrypt) key is known • either of the two related keys can be used for encryption, with the other used for decryption (in some schemes) CPSC499 Information Security Management
Public-Key Cryptosystems CPSC499 Information Security Management
Public-Key Applications • can classify uses into 3 categories: • encryption/decryption (provide secrecy) • digital signatures (provide authentication) • key exchange (of session keys) • some algorithms are suitable for all uses, others are specific to one CPSC499 Information Security Management