• 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

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,

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

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

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

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