

Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
Practice Exam 1 Answer Section about Crypto Basics.
Typology: Exams
1 / 2
This page cannot be seen from the preview
Don't miss anything!
Answer 1-Crypto: a) The three basic requirements that we discussed in class are:
. b) Secure key management cannot be done at Internet scale. In particular, e-commerce web- sites need to communicate securely with potential customers whom they have never “met” and with whom they have not been able to establish shared keys.
Answer 2-Crypto: a) Public-key certificates are signed (name, public key) pairs. The problem addressed is that an impostor or man-in-the-middle, say Manny, could generate a key pair (P KM , SKM ) and then impersonate Alice by publishing the directory entry (Alice, P KM ). Subsequently, if someone sends a ciphertext to Alice that was encrypted using the encryption key P KM , Manny could intercept it and decrypt it, because it is he, not Alice, who knows the corre- sponding decryption key SKM. To prevent this, we require that public-key directory entries be signed by certifying authorities or CAs. Instead of simply generating her key pair and publishing her public key, Alice takes her public key P KA to a CA, along with proof that she is indeed Alice. The CA verifies that her identification documents are valid and then signs the (name, key) pair (Alice, P KA). The entry that is published in the directory is
Alice, P KA, σAlice,CA,
where σAlice,CA is the CA’s signature on (Alice, P KA). Someone who wants to use P KA must have a trustworthy copy of the CA’s verification key, but we have reduced the problem of needing trustworthy copies of P KA, for every user A of the public-key system, to the much smaller-scale problem of needing a trustworthy verification key (or keys) for one (or a small number of) CA(s).
b) If Bob wants to send a long traffic stream to Alice, he can obtain her public key P KA (and a certificate that allows him to verify that it is hers), generate a shared key KAB for a (fast) symmetric-key cryptosystem, and send her E(KAB , P KA), where E is the agreed- upon, (slow) public-key encryption function. Alice can decrypt this message (using SKA, which only she knows) to recover KAB. Bob can then encrypt his long traffic stream using the symmetric-key cryptosystem and the key KAB that only he and Alice know. This basic technique is an essential component of the SSL/TLC protocol for encrypting web traffic.
Answer 3-Crypto: a) If Alice (A) is a user, then her signing key skA consists of (d, n), where n = pq is the product of two equal-length, large primes p and q, and d is an integer that is relatively prime to φ(n) = (p − 1)(q − 1). Her verification key pkA consists of (e, n), where ed ≡ 1 mod φ(n). In order to sign a message M , where M ∈ [0, n − 1], Alice computes σA = M d^ mod n. In order to verify this signature, anyone can look up Alice’s (public) verification key and check that M = σAe mod n. b) At the very least, multiplication of equal-length primes must be one-way; that is, while it is easy to compute n = pq, it is hard to compute p and q given n, even if one is told that n is the product of two equal-length primes. Note that we actually need it to be easy to find large p and q of the same length and verify that they are prime, not just that it is easy to multiply them once we have them. More generally, we need it to be hard to find e if one is given (d, n) but is not given the factors p and q. c) No
Answer 4-Crypto: a) See Section 2.4 of Schneier’s book (http://proquest.safaribooksonline.com/book/ -/9780471117094). b) Because public-key signature and verification functions are often slow, one typically com- putes a one-way hash, say t, of a long document M and then signs t, which is much shorter than M. To verify a signature, one must first check that t is indeed the output that the one-way hash function produces on input M and then verify the signature on t.