FAST (Harder Better) FAster STronger Cryptography 2018/09/18 - - PowerPoint PPT Presentation

fast harder better faster stronger cryptography
SMART_READER_LITE
LIVE PREVIEW

FAST (Harder Better) FAster STronger Cryptography 2018/09/18 - - PowerPoint PPT Presentation

FAST (Harder Better) FAster STronger Cryptography 2018/09/18 LIRIMA Meeting, Paris, France Damien Robert quipe LFANT, Inria Bordeaux Sud-Ouest Goal Cryptology: Encryption; Authenticity; Integrity. asymmetric encryption, signatures,


slide-1
SLIDE 1

FAST — (Harder Better) FAster STronger Cryptography

2018/09/18 — LIRIMA Meeting, Paris, France Damien Robert

Équipe LFANT, Inria Bordeaux Sud-Ouest

slide-2
SLIDE 2

Goal

Cryptology: Encryption; Authenticity; Integrity. Public key cryptology is based on a one way (trapdoor) function ⇒ asymmetric encryption, signatures, zero-knowledge proofs… Goal: Improve and extend elliptic curve cryptography to Secure the Internet of Things; Prepare the next generation of cryptosystems able to resist to quantum computers.

slide-3
SLIDE 3

Organisation

Joint team between LFANT (Lithe and fast algorithmic number theory) https://lfant.math.u-bordeaux.fr/ and PREMA (the Pole of Research in Mathematics and Applications in Africa) http://prmasi.org/; Project coordinators: Tony Ezome, Senior Lecturer/Researcher (Cames), University of Sciences and Technology of Masuku (USTM), and Damien Robert (CR Inria). PREMA is a Simon’s fundation project involving researchers in Cameroun, Gabon, Madagascar, Sénégal along with members in Cote d’Ivoire, Maroc, South Africa and international collaborators in Canada, France, the Netherlands, Singapore.

slide-4
SLIDE 4

Results

Efficiency

Improving randomness extractions ([KSC+17; CS17]), pseudo-random generators and pseudo-random functions [MV17b]. Improving arithmetic and pairing on elliptic curves [GF18; FD17].

Post quantum cryptography

Pairing based signatures [MV17a] Isogenies: modular polynomials for cyclic isogenies between abelian surfaces [MR17], cyclic isogenies given their kernels [DJR+17].

Work in progress:

Constructing normal basis [ES]. Attribute based credentials for IoT [CS] Computing canonical lift of genus 2 curves; Computing the kernel between two isogenous genus 2 curves.

Diffusion

Book chapter “Pairings” of the book “Guide to Pairing-Based Cryptography” [EJ17].

  • T. M. Nountu. “Pseudo-Random Generators and Pseudo-Random Functions:

Cryptanalysis and Complexity Measures”. PhD thesis. Paris Sciences et Lettres, 2017

slide-5
SLIDE 5

Scientific activities for the years 2017–2018

Participation to the organization of Eurocrypt 2017 (from 30 April to 4th May 2017 in Paris); EMA “Mathématiques pour la Cryptographie Post-quantique et Mathématiques pour le Traitement du Signal” at the École Polytechnique de Thiès (Sénégal) from May 10 to May 23 2017. Kickstart workshop in Bordeaux (from September 04 to September 08 2017). Slides or proceedings available at https://lfant.math. u-bordeaux.fr/index.php?category=seminar&page=2017. Ecole Mathématique Africaine (from April 02 to 04 2018 at Franceville), http://prmasi.org/ african-mathematical-school-ams-from-april-02-to-april-14-2018-gabon/.

Jacobian varieties, discrete logarithm, Diffje-Hellman key exchange, Elgamal cryptosystem and an introduction to semi-algebraic geometry p-adic fjelds and number fjelds Initiation to Pari-GP .

slide-6
SLIDE 6

An introduction to public key cryptography: key exchange

How to exchange a secret key across a public channel? Diffje-Helmann (1976): let g ∊ G be an element of a group Alice uses a random a and sends g a; Bob uses a random b and sends g b; Common secret key: g a b = g a b = g b a Attack: Diffje-Helmann problem: recover g a b from (g ,g a,g b ). Easy when the Discrete Logarithm Problem (DLP) is easy; In a generic group can be reduced to the DLP .

slide-7
SLIDE 7

An introduction to public key cryptography: key exchange

How to exchange a secret key across a public channel? Diffje-Helmann (1976): let g ∊ G be an element of a group Alice uses a random a and sends g a; Bob uses a random b and sends g b; Common secret key: g a b = g a b = g b a Attack: Diffje-Helmann problem: recover g a b from (g ,g a,g b ). Easy when the Discrete Logarithm Problem (DLP) is easy; In a generic group can be reduced to the DLP .

slide-8
SLIDE 8

An introduction to public key cryptography: key exchange

How to exchange a secret key across a public channel? Diffje-Helmann (1976): let g ∊ G be an element of a group Alice uses a random a and sends g a; Bob uses a random b and sends g b; Common secret key: g a b = g a b = g b a Attack: Diffje-Helmann problem: recover g a b from (g ,g a,g b ). Easy when the Discrete Logarithm Problem (DLP) is easy; In a generic group can be reduced to the DLP .

slide-9
SLIDE 9

An introduction to public key cryptography: key exchange

How to exchange a secret key across a public channel? Diffje-Helmann (1976): let g ∊ G be an element of a group Alice uses a random a and sends g a; Bob uses a random b and sends g b; Common secret key: g a b = g a b = g b a Attack: Diffje-Helmann problem: recover g a b from (g ,g a,g b ). Easy when the Discrete Logarithm Problem (DLP) is easy; In a generic group can be reduced to the DLP .

slide-10
SLIDE 10

An introduction to public key cryptography: El Gamal encryption

Public key of Alice: (g ,g a), Secret key of Alice: a. Encryption: choose a random r and send (g r ,m × g a r ); Decryption: Alice compute g a r from which she recovers m.

slide-11
SLIDE 11

Choice of the base group

G = /n: polynomial attack in O(logn 2); G = ∗

q: subexponential attack in

O(2logq 1/3); G = E (q) (for a suitable elliptic curve over q): exponential attack in

  • O(q)
slide-12
SLIDE 12

Elliptic curves

Definition (chark = 2,3) An elliptic curve is a plane curve

y 2 = x 3 + a x + b 4a 3 + 27b 2 = 0.

  • 2
  • 1

1 2

  • 1.5
  • 1
  • 0.5

0.5 1 1.5 2 P Q R

  • R

Exponentiation: (ℓ,P ) → ℓP DLP: (P,ℓP ) → ℓ

slide-13
SLIDE 13

ECC vs RSA for 128 bits of security

ECC (Curve25519) 256 bits:

AAAAC3NzaC1lZDI1NTE5AAAAIMoNrNYhU7CY1Xs6v4Nm1V6oRHs/FEE8P+XaZ0PcxPzz

RSA 3248 bits:

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

  • vQfgDeNiFmIyvnviPPEm0JZA+QnburLYwOx4DgwYvyBnpal8WPo8c3L/J4hkwLm

Pc30DJ0xhUumLevAnCvOcjvgSfw8NenSVfzw+KToDIeKaP0rWfJTUWDAA79vY6tD UNwRjPNtYIwtSAv+FpRvINko0ZeHamW9H+D1cwKBy2euc93qruYDtFej/biGSA5D tUrca+kdE3aF/4TD8UckKQ1BjTHerOM2utX4+9yg4mTcYB6nziYP+MD+stDjDf90 1yOakz6sK2EcJwqW76dUG0O2QghzD5oya7gBDMMwZsuV1QGES0omdlKVs/AdNzwI 901Loc7ekm6zeW+n8/q5MmeXVNgDVtk+5l5V/Y98iRutpRpj3s2w3HkgOyrI6erA J+u47AHSJ0lEcoOKz9WdbRY889fUbW2ppjJzlank9T+U/XCgBNQ78iHu

slide-14
SLIDE 14

Quantum algorithms: Hidden subgroup problem

Hidden subgroup problem:

f : G → X

Goal: recover the largest subgroup H such that

f : G → G /H → X

Polynomial time quantum algorithm for solving HSP over fjnite Abelian groups based on the quantum Fourier transform. Exemple: let f : /N → X be a function periodic with period r . Classical algorithm to fjnd r : O(N ). Quantum algorithm: O(logN 2).

⇒ Break factorisation; ⇒ Break the DLP

.

slide-15
SLIDE 15

Extending DH key exchange

Let G be an abelian group acting on X . Fix a base point x ∊ X . Alice chooses a secret a ∊ G and sends a.x; Bob chooses a secret b ∊ G and sends b.x; The common key is a b.x = b a.x ∊ X . Example Key exchange on the Cayley graph of an abelian group.

slide-16
SLIDE 16

Key exchange on a graph

a b c d e f g h i j k l m n

  • p

q r s t u v w x y z

slide-17
SLIDE 17

Key exchange on a graph

Alice starts from ‘a’, follow the path 001110, and get ‘w’.

a b c d e f g h i j k l m n

  • p

q r s t u v w x y z

slide-18
SLIDE 18

Key exchange on a graph

Bob starts from ‘a’, follow the path 101101, and get ‘l’.

a b c d e f g h i j k l m n

  • p

q r s t u v w x y z

slide-19
SLIDE 19

Key exchange on a graph

Alice starts from ‘l’, follow the path 001110, and get ‘g’.

a b c d e f g h i j k l m n

  • p

q r s t u v w x y z

slide-20
SLIDE 20

Key exchange on a graph

Bob starts from ‘w’, follow the path 101101, and get ‘g’.

a b c d e f g h i j k l m n

  • p

q r s t u v w x y z

slide-21
SLIDE 21

Key exchange on a graph

The full exchange:

a b c d e f g h i j k l m n

  • p

q r s t u v w x y z

slide-22
SLIDE 22

Key exchange on a graph

Bigger graph (62 nodes)

a b c d e f g h i j k l m n

  • p

q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 1 2 3 4 5 6 7 8 9

slide-23
SLIDE 23

Key exchange on a graph

Even bigger graph (676 nodes)

aa ab ac ad ae af ag ah ai aj ak al am an ao ap aq ar as at au av aw ax ay az ba bb bc bd be bf bg bh bi bj bk bl bm bn bo bp bq br bs bt bu bv bw bx by bz ca cb cc cd ce cf cg ch ci cj ck cl cm cn co cp cq cr cs ct cu cv cw cx cy cz da db dc dd de df dg dh di dj dk dl dm dn do dp dq dr ds dt du dv dw dx dy dz ea eb ec ed ee ef eg eh ei ej ek el em en eo ep eq er es et eu ev ew ex ey ez fa fb fc fd fe ff fg fh fi fj fk fl fm fn fo fp fq fr fs ft fu fv fw fx fy fz ga gb gc gd ge gf gg gh gi gj gk gl gm gn go gp gq gr gs gt gu gv gw gx gy gz ha hb hc hd he hf hg hh hi hj hk hl hm hn ho hp hq hr hs ht hu hv hw hx hy hz ia ib ic id ie if ig ih ii ij ik il im in io ip iq ir is it iu iv iw ix iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js jt ju jv jw jx jy jz ka kb kc kd ke kf kg kh ki kj kk kl km kn ko kp kq kr ks kt ku kv kw kx ky kz la lb lc ld le lf lg lh li lj lk ll lm ln lo lp lq lr ls lt lu lv lw lx ly lz ma mb mc md me mf mg mh mi mj mk ml mm mn mo mp mq mr ms mt mu mv mw mx my mz na nb nc nd ne nf ng nh ni nj nk nl nm nn no np nq nr ns nt nu nv nw nx ny nz

  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • j
  • k
  • l
  • m
  • n
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
  • z

pa pb pc pd pe pf pg ph pi pj pk pl pm pn po pp pq pr ps pt pu pv pw px py pz qa qb qc qd qe qf qg qh qi qj qk ql qm qn qo qp qq qr qs qt qu qv qw qx qy qz ra rb rc rd re rf rg rh ri rj rk rl rm rn ro rp rq rr rs rt ru rv rw rx ry rz sa sb sc sd se sf sg sh si sj sk sl sm sn so sp sq sr ss st su sv sw sx sy sz ta tb tc td te tf tg th ti tj tk tl tm tn to tp tq tr ts tt tu tv tw tx ty tz ua ub uc ud ue uf ug uh ui uj uk ul um un uo up uq ur us ut uu uv uw ux uy uz va vb vc vd ve vf vg vh vi vj vk vl vm vn vo vp vq vr vs vt vu vv vw vx vy vz wa wb wc wd we wf wg wh wi wj wk wl wm wn wo wp wq wr ws wt wu wv ww wx wy wz xa xb xc xd xe xf xg xh xi xj xk xl xm xn xo xp xq xr xs xt xu xv xw xx xy xz ya yb yc yd ye yf yg yh yi yj yk yl ym yn yo yp yq yr ys yt yu yv yw yx yy yz za zb zc zd ze zf zg zh zi zj zk zl zm zn zo zp zq zr zs zt zu zv zw zx zy zz

slide-24
SLIDE 24

Elliptic curves isogeny key exchange (Couveignes, Rostovtsev and Stolbunov)

Use the horizontal isogeny graph of an ordinary elliptic curve E over q. This is in fact the Cayley graph of the class group of the endomorphism ring of E , which is an imaginary quadratic order. For cryptography, choose a curve such that the graph has 2256 nodes. Unlike standard Diffje-Helmann, the cryptosystem is not restricted to

  • ne curve, it is now all the curves in the isogeny class! In other words

the base point is not a rational point in an elliptic curve, but an elliptic curve seen as a point in its moduli space.

slide-25
SLIDE 25

Quantum algorithms: Hidden shift problem

G acts on X , f ,g two functions X → Y such that ∃s ∊ G | ∀x ∊ X , f (x) = g (s.x).

Goal: recover s. Polynomial quantum algorithms if G is cyclic; Subexponential quantum algorithms if G is abelian; No subexponential quantum algorithm known if G is not abelian;

slide-26
SLIDE 26

SIDH: supersingular elliptic curve Diffie-Helmann (De Feo, Jao, Plût)

Use the isogeny graph of a supersingular elliptic curve E over p 2. There are O(p) nodes and the graph is an expander graph. The endomorphism ring is a quaternion algebra (ramifjed at p and infjnity), which is non commutative. The isogeny graph is a Cayley graph for the groupoid class group. The key exchange can be seen as a pushforward:

E /KA ⊗E E /KB = E /(KA + KB)

Problem: to compute this pushforward, Alice and Bob need to send more informations (the image of some points by the isogeny). Can this extra information be used by an attacker? Best currently known attack: fjnd a path to a supersingular elliptic curve defjned over p (where the rational endomorphism ring is commutative). There are O(p) such curves, so Grover’s algorithm fjnd such a path in time O(p 1/4).

⇒ Needs p of 1024 bits.

slide-27
SLIDE 27

SIDH: supersingular elliptic curve Diffie-Helmann (De Feo, Jao, Plût)

Use the isogeny graph of a supersingular elliptic curve E over p 2. There are O(p) nodes and the graph is an expander graph. The endomorphism ring is a quaternion algebra (ramifjed at p and infjnity), which is non commutative. The isogeny graph is a Cayley graph for the groupoid class group. The key exchange can be seen as a pushforward:

E /KA ⊗E E /KB = E /(KA + KB)

Problem: to compute this pushforward, Alice and Bob need to send more informations (the image of some points by the isogeny). Can this extra information be used by an attacker? Best currently known attack: fjnd a path to a supersingular elliptic curve defjned over p (where the rational endomorphism ring is commutative). There are O(p) such curves, so Grover’s algorithm fjnd such a path in time O(p 1/4).

⇒ Needs p of 1024 bits.

slide-28
SLIDE 28

Using SIDH

Key exchange: starting with E , Alice sends E /KA (+ extra informations), Bob sends E /KB, the common secret key is E /(KA + KB). The curves E , E /KA, E /KB are public, the secrets are the kernel KA and

KB (alternatively the secrets are the paths in the isogeny graph).

If α : E → E /KA and β : E /KB are the isogenies (which are secrets), the extra informations allow Alice to compute β(KA) and the common key

E /(KA + KB) = (E /KB)/β(KA);

Likewise Bob computes the common key E /(KA + KB) = (E /KA)/α(KB). Zero knowledge authentification: Alice has a secret KA. She wants to prove she knows KA without revealing it. She publish (E ,E /KA). Bob does several challenges: Alice take a random KB and publish (E /KB,E /(KA + KB)). Bob either asks for KB and checks that E /KB is correct; Or Bob asks for β(KA) ⊂ E /KB and checks that

E /(KA + KB) = (E /KB)/β(KA).

slide-29
SLIDE 29

Bibliography

  • A. A. Ciss and I. Sène. “Efficient Attribute based credentials for

IoT”. (Cit. on p. 4).

  • A. A. Ciss and D. Sow. “Two-Source Randomness Extractors for

Elliptic Curves for Authenticated Key Exchange”. In: International Conference on Codes, Cryptology, and Information Security. Springer. 2017, pp. 85–95 (cit. on p. 4).

  • A. Dudeanu, D. Jetchev, D. Robert, and M. Vuille. “Cyclic Isogenies

for Abelian Varieties with Real Multiplication”. working paper or

  • preprint. Nov. 2017. URL:

https://hal.inria.fr/hal-01629829 (cit. on p. 4).

  • N. El Mrabet and M. Joye. Guide to Pairing-Based Cryptography. CRC

Press, 2017 (cit. on p. 4).

  • T. Ezome and M. Sall. “Normal Bases using 1-dimensional Algebraic

Groups”. (Cit. on p. 4).

  • E. Fouotsa and O. Diao. “A Theta Model for Elliptic Curves”. In:

Mediterranean Journal of Mathematics 14.2 (2017), p. 65 (cit. on p. 4).

slide-30
SLIDE 30
  • L. Ghammam and E. Fouotsa. “Improving the computation of the
  • ptimal ate pairing for a high security level”. In: Journal of Applied

Mathematics and Computing (2018), pp. 1–16 (cit. on p. 4).

  • D. Kolyang, D. Sow, A. A. Ciss, and H. B. Tchapgnouo. “Two-sources

randomness extractors in finite fields and in elliptic curves”. In: REVUE AFRICAINE DE LA RECHERCHE EN INFORMATIQUE ET MATHÉMATIQUES APPLIQUÉES 24 (2017) (cit. on p. 4).

  • T. Mefenza and D. Vergnaud. “Lattice Attacks on Pairing-Based

Signatures”. In: IMA International Conference on Cryptography and

  • Coding. Springer. 2017, pp. 352–370 (cit. on p. 4).
  • T. Mefenza and D. Vergnaud. “Polynomial interpolation of the

Naor–Reingold pseudo-random function”. In: Applicable Algebra in Engineering, Communication and Computing 28.3 (2017), pp. 237–255 (cit. on p. 4).

  • E. Milio and D. Robert. “Modular polynomials on Hilbert surfaces”.

working paper or preprint. Sept. 2017. URL: https://hal.archives-ouvertes.fr/hal-01520262 (cit. on

  • p. 4).
slide-31
SLIDE 31
  • T. M. Nountu. “Pseudo-Random Generators and Pseudo-Random

Functions: Cryptanalysis and Complexity Measures”. PhD thesis. Paris Sciences et Lettres, 2017 (cit. on p. 4).