Midterm Review
Midterm Format:
Most of the questions on the exam will be short answer. These questions can be answered in 2-8 concise sentences. If you find yourself writing an essay, that means you are including way too much detail, or you are missing the simple explanation that I am looking for.
There may be questions that ask you to examine snippets of code, or consider the security connotations of hypothetical scenarios.
Cheat Sheet: You may bring a single 8.5x11 sheet of paper covered front and back in notes.
Topics
- Kerchoff’s principle
- Security experiments
- Given an example scenario, be prepared to develop a threat model and a security game to capture the threat
- Review our example cast of attackers, they may come in handy if you are asked to develop a threat model on the exam.
- Confidentiality, Authentication, Integray, Non-repudability
- Perfect and Shannon security
- One time pad
- Computational Indistinguishability
- Pseudo-random generators
- Symmetric key encryption
- Pseudo-random functions
- Message authentication codes
- Hash functions, definitions, security experiment, examples
- Public key encryption, IND-CPA security game, RSA cryptosystem example
- Digital Signature security game, why textbook RSA signing is insecure
- Password storage systems, salting and hashing, slow hash functions
- Pros and cons of biometrics
- two-factor authentication, U2F
- biometrics, their strengths, and their shortcomings
Can you answer these questions?
-
What does perfect security for an encryption scheme mean?
-
Name an encryption scheme that achieves perfect security and why.
-
Explain the security game embodied in the perfect security experiment. How does this experiment change when the adverasry is computationally bounded.
-
What does computational indistinguishability mean?
-
Why is salting the hashed password important?
-
Why it is important to hash passwords,
-
How can you construct a Pseudo-random generator from the Discrete Logarithm problem?
-
What is a Pseudo-random function?
-
Explain computational indistinguishability?
-
Describe the security game of a message authentication code. What problem does a MAC solve?
-
What is the job of a cryptographic hash function? (good to explain using a security experiment)
-
What are the three main parts of a public key encryption scheme?
-
Explain the security game of a public key encryption scheme.
-
What is Euler’s theorem?
-
Explain how to use the textbook RSA encryption scheme using N=143, and the sk,pk pair (e,d) to encrypt the message 14.
-
Why is textbook RSA encryption insecure?
-
Why is textbook RSA signature scheme insecure?
-
Explain how U2F works.
-
What the basic password security experiment?
-
What should you assume about an adversary in the password security game?
-
Explain why it is important to use a salted hash to store user passwords.
-
Explain the purpose of a honeywords server.
-
Explain why one should use a slower hash funtion like bcrypt instead of SHA-256 to store passwords.
-
What is the difference between AES and SHA256?
-
Give an example of a digital signature scheme and provide an explanation of when it is useful.