Course:Fall 2009 Exercises 1
From CRYPTUTOR
[edit]
Exercises on Symmetric-Key Encryption
- [10 pts] Optimality of one-time pad. For a one-time encryption scheme
to be perfectly secret and correct, show that we require
.
- [20 pts] One-way, but every single bit of the preimage is predictable: For any function
, define a function
as follows
, where S is a subset of
(represented as a bit vector of length | x | ). Here
denotes a string obtained by choosing only those bits from x as specified by S and
contains the remaining bits.
- Show that if f is a one-way function, then so is
. You may assume that f is length-preserving (i.e., | f(x) | = | x | for all x).
- Show that no single bit of the input is a hard-core bit for
.
- Show that if f is a one-way function, then so is
- [15 pts] True or False (give reasons):
- If
is a PRG, then so is
defined as
where
,
, and
denotes concatenation.
- If
is a PRF, then so is
-
defined as
where
,
,
.
-
defined as
where
,
,
.
-
- If
- [10 pts] The NCSA is building a PetaFLOPS computer that can execute 1015 floating point operations per second. Suppose that a single evaluation of a block-cipher (DES or AES) takes 10 FLOPs. How long would it take for the NCSA computer to recover a DES key, using a brute-force search? (Clearly state your attack algorithm.) How about a 128-bit AES key?
- [25 pts] Recall that the triple-DES (3DES) is a block-cipher that uses the DES block-cipher three times, with three different keys. The output ("ciphertext") of 3DES with key (K1,K2,K3), on input ("plaintext") P is defined as
where DESK and
stand for the application of the DES block-cipher in the forward ("encryption") and reverse ("decryption") directions. Suppose you are given oracle access to 3DES with a fixed key (K1,K2,K3). Describe an algorithm for recovering the keys. Your algorithm can use the DES block-cipher as a black-box (in either forward or reverse directions: i.e., feed it a (key,plaintext) pair and obtain a ciphertext, or feed it a (key,ciphertext) pair and obtain a plaintext). How many such calls to DES would you need to make? How much memory does your algorithm use?
- [20 pts] Consider a "two-message encryption scheme"
.
- Define perfect secrecy for such an encryption.
- Let
be the set of n-bit strings. Let
, where
is bit-wise xor-ing. Prove that this is not perfectly secret, according to your definition.
- How would you define SIM-twice security? Modify this definition to argue that the only information leaked by the above encryption scheme is
.
- [Extra Credit] Below are the byte sequences obtained by encrypting two English text messages with the same one-time pad. Try and recover both messages:
Message 0
b7 5d 56 7c b4 7d 40 28 26 fb 8a 94 cb 19 b2 7a 75 f3 dd d4 ee 6c 40 9a c6 d7 dc 9b 6f dc 49 db 6e 93 da 3c 16 7f 6f b8 43 3d ab c7 18 aa 3e df 6c 63 49 d7 98 f0 c3 7f 48 29 f7 14 64 e8 94 16 84 2f 10 b4 76 46 54 80 1e
Message 1
b0 5c 5d 6d b4 7d 56 32 26 b5 c4 92 98 4a a7 6c 65 fa c0 c4 ee 7d 44 88 d7 c6 d7 9b 70 d1 5c 8f 3c 88 dd 29 58 2f 7a a3 55 6a b7 d0 1f f8 2f c4 3f 37 55 da d9 c7 8c 74 4d 38 ec 19 73 f3 99 00 ca 77 65 d1 05 35 31 f3 30

