270 likes | 503 Views
Counter-measures. Threat Monitoring Cryptography as a security tool Encryption Digital Signature Key distribution. Threat Monitoring. Check for suspicious patterns of activity i.e., several incorrect password attempts may signal password guessing Audit log
E N D
Counter-measures • Threat Monitoring • Cryptography as a security tool • Encryption • Digital Signature • Key distribution
Threat Monitoring • Check for suspicious patterns of activity • i.e., several incorrect password attempts may signal password guessing • Audit log • Records time, user, & type of all accesses to object • Useful for recovery from violation, developing better security measures • Scan system periodically for security holes • Done when the computer is relatively unused
Threat Monitoring (Cont.) • Check for: • Short or easy-to-guess passwords • Unauthorized setuid programs • Unauthorized programs in system directories • Unexpected long-running processes • Improper directory protections • Improper protections on system data files • Dangerous entries in the program search path (Trojan horse) • Changes to system programs: monitor checksum values
K K A B Cryptography • Cryptography: a set of mathematical functions with a set of nice properties. A common mechanism for enforcing policies. • Encrypt clear text into cipher text, and vice versa Alice’s encryption key Bob’s decryption key encryption algorithm decryption algorithm ciphertext plaintext plaintext
Properties of Good Encryption Techniques • Encryption scheme depends not on secrecy of algorithm but on parameter of algorithm called encryption key • Extremely difficult for an intruder to determine the encryption key
Cryptography Algorithms • Symmetric key algorithm: one shared by a pair of users used for both encryption and decryption. • Asymmetric or public/private key algorithms are based on each user having two keys: • public key – in public • private key – key known only to individual user
K K A-B A-B K (m) m = K ( ) A-B A-B Symmetric Key Cryptography Symmetric key crypto: Bob and Alice share same (symmetric) key: K encryption algorithm decryption algorithm ciphertext plaintext plaintext message, m K (m) A-B A-B Q: how do Bob and Alice agree on key value?
Symmetric Key Cryptography: Substitution Ciper • Substituting one thing for another • monoalphabetic cipher: substitute one letter for another plaintext: abcdefghijklmnopqrstuvwxyz ciphertext: mnbvcxzasdfghjklpoiuytrewq E.g.: Plaintext: bob. i love you. alice ciphertext: nkn. s gktc wky. mgsbc • Q:How hard to break this simple cipher? • Brute force • Other
DES operation Symmetric Key Crypto: DES DES: Data Encryption Standard US encryption standard [NIST 1993] initial permutation 16 identical “rounds” of function application, each using different 48 bits of key final permutation
How Secure is DES? • DES Challenge: 56-bit-key-encrypted phrase (“Strong cryptography makes the world a safer place”) decrypted (brute force) in 4 months in 1997 • No known “backdoor” decryption approach • Making DES more secure: • use three keys sequentially (3-DES) on each datum • use cipher-block chaining
AES: Advanced Encryption Standard • new (Nov. 2001) symmetric-key NIST standard, replacing DES • processes data in 128 bit blocks • 128, 192, or 256 bit keys • brute force decryption (try each key) taking 1 sec on DES, takes 149 trillion years for AES
Public Key Cryptography public key cryptography • radically different approach [Diffie-Hellman76, RSA78] • sender, receiver do notshare secret key • publickey known toall • private key known only to an individual symmetric key crypto • requires sender, receiver know shared secret key • Q: how to agree on key in first place (particularly if never “met”)?
+ K (m) B - + m = K (K (m)) B B Public Key Cryptography + Bob’s public key K B - Bob’s private key K B encryption algorithm decryption algorithm plaintext message plaintext message, m ciphertext
K (K (m)) = m B B - + 2 1 Public Key Encryption Algorithms Requirements: need K ( ) and K ( ) such that + - B B + given public key K , it should be impossible to compute private key K B - B RSA: Rivest, Shamir, Adelson algorithm
+ - K K B B RSA: Choosing Keys 1. Choose two large prime numbers p, q. (e.g., 1024 bits each) 2. Compute n = pq, z = (p-1)(q-1) 3. Choose e (with e<n) that has no common factors with z. (e, z are “relatively prime”). 4. Choose d such that ed-1 is exactly divisible by z. (in other words: ed mod z = 1 ). 5.Public key is (n,e).Private key is (n,d).
1. To encrypt bit pattern, m, compute d e m = c mod n c = m mod n e (i.e., remainder when m is divided by n) d e m = (m mod n) mod n RSA: Encryption, decryption 0. Given (n,e) and (n,d) as computed above 2. To decrypt received bit pattern, c, compute d (i.e., remainder when c is divided by n) Magic happens! c
d e c = m mod n m = c mod n d c RSA Example: Bob chooses p=5, q=7. Then n=35, z=24. e=5 (so e, z relatively prime). d=29 (so ed-1 exactly divisible by z). e m m letter encrypt: l 17 1524832 12 c letter decrypt: 17 12 l 481968572106750915091411825223071697
1 = m = m mod n y y mod (p-1)(q-1) x mod n = x mod n RSA: Why it works Useful number theory result: If p,q prime and n = pq, then: e d ed (m mod n) mod n = m mod n ed mod (p-1)(q-1) = m mod n (using number theory result above) (since we choseed to be divisible by (p-1)(q-1) with remainder 1 )
K (K (m)) = m - B B + K (K (m)) - + = B B RSA: Another Important Property The following property will be veryuseful later: use private key first, followed by public key use public key first, followed by private key Result is the same!
Usage of Cryptography • Encryption (for confidentiality) • Digital Signature • Key distribution
Cryptographic technique analogous to hand-written signatures. sender (Bob) digitally signs document, establishing he is document owner/creator. verifiable, nonforgeable: recipient (Alice) can prove to someone that Bob, and no one else (including Alice), must have signed document Digital Signature: signed (encrytped) message digest Digital Signatures
Goal: fixed-length, easy- to-compute digital “fingerprint” apply hash function H to m, get fixed size message digest, H(m). Hash function properties: many-to-1 produces fixed-size msg digest (fingerprint) given message digest x, computationally infeasible to find m’ such that x = H(m’) Message Digests large message m H: Hash Function H(m)
H: Hash function H: Hash function large message m large message m + - digital signature (decrypt) digital signature (encrypt) K K B B encrypted msg digest encrypted msg digest + - - KB(H(m)) KB(H(m)) H(m) H(m) Digital Signature: Example Bob sends digitally signed message: Alice verifies signature and integrity of digitally signed message: H(m) Bob’s private key Bob’s public key equal ?
Functionality of Digital signature • Functionality: • Prove Bob signed the message • Message has not been modified • Questions: • Why sign message digest instead of message? • What if Bob wants m to be confidential? • Question: can you use symmetric cryptography for digital signature?
MD5 (Message-Digest algorithm 5) hash function widely used (RFC 1321) computes 128-bit message digest in 4-step process. Designed by Rivest, 1992 Found security flaws in 1996, more serious flaws found in 2004. SHA-1 (Secure Hash Algorithm) is also used. US standard [NIST, FIPS PUB 180-1] 160-bit message digest Shown possible to break it faster than brute-force, 2005 Hash Function Algorithms
Comparison of Symmetric & Asymmetric Cryptography • Symmetric cryptography • Easy to compute • Asymmetric cryptography • Computationally expensive • Good theoretical bounds • Provide more functionalities than encryption (e.g., digital signature)