Question: Pseudorandom Function A pseudorandom function (PRF) is a seeded function, when the seed is uniformly chosen and kept secret, evaluating such a function on any

Pseudorandom Function A pseudorandom function (PRF) is a seeded function, when the seed is uniformly chosen and kept secret, evaluating such a function on any point yields a random-looking output. This means the adversary can not distinguish whether she is interacting with a random function chosen from the whole function space, or she is interacting with a function chosen according to a key (this is from a space with size equal to the key space which could be exponentially smaller). We will see in the homework that PRF can be seen as the central hub in the symmetric key cryptography, it can be used to construct all other symmetric key primitives.

Formally, consider the following experiments described in Fig. 1. Suppose ExpbA is the random variable denoting the output of A in experiment b,

Definition 1 (PRF) A function F : K {0, 1}103 {0, 1}206 is a pseudorandom function, if for any P.P.T adversary A,

| Pr[Exp0A = 1] Pr[Exp1A = 1]| negl(), where is the security parameter, K is the key space with |K| = 280, F is the set of all functions mapping

from {0, 1}103 to {0, 1}206.

Experiment 0:

K $ K

RF O0 :=F(K,)

O1 := R()

b AO0()

Return b

Experiment 1:

K $ K

RF

O0 :=F(K,)

O1 := R()

b AO1()

Return b

Figure 1: The PRF experiments

The oracle notation means the adversary can freely ask queries to it and obtains the correct answer, alternatively, we can see the experiment defined using a game described in Fig.??.

Q4: Get a feeling that such a small subspace can be used to trick the adversary to think that she is interacting with function chosen from the whole function space.

Count how many functions are there in a PRF family, and how many functions are there in F, assuming K = {0, 1}80.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!