• Non ci sono risultati.

Geometry in Cryptography

N/A
N/A
Protected

Academic year: 2021

Condividi "Geometry in Cryptography"

Copied!
25
0
0

Testo completo

(1)

Geometry in Cryptography

Luca Giuzzi

Summer School

Giuseppe Tallini

(2)

Cryptosystems • M set of messages • K set of keys • C set of cyphertexts • e : M × K 7→ C encryption • d : C × K 7→ M decryption ∀k ∈ K : ∃k0 ∈ K such that ∀m ∈ M :d(e(m, k), k0) = m.

(3)

Discrete Logarithm Problem • G = hgi group • m ∈ G Determine α N such that m = gα

(4)

ElGamal cryptosystem/1 Common elements: • G: cyclic group; • g ∈ G, generator of G. Secret key: • α ∈ N. Public key: • gα ∈ G.

(5)

ElGamal cryptosystem/2

Encoding:

• M ∈ G message to be transmitted;

the sender computes a random k N;

• the sender transmits the pair

(e, f ) = (gk, M (gα)k) = (gk, M gkα). Decoding:

• the receiver computes

d = eα = gkα;

(6)

ElGamal cryptosystem/3

Requirements on G:

• There is an efficient implementation of the group operation:

(x, α) 7→ xα; (M, x) 7→ Mx;

There is an efficient implementation of in-version:

d 7→ d−1;

• The Discrete Logarithm Problem is hard to solve in G.

(7)

Massey–Omura cryptosystem/1

Common elements:

• G: Abelian group.

Secret key:

• eA ∈ N with gcd(e, |G|) = 1;

• dA ∈ N such that eAdA ≡ 1 (mod |G|).

(8)

Massey–Omura cryptosystem/2

Operation:

• P ∈ G: message to be sent from to  .

1. A computes and sends

P0 = PeA;

2. B computes and sends back

P00 = P0eB = PeAeB;

3. A computes and sends back

P000 = P00dA = PeAdAeB = PeB

4. B recovers

(9)

Massey–Omura cryptosystem/3

Requirements on G:

• The order of G is known;

• There is an efficient implementation of the exponentiation in G:

(x, α) 7→ xα;

• The Discrete Logarithm Problem is hard to solve in G.

(10)

Exponentiation in groups Given: • G group • g ∈ G • α ∈ N Determine: gα. Trivial approach: gα = g · · · g | {z } α times .

(11)

Square and multiply

1. If α = 0, then return 1;

2. If α = 1, then return g;

3. If α = 2k, then compute h = g2 and return hk;

4. If α = 2k + 1, then compute h = g2 and return

(12)

Elliptic curves/1

Elliptic curve over K:

(birationally equivalnent to) non–singular cubic

with at least one point

y2 + ay = x3 + bx2 + cxy + dx + e.

• If charK 6= 2, 3,

y2 = x3 + ax + b or (equivalent)

(13)

Elliptic curves/2

Elliptic curve over GF(2n):

• non–supersingular

y2 + xy = x2 + ax2 + b;

• supersingular (2 = p | |C|)

(14)

Elliptic curves/3:group law

PSfrag replacements A B −(A + B)

A + B

(15)

Elliptic curves/4:group law

• C elliptic curve;

• O ∈ C fixed point (inflexion);

• Θ(A, B) third intersection of AB with C.

(16)

Elliptic curves/5:group law, associativity PSfrag replacements A B C O R= Θ(C, B) P= Θ(A, B) Q= Θ(O, (A + B) + C) A + B B + C (A + B) + C Claim: (B + C) ∈ AQ.

(17)

Elliptic curves/6:group law, inversion • O inflexion • P = (x, y) ∈ C • p 6= 2, 3 P 7→ −P = (−x, −y); • p = 2, non–supersingular P 7→ −P = (x, y + x); • p = 2, supersingular P 7→ −P = (x, y + c)

(18)

Elliptic curves/7:group law, duplication, p 6= 2, 3 • y2 = x3 + ax + b; • P = (x1, y1); • 2P = (x3, y3); • λ = 3x 2 1 + a 2y1 • x3 = λ2 − x1 − x2; • y3 = λ(x1 − x3) − y1.

(19)

Elliptic curves/8:group law, sum, p 6= 2, 3 • y2 = x3 + ax + b; • P = (x1, y1); • Q = (x2, y2); • P + Q = (x3, y3); • λ = y2 − y1 x2 − x1 • x3 = λ2 − x1 − x2;

(20)

Elliptic curves/9:group law, duplication, non–supersing. • y2 + xy = x3 + ax2 + b, b 6= 0; • P = (x1, y1); • 2P = (x3, y3); • µ = x1 + y1 x1 • x3 = µ2 + µ + a • y3 = x21 + (µ + 1)x3

(21)

Elliptic curves/10:group law, sum, non–supersing. • y2 + xy = x2 + ax2 + b, b 6= 0; • P = (x1, y1); • Q = (x2, y2); • P + Q = (x3, y3); • κ = y1 + y2 x1 + x2; • x3 = κ2 + κ + x1 + x2 + a;

(22)

Elliptic curves/11:group law, duplication, super-sing. • y2 + cx = x3 + ax + b, c 6= 0; • P = (x1, y1); • 2P = (x3, y3); • η = x 2 1 + a c • x3 = η2 • y3 = η(x1 + x3) + y1 + c

(23)

Elliptic curves/12:group law, sum, supersing. • y2 + cx = x3 + ax + b, c 6= 0; • P = (x1, y1); • Q = (x2, y2); • P + Q = (x3, y3); • κ = y1 + y2 x1 + x2; • x3 = κ2 + κ + x1 + x2;

(24)

Elliptic curves/13:group order • |C| = q + 1 − t with |t| ≤ 2√q. • K = GF(p), p 6= 2, 3: p + X xK x3 + ax + b p ! , where p· is the Legendre symbol;

• C non–supersingular, K = GF(2m): 2m+1+(−1)Tr(a) X 06=x∈K (−1)Tr(x+bx−2); • C supersingular, K = GF(2m): 2m+1+(−1)Tr(c−2b) X xK (−1)Tr[c−2(x3+ax)].

(25)

Elliptic curves/14:group structure Either: • C = Zn or • C = Zn 1 ⊕ Zn2 with n2 | n1 and n2 | (q − 1).

Riferimenti

Documenti correlati

The Belle II Vertex detector is the main element for D-mixing sensitivity measurement since it provides an improvement by a factor two on the D 0 decay time resolution with respect

The Pierre Auger Observatory [1] was designed to measure properties of the extensive air showers produced by cosmic rays with ultra-high energies above 10 18 eVc.

Beam park has been used as a storage and freight infrastructure area until the 1990s by the Ford Stamping Plant. Following its dismantling by the declining plant, the site was

Una dotazione documentaria che risponde peraltro alla vocazione fondamen- tale della Biblioteca nazionale centrale di Roma, che da qualche anno ha avviato un’ampia politica

Lettera del Cardinale Veterani ai Rettori della Università di Urbino circa la con- troversia con i Padri Conventuali sulla libertà, da parte della Congregazione dello Studio,

Dall’ inizio degli anni Ottanta si istaura un altro tema centrale nella discussione sulla valorizzazione e gestione del patrimonio, “il finan- ziamento” e questo segna l’avvio

Il ruolo della donne nella Resistenza è stato spesso sminuito o inteso come una forma di accudimento nei confronti di fratelli, figli o fidanzati partigiani: “La

The EU-funded coordinated project “Towards COast to COast NETworks of Marine Protected Areas (from the shore to the high and deep sea), coupled with sea-based wind en- ergy