YALE UNIVERSITY
DEPARTMENT OF COMPUTER SCIENCE
CPSC 467b: Cryptography and Computer Security | Handout #11 | |
Professor M. J. Fischer | April 8, 2012 | |
Problem Set 6
Due on Monday, April 16, 2012.
Instructions Work the problems below, prepare your answers in electronic form, and submit your solutions using the submit script on the Zoo. Remember to specify “6” for the problem number argument to submit.
Some of the problems use terminology that we have not covered in class, even though we have talked about the concepts. You may use external resources to find out what these terms mean. As always, you must properly cite all resources that you use to solve the problems.
Problem 1: Shamir Secret Splitting (40 points)
Alice is leaving for a year of study abroad. She has surprising news that she wants to share with 12 friends, but she doesn’t want to tell them before she leaves home since she would feel embarrassed to be present when they learn her secret. Although she trusts her friends, they are naturally curious. Moreover, she’s concerned that the parents of two of her friends might discover their shares, and she really doesn’t want the parents to find out what her surprise is.
She decides to split her secret into 12 shares and give one to each friend so that any three or more friends can cooperate to discover the secret, but two are not enough. She uses the (τ,k) threshold scheme that she learned in crypto, distributes the shares, and flies off. Unfortunately, unknown to everyone, one of the shares gets corrupted in transit.
By the time she leaves, three of her friends have gone home to Santa Monica, four have gone on a trip to Las Vegas, and the remaining five are still in New Haven.
Each of the three groups of friends then gets together in person and uses the algorithm presented in class to recover the secret.
Problem 2: Homomorphic Encryption (30 points)
Consider the Caesar cipher extended to strings. Using the definition of homomorphic encryption given
in lecture 21, show whether or not the encryption function Ek is homomorphic with respect to operations
⊙ and ⊙
, where ⊙
= ⊙
is:
In each case, carefully define the mesage and ciphertext spaces that make sense for the operation, and give a
careful definition of the operation. Then argue why Ek is or is not homomorphic with respect to ⊙ and
⊙
.
Problem 3: Security Notions (30 points)
Read the Wikipedia page Ciphertext indistinguishability; then answer the following questions: