TD numéro 4

Transcription

TD numéro 4
Protocoles cryptographiques
Feuille d’exercices numéro 3
Vote et équivalence statique
Exercice 1 (El Gamal encryption)
Let p be a prime number. Let Z∗p be the multiplicative group (of order p − 1). Let g be a
generator of the group.
Key generation
– Choose x at random in 1, . . . , p − 1. x is the secret key.
– Publish h = g x mod p. h is the public key.
Public key encryption of m ∈ Z∗p
– Choose y at random in 1, . . . , p − 1.
– The ciphertext is (g y , hy ∗ m)
1. Write the decryption algorithm.
2. To encrypt a vote v, we actually encrypt g v instead of v.
(a) Show that
n
Y
{vi }pk = {
i=1
n
X
vi }pk
i=1
as seen during the lecture.
(b) How do we decrypt ?
x, y, z, . . . sont des variables
a, b, c, . . . sont des constantes (symbole de fonction d’arité 0)
h est un symbole de fonction d’arité 1 (représentant le hachage par exemple).
pair et enc sont des symboles de fonction d’arité 2.
On pourra noter {m}k au lieu de enc(m, k) et hm1 , m2 i au lieu de pair(m1 , m2 ).
On définit la théorie équationnelle Edec représentant
(vue en cours).

 dec({x}y , y)
π1 (hx, yi)
Edec =

π2 (hx, yi)
le chiffrement symmétrique et la paire

= x 
= x

= y
Exercice 2
On considère θ = {ha,bi /x }, {enc(hc,di,a) /y }, {enc(b,k) /z }. Donner une recette pour chacun des
sous-termes déductibles de θ pour Edec .
2
Vote et équivalence statique
Exercice 3
Soient θ1 = {ha,bi /x }, θ2 = {a /x }, θ3 = {enc(a,k) /x },
θ4 = {enc(ha,bi,k) /x }, {k /y },
θ5 = {enc(ha,ai,k) /x }, {k /y },
θ6 = {enc(hb,ai,k) /x }, {k /y }.
1. Montrer que θ1 6∼Edec θ2 .
2. Montrer que θ4 6∼Edec θ5 .
3. Montrer que θ4 ∼Edec θ6 .
Exercice 4
Soient θ et m tels que θ ` m.
Montrer que
θ ∪ {n/z} 6∼Edec θ ∪ {h(m)/z}
where n is a fresh name.
Exercice 5
On considère la théorie équationelle E⊕ du XOR combinée au chiffrement
x⊕y = y⊕x
x⊕0 = x
dec({x}y , y) = x
x ⊕ (y ⊕ z) = (x ⊕ y) ⊕ z
x⊕x = 0
{x ⊕ y}z = {x}z ⊕ {y}z
On considère
θ = {{a⊕b}k /x1 }{{b}{b}k /x2 }{{a}k /x3 }{{k}b /x4 }
Donner une recette pour chacun des sous-termes déductibles de θ pour E⊕ .