Presentation is loading. Please wait.

Presentation is loading. Please wait.

CMSC 414 Computer and Network Security Lecture 2 Jonathan Katz.

Similar presentations


Presentation on theme: "CMSC 414 Computer and Network Security Lecture 2 Jonathan Katz."— Presentation transcript:

1 CMSC 414 Computer and Network Security Lecture 2 Jonathan Katz

2 Why things are not quite so bad…  In practice, we do have trust (unlike Thompson’s article)  We have made great strides in computer security over the past decades –As security improvements are made, ever more functionality is desired –People unwilling to trade off openness for security  (Arguably) many of the most significant problems are no longer technical –User education –Policy issues

3 Assigned readings -- discussion  “Inside the Twisted Mind of the Security Professional” –Security mindset…  “We are All Security Customers” –Cost-benefit analysis  “Information Security and Externalities” –Security as an economics problem; liability

4 CIA Triad [FIPS PUB 199]  Confidentiality/secrecy –Restrictions on information access and disclosure, including personal privacy  Integrity –Guarding against improper modification or destruction of information; ensuring non-repudiation and (source) authenticity  Availability –Ensuring timely and reliable access to information and resources

5 Other?  Improper resource usage  Entity authentication

6 A high-level survey of cryptography

7 Caveats  Everything I present will be (relatively) informal –I may simplify, but I will not say anything that is an outright lie…  Cryptography offers formal definitions and rigorous proofs of security (neither of which we will cover here) –For more details, take CMSC 456 in the Fall (or read my book)!  If you think you already know cryptography from somewhere else (CMSC 456 in the spring, CISSP, your job), you are probably mistaken

8 Goals of cryptography  Crypto deals primarily with three goals: –Confidentiality –Integrity (of data) –Authentication (of resources, people, systems)  Other goals also considered –E.g., non-repudiation –E-cash (e.g., double spending) –Secure distributed computation –Anonymity –…–…

9 Private- vs. public-key settings  There are two settings for cryptography: –Private-key / shared-key / symmetric-key / secret-key –Public-key  The private-key setting is the “classical” one (thousands of years old)  The public-key setting dates to the 1970s

10 Private-key cryptography  The communicating parties share some information that is random and secret –This shared information is called a key –Key is completely unknown to an attacker –Key is uniformly random  The key k must be shared in advance –We don’t discuss (for now) how they do this –You can imagine they meet on a dark street corner and Alice hands a USB device (with a key on it) to Bob

11 Canonical applications  Two (or more) distinct parties communicating over an insecure network –E.g., secure communication  A single party who is communicating “with itself” over time –E.g., secure storage

12 Alice Bob shared info K K Alice K Bob K

13 K K

14 Private-key cryptography  Two complementary goals: –Secrecy and integrity  For secrecy: –Private-key encryption  For integrity: –Message authentication codes

15 Attacker types  Passive eavesdropping vs. active interference  Secrecy is a concern for passive or active adversaries  Integrity is a concern for active adversaries

16 Private-key encryption

17 Functional definition  Encryption algorithm: –Takes a key and a message (plaintext), and outputs a ciphertext –c  E k (m), possibly randomized!  Decryption algorithm: –Takes a key and a ciphertext, and outputs a message (or perhaps an error) –m = D k (c)  Correctness: for all k, we have D k (E k (m)) = m  We have not yet said anything about security…

18 Alice Bob shared info K K Alice K Bob K c c  E K (m) m=D K (c)

19 Secrecy  Want secrecy against a passive eavesdropper who observed the ciphertext  This adversary does not know the key

20 Security through obscurity?  Always assume that the full details of crypto protocols and algorithms are public –Known as Kerckhoffs’s principle –The only secret information is the key  “Security through obscurity” is a bad idea… –True in general; even more true in the case of cryptography –Home-brewed solutions are BAD! –Standardized, widely-accepted solutions are GOOD!

21 Security through obscurity?  Why not?  Easier to maintain secrecy of a key than an algorithm –Reverse engineering –Social engineering –Insider attacks  Easier to change the key than the algorithm  In general setting, much easier to share an algorithm than for everyone to use their own

22 A classic example: shift cipher  Assume the English uppercase alphabet (no lowercase, punctuation, etc.) –View letters as numbers in {0, …, 25}  The key is a random letter of the alphabet  Encryption done by addition modulo 26  Is this secure? –Exhaustive key search –Automated determination of the key

23 Another example: substitution cipher  The key is a random permutation of the alphabet –Note: key space is huge!  Encryption done in the natural way  Is this secure? –Frequency analysis  A large key space is necessary, but not sufficient, for security

24 Another example: Vigenere cipher  More complicated version of shift cipher  Believed to be secure for over 100 years  Is it secure?

25 Attacking the Vigenere cipher  Let p i (for i=0, …, 25) denote the frequency of letter i in English-language text –Known that Σ p i 2 ≈ 0.065  For each candidate period t, compute frequencies {q i } of letters in the sequence c 0, c t, c 2t, …  For the correct value of t, we expect Σ q i 2 ≈ 0.065 –For incorrect values of t, we expect Σ q i 2 ≈ 1/26  Once we have the period, can use frequency analysis as in the case of the shift cipher


Download ppt "CMSC 414 Computer and Network Security Lecture 2 Jonathan Katz."

Similar presentations


Ads by Google