Assignment 6
(at the start of class)
Introduction
Please answer the questions precisely and concisely.
Reading
Crypto FAQ ,
RSA Labs
http://www.rsasecurity.com/rsalabs/faq/. Chapters 1-5.1.
Why Cryptography is Harder Than It Looks,
Bruce Schneier
http://www.counterpane.com/whycrypto.html
Snake Oil Warning Signs: Encryption Software to Avoid
http://www.interhack.net/people/cmcurtin/snake-oil-faq.html
One-Time Pads,
Crypto-Gram Newsletter: October 15, 2002.
http://www.counterpane.com/crypto-gram-0210.html#7
An Illustrated Guide to Crytpographic Hashes, Steve Friedl's Unixwiz.net Tech Tips. http://cyphunk.files.wordpress.com/2006/02/An%20Illustrated%20Guide%20to%20Cryptographic%20Hashes.pdf
Questions
For the first question, express your time in easy-to-grasp units. Use minutes if the answer is under an hour, hours if the answer is under a day, and years if the answer is over 365 days. For example, 172,800 seconds is harder to grasp than 2 days. Use 10x exponential notation if the answer is greater than 1,000,000 years. No more than three digits of precision are needed. Write 2.3*107 instead of 2.3129912*107.
-
In 1998, The Electronic Frontier Foundation built a DES Cracker – a machine with thousands of custom gate arrays, each of which contains 24 search engines. Each search engine can examine 2.5 million keys per second. The machine was able to find a DES key for a document in under three days. In 1999, distributed.net was able to harness almost 100,000 PCs on the internet along with the DES Cracker and crack a key in 22 hours 15 minutes, testing about 245 billion keys per second.
Suppose that you can, on average, crack a 56-bit key in half a day (12 hours) using a brute-force key search.
- How long will it take you to crack a 57-bit key?
- How long will it take you to crack a 128-bit key?
- Suppose that, in the future, you can crack a 56-bit key in just one second, how long will it take you to crack a 128-bit key?
Please put your answers in the following format (specify your units: seconds, days, or years for the last column):
part permutations time a b c - What size public key would you need to achieve comparable security to a 64-bit symmetric key? (See the Snake Oil article.)
- Why is a one-time pad an impractical cryptosystem even though it is the only one that is provably secure? (See the Crypto-Gram Newsletter and the Snake Oil article.)
- Explain the difference between public-key and symmetric cryptography. (See chapter 2.1 of the RSA Labs Crypto FAQ.)
- State three uses of hash functions (see the Illustrated Guide to Cryptographic Hashes).
- What is the difference between weakly collision-free and strongly collision-free hashes? (See chapter 2.1 of the RSA Labs Crypto FAQ.)
-
What does it mean to add salt to a password? How does it make
hashed passwords more secure?
(see wikipedia and msdn)