18.11.2014 Views

Anais - Engenharia de Redes de Comunicação - UnB

Anais - Engenharia de Redes de Comunicação - UnB

Anais - Engenharia de Redes de Comunicação - UnB

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

4.1. Simulator for the case Alice (sen<strong>de</strong>r) is corrupted<br />

In or<strong>de</strong>r to prove the security of the proposed protocol we adapt the simulators given in<br />

[Lin<strong>de</strong>ll 2008] for the case where the sen<strong>de</strong>r is corrupted and the case the receiver is corrupted.<br />

Notice that the resulting simulators have the same running time of the simulators<br />

in [Lin<strong>de</strong>ll 2008], since the steps involved are essentially the same. Let A 1 be a nonuniform<br />

probabilistic polynomial-time real adversary that controls Alice. We construct a<br />

non-uniform probabilistic expected polynomial-time i<strong>de</strong>al-mo<strong>de</strong>l adversary/simulator S 1 .<br />

S 1 uses rewinding in or<strong>de</strong>r to ensure that all of the ”checked” public key pairs are valid<br />

(i.e.,exactly one of them is lossy), whereas both keys contained in the ”unchecked” public<br />

key pairs are injective. This enables it to obtain both messages input by A 1 into the<br />

protocol. S 1 then sends these inputs to the trusted party, and the honest party Bob in the<br />

i<strong>de</strong>al mo<strong>de</strong>l will receive the same message that it would have received in a real execution<br />

with A 1 (or more accurately, a message that is computationally indistinguishable from<br />

that message).<br />

We now <strong>de</strong>scribe S 1 formally. Upon input 1 n and (b 0 , b 1 ), the machine S 1 invokes<br />

A 1 upon the same input and works as follows:<br />

1. S 1 chooses a random r ∈ R 0, 1 l and generates public key pairs (γ1, 0 γ1), 1 . . . , (γl 0, γ1 l )<br />

with the following property:<br />

(a) For every i for which r i = 1, S 1 constructs (γi 0 and γi 1 ) like an honest Bob.<br />

It runs G(1 n , inj), obtaining l injective key pairs (pk inj<br />

i , sk inj<br />

i ). It also runs<br />

G(1 n , lossy), obtaining l lossy key pairs (pk lossy<br />

i , sk lossy<br />

i ). S 1 generates a<br />

pair of public key (γ σ i<br />

i , γ 1−σ i<br />

i ) such that γ σ i<br />

i = pk inj<br />

i and γ 1−σ i<br />

i = pk lossy<br />

i ,<br />

for random bits σ i ∈ R {0, 1}.<br />

(b) For every j for which r j = 0, S 1 constructs (γj 0 , γj 1 ) such that both γj 0 and<br />

γj 1 are injective keys.<br />

S 1 hands the public key pairs to A 1 .<br />

2. Simulation of the coin tossing: S 1 simulates the coin tossing so that the result is<br />

r, as follows:<br />

(a) S 1 receives a commitment c h from A 1 .<br />

(b) S 1 chooses a random s ′ ∈ R {0, 1} l and hands c b = Com h (s ′ ) to A 1 .<br />

(c) If A 1 does not send a valid <strong>de</strong>commitment to c h , then S 1 simulates Bob<br />

aborting and sends ⊥ to the trusted party. Then S 1 outputs whatever A 1<br />

outputs and halts. Otherwise, let s be the <strong>de</strong>committed value. S 1 proceeds<br />

as follows:<br />

i. S 1 sets s ′ = r ⊕ s, rewinds A 1 , and hands it Com b (s ′ ).<br />

ii. If A 1 <strong>de</strong>commits to s, then S 1 proceeds to the next step. If A 1<br />

<strong>de</strong>commits to a value ˜s ≠ s, then S 1 outputs fail. Otherwise, if it<br />

does not <strong>de</strong>commit to any value, S 1 returns to the previous step and<br />

tries again until A 1 does <strong>de</strong>commit to s. (We stress that in every<br />

attempt, S 1 hands A 1 a commitment to the same value s ′ . However,<br />

the randomness used to generate the commitment Com b (s ′ ) is<br />

in<strong>de</strong>pen<strong>de</strong>nt each time.) 1<br />

1 Similarly to the DDH based protocol of [Lin<strong>de</strong>ll 2008], this strategy by S 1 does not actually guarantees<br />

that it runs in expected polynomial-time. Fortunately this issue is solved in [Lin<strong>de</strong>ll 2008] and we refer the<br />

rea<strong>de</strong>r to that work for <strong>de</strong>tailed information.<br />

116

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!