Cryptanalysis techniques in algebraic code–based cryptography
Alain Couvreur1,2
1INRIA 2LIX, École polytechnique
Nutmic 2019
- A. Couvreur
Cryptanalysis in code–based crypto Nutmic 2019 1 / 80
Cryptanalysis techniques in algebraic codebased cryptography Alain - - PowerPoint PPT Presentation
Cryptanalysis techniques in algebraic codebased cryptography Alain Couvreur 1,2 1 INRIA 2 LIX, cole polytechnique Nutmic 2019 A. Couvreur Cryptanalysis in codebased crypto Nutmic 2019 1 / 80 History of codebased cryptography 1
1INRIA 2LIX, École polytechnique
Cryptanalysis in code–based crypto Nutmic 2019 1 / 80
1
2
3
Cryptanalysis in code–based crypto Nutmic 2019 2 / 80
Prerequisites on error correcting codes
q:
n is its length;
Cryptanalysis in code–based crypto Nutmic 2019 3 / 80
Prerequisites on error correcting codes
q:
n is its length; k is its dimension as an Fq–vector space;
Cryptanalysis in code–based crypto Nutmic 2019 3 / 80
Prerequisites on error correcting codes
q:
n is its length; k is its dimension as an Fq–vector space; A t–decoder for C is an algorithm D taking as input x ∈ Fn
q and
returning:
Cryptanalysis in code–based crypto Nutmic 2019 3 / 80
Prerequisites on error correcting codes
q:
n is its length; k is its dimension as an Fq–vector space; A t–decoder for C is an algorithm D taking as input x ∈ Fn
q and
returning:
q is defined by:
Cryptanalysis in code–based crypto Nutmic 2019 3 / 80
Prerequisites on error correcting codes
qm be a code. Its subfield subcode is defined by:
q.
Cryptanalysis in code–based crypto Nutmic 2019 4 / 80
History of code–based cryptography
1
History of code–based cryptography
2
Algebraic cryptanalysis in code–based cryptography
3
How to design secure schemes with codes?
Cryptanalysis in code–based crypto Nutmic 2019 5 / 80
History of code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 6 / 80
History of code–based cryptography
q, y ∈ Fn q and t 0.
Cryptanalysis in code–based crypto Nutmic 2019 6 / 80
History of code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 7 / 80
History of code–based cryptography
G, a structured k × n matrix whose rows span a code C ; S ∈ GLk; P ∈ Sn.
Right multiply by P−1 : mSGP + e − → mSG + eP−1; decode to get mS; right multiply it by S−1 to get m.
Cryptanalysis in code–based crypto Nutmic 2019 8 / 80
History of code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 9 / 80
History of code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 10 / 80
History of code–based cryptography
q −
Cryptanalysis in code–based crypto Nutmic 2019 11 / 80
History of code–based cryptography
q be a vector
q )n.
q × (F× q )n | ∀i = j, xi = xj};
2 ⌋·
Cryptanalysis in code–based crypto Nutmic 2019 12 / 80
History of code–based cryptography
qm be a vector with distinct entries and
qm)n. An alternant code of degree r is a code of the
q
Cryptanalysis in code–based crypto Nutmic 2019 13 / 80
History of code–based cryptography
qm be a vector with distinct entries and
qm)n. An alternant code of degree r is a code of the
q
q
q × (F× q )n | ∀i = j, xi = xj};
Cryptanalysis in code–based crypto Nutmic 2019 13 / 80
History of code–based cryptography
qm be a vector with distinct entries and
qm)n. An alternant code of degree r is a code of the
q
q
q × (F× q )n | ∀i = j, xi = xj};
Cryptanalysis in code–based crypto Nutmic 2019 13 / 80
History of code–based cryptography
qm be a vector with distinct entries and
q
Cryptanalysis in code–based crypto Nutmic 2019 14 / 80
History of code–based cryptography
qm be a vector with distinct entries and
q
Cryptanalysis in code–based crypto Nutmic 2019 14 / 80
History of code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 15 / 80
History of code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 16 / 80
History of code–based cryptography
Classic McEliece, public key 1 to 1.3 MByte for > 256 bits security. NTS KEM, 319 KBytes for > 128 bits security.
1With respect to Prange algorithm
Cryptanalysis in code–based crypto Nutmic 2019 17 / 80
History of code–based cryptography
Classic McEliece, public key 1 to 1.3 MByte for > 256 bits security. NTS KEM, 319 KBytes for > 128 bits security.
1With respect to Prange algorithm
Cryptanalysis in code–based crypto Nutmic 2019 17 / 80
History of code–based cryptography
Classic McEliece, public key 1 to 1.3 MByte for > 256 bits security. NTS KEM, 319 KBytes for > 128 bits security.
1With respect to Prange algorithm
Cryptanalysis in code–based crypto Nutmic 2019 17 / 80
History of code–based cryptography
m
q
Cryptanalysis in code–based crypto Nutmic 2019 18 / 80
History of code–based cryptography
m
q
C., Otmani, Tillich, 2014; Faugère, Perret, de Portzamparc, 2014
Cryptanalysis in code–based crypto Nutmic 2019 18 / 80
History of code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 19 / 80
History of code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 19 / 80
History of code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 19 / 80
History of code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 20 / 80
History of code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 21 / 80
History of code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 22 / 80
History of code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 22 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken
Cryptanalysis in code–based crypto Nutmic 2019 23 / 80
History of code–based cryptography
1978 : McEliece Suggests GRS codes 1986 : Niederreiter Proposals Attacks Broken Partially Broken
Cryptanalysis in code–based crypto Nutmic 2019 24 / 80
History of code–based cryptography
1978 : McEliece Suggests GRS codes 1992 : Sidelnikov Shestakov 1986 : Niederreiter Proposals Attacks Broken Partially Broken
Cryptanalysis in code–based crypto Nutmic 2019 25 / 80
History of code–based cryptography
1978 : McEliece Suggests GRS codes 1992 : Sidelnikov Shestakov 1986 : Niederreiter 1994 : Sidelnikov Proposes Reed-Muller codes Proposals Attacks Broken Partially Broken
Cryptanalysis in code–based crypto Nutmic 2019 26 / 80
History of code–based cryptography
1978 : McEliece Suggests GRS codes 1992 : Sidelnikov Shestakov 1986 : Niederreiter 1994 : Sidelnikov Proposes Reed-Muller codes Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno Propose AG codes and their subfield subcodes
Cryptanalysis in code–based crypto Nutmic 2019 27 / 80
History of code–based cryptography
1978 : McEliece Suggests GRS codes 1992 : Sidelnikov Shestakov 1986 : Niederreiter 1994 : Sidelnikov Proposes Reed-Muller codes Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno Propose AG codes and their subfield subcodes 2001 : Berger Loidreau Propose subcodes of GRS codes
Cryptanalysis in code–based crypto Nutmic 2019 28 / 80
History of code–based cryptography
1978 : McEliece Suggests GRS codes 1992 : Sidelnikov Shestakov 1986 : Niederreiter 1994 : Sidelnikov Proposes Reed-Muller codes Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno Propose AG codes and their subfield subcodes 2001 : Berger Loidreau Propose subcodes of GRS codes 2005 : Gaborit Quasi–cyclic BCH codes
Cryptanalysis in code–based crypto Nutmic 2019 29 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1994 : Sidelnikov Proposes Reed-Muller codes 2005 : Gaborit Quasi-cyclic subcodes of BCH codes 2001 : Berger Loidreau Propose subcodes of GRS codes 1996 : Janwa, Moreno Propose AG codes and their subfield subcodes
Cryptanalysis in code–based crypto Nutmic 2019 30 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1994 : Sidelnikov Proposes Reed-Muller codes 2007 : Minder Shokrollahi Subexponential time attack on RM codes 2005 : Gaborit Quasi-cyclic subcodes of BCH codes 2001 : Berger Loidreau Propose subcodes of GRS codes 1996 : Janwa, Moreno Propose AG codes and their subfield subcodes
Cryptanalysis in code–based crypto Nutmic 2019 31 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno Propose AG codes 2001 : Berger Loidreau Propose subcodes of GRS codes 2005 : Gaborit Quasi-cyclic subcodes of BCH codes and their subfield subcodes
Cryptanalysis in code–based crypto Nutmic 2019 32 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2001 : Berger Loidreau Propose subcodes of GRS codes 2005 : Gaborit Quasi-cyclic subcodes of BCH codes 2008 : Faure Minder, Attack on AG codes for genus ≤ 2 and their subfield subcodes Propose AG codes
Cryptanalysis in code–based crypto Nutmic 2019 33 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2001 : Berger Loidreau Propose subcodes of GRS codes 2005 : Gaborit Quasi-cyclic subcodes of BCH codes 2008 : Faure Minder, Attack on AG codes for genus ≤ 2 ... and their subfield subcodes 2008 : Berger, Cayrel, Gaborit, Otmani Propose QC alternant codes
Cryptanalysis in code–based crypto Nutmic 2019 34 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2001 : Berger Loidreau Propose subcodes of GRS codes 2005 : Gaborit Quasi-cyclic subcodes of BCH codes ... and their subfield subcodes 2008 : Berger, Cayrel, Gaborit, Otmani Propose QC alternant codes Propose q–ary “wild” Goppa codes Otmani, Tillich, Dallot Faug` ere, Perret, Otmani, Tillich Attacks on QC-codes 2010 : Bernstein, Lange Peters
Cryptanalysis in code–based crypto Nutmic 2019 35 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2001 : Berger Loidreau Propose subcodes of GRS codes 2005 : Gaborit Quasi-cyclic subcodes of BCH codes ... and their subfield subcodes 2008 : Berger, Cayrel, Gaborit, Otmani Propose QC alternant codes Propose q–ary “wild” Goppa codes 2010 : Bernstein, Lange Peters Otmani, Tillich, Dallot Faug` ere, Perret, Otmani, Tillich Attacks on QC-codes
Cryptanalysis in code–based crypto Nutmic 2019 36 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2001 : Berger Loidreau Propose subcodes of GRS codes 2005 : Gaborit Quasi-cyclic subcodes of BCH codes ... and their subfield subcodes 2008 : Berger, Cayrel, Gaborit, Otmani Propose QC alternant codes Propose q–ary “wild” Goppa codes 2010 : Bernstein, Lange Peters Otmani, Tillich, Dallot Faug` ere, Perret, Otmani, Tillich Attacks on QC-codes Wieschebrink’s C ⋆ C attack
Cryptanalysis in code–based crypto Nutmic 2019 37 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2001 : Berger Loidreau Propose subcodes of GRS codes 2005 : Gaborit Quasi-cyclic subcodes of BCH codes ... and their subfield subcodes 2008 : Berger, Cayrel, Gaborit, Otmani Propose QC alternant codes Propose q–ary “wild” Goppa codes 2010 : Bernstein, Lange Peters Otmani, Tillich, Dallot Faug` ere, Perret, Otmani, Tillich Attacks on QC-codes Wieschebrink’s C ⋆ C attack
Cryptanalysis in code–based crypto Nutmic 2019 38 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno ... and their subfield subcodes 2010 : Bernstein, Lange Peters Propose q–ary “wild” Goppa codes
Cryptanalysis in code–based crypto Nutmic 2019 39 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno ... and their subfield subcodes 2010 : Bernstein, Lange Peters Propose q–ary “wild” Goppa codes 2011 : Faug` ere, Gautier, Otmani, Perret, Tillich Distinguisher for High rate Goppa codes
Cryptanalysis in code–based crypto Nutmic 2019 40 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno ... and their subfield subcodes 2010 : Bernstein, Lange Peters Propose q–ary “wild” Goppa codes 2011 : Faug` ere, Gautier, Otmani, Perret, Tillich Distinguisher for High rate Goppa codes 2012 : Misoczki, Tillich, Sendrier, Barreto Propose MDPC codes
Cryptanalysis in code–based crypto Nutmic 2019 41 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2010 : Bernstein, Lange Peters Propose q–ary “wild” Goppa codes 2011 : Faug` ere, Gautier, Otmani, Perret, Tillich Distinguisher for High rate Goppa codes 2012 : Misoczki, Tillich, Sendrier, Barreto Propose MDPC codes and their subfield subcodes AG codes
Cryptanalysis in code–based crypto Nutmic 2019 42 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2010 : Bernstein, Lange Peters Propose q–ary “wild” Goppa codes 2011 : Faug` ere, Gautier, Otmani, Perret, Tillich Distinguisher for High rate Goppa codes 2012 : Misoczki, Tillich, Sendrier, Barreto Propose MDPC codes and their subfield subcodes AG codes 2014 : C., M´ arquez–Corbella, Pellikaan : attack on AG codes
Cryptanalysis in code–based crypto Nutmic 2019 43 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2010 : Bernstein, Lange Peters Propose q–ary “wild” Goppa codes 2011 : Faug` ere, Gautier, Otmani, Perret, Tillich Distinguisher for High rate Goppa codes 2012 : Misoczki, Tillich, Sendrier, Barreto Propose MDPC codes and their subfield subcodes AG codes 2014 : C., M´ arquez–Corbella, Pellikaan : attack on AG codes
Cryptanalysis in code–based crypto Nutmic 2019 44 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2010 : Bernstein, Lange Peters Propose q–ary “wild” Goppa codes 2011 : Faug` ere, Gautier, Otmani, Perret, Tillich Distinguisher for High rate Goppa codes 2012 : Misoczki, Tillich, Sendrier, Barreto Propose MDPC codes and their subfield subcodes AG codes 2014 : C., M´ arquez–Corbella, Pellikaan : attack on AG codes C., Otmani, Tillich : Goppa codes with m = 2
Cryptanalysis in code–based crypto Nutmic 2019 45 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2010 : Bernstein, Lange Peters Propose q–ary “wild” Goppa codes 2011 : Faug` ere, Gautier, Otmani, Perret, Tillich Distinguisher for High rate Goppa codes 2012 : Misoczki, Tillich, Sendrier, Barreto Propose MDPC codes and their subfield subcodes AG codes 2014 : C., M´ arquez–Corbella, Pellikaan : attack on AG codes C., Otmani, Tillich : Goppa codes with m = 2
Cryptanalysis in code–based crypto Nutmic 2019 46 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2010 : Bernstein, Lange Peters Propose q–ary “wild” Goppa codes 2011 : Faug` ere, Gautier, Otmani, Perret, Tillich Distinguisher for High rate Goppa codes 2012 : Misoczki, Tillich, Sendrier, Barreto Propose MDPC codes and their subfield subcodes AG codes 2014 : C., M´ arquez–Corbella, Pellikaan : attack on AG codes C., Otmani, Tillich : Goppa codes with m = 2 Faug` ere, Perret, Portzamparc : Some Goppa codes with m = 2, 3
Cryptanalysis in code–based crypto Nutmic 2019 47 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2010 : Bernstein, Lange Peters Propose q–ary “wild” Goppa codes 2011 : Faug` ere, Gautier, Otmani, Perret, Tillich Distinguisher for High rate Goppa codes 2012 : Misoczki, Tillich, Sendrier, Barreto Propose MDPC codes and their subfield subcodes AG codes 2014 : C., M´ arquez–Corbella, Pellikaan : attack on AG codes C., Otmani, Tillich : Goppa codes with m = 2 Faug` ere, Perret, Portzamparc : Some Goppa codes with m = 2, 3
Cryptanalysis in code–based crypto Nutmic 2019 48 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2010 : Bernstein, Lange Peters Propose q–ary “wild” Goppa codes 2011 : Faug` ere, Gautier, Otmani, Perret, Tillich Distinguisher for High rate Goppa codes 2012 : Misoczki, Tillich, Sendrier, Barreto Propose MDPC codes and their subfield subcodes AG codes 2014 : C., M´ arquez–Corbella, Pellikaan : attack on AG codes C., Otmani, Tillich : Goppa codes with m = 2 Faug` ere, Perret, Portzamparc : Some Goppa codes with m = 2, 3 Faug` ere, Otmani, Perret, Portzamparc, Tillich Further attack on QC and QD codes
Cryptanalysis in code–based crypto Nutmic 2019 49 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2010 : Bernstein, Lange Peters Propose q–ary “wild” Goppa codes 2011 : Faug` ere, Gautier, Otmani, Perret, Tillich Distinguisher for High rate Goppa codes 2012 : Misoczki, Tillich, Sendrier, Barreto Propose MDPC codes and their subfield subcodes AG codes 2014 : C., M´ arquez–Corbella, Pellikaan : attack on AG codes C., Otmani, Tillich : Goppa codes with m = 2 Faug` ere, Perret, Portzamparc : Some Goppa codes with m = 2, 3 Faug` ere, Otmani, Perret, Portzamparc, Tillich Further attack on QC and QD codes Nov 2017 : NIST’s call for post quantum crypto
Cryptanalysis in code–based crypto Nutmic 2019 50 / 80
History of code–based cryptography
1978 : McEliece Proposals Attacks Broken Partially Broken 1996 : Janwa, Moreno 2010 : Bernstein, Lange Peters Propose q–ary “wild” Goppa codes 2011 : Faug` ere, Gautier, Otmani, Perret, Tillich Distinguisher for High rate Goppa codes 2012 : Misoczki, Tillich, Sendrier, Barreto Propose MDPC codes and their subfield subcodes AG codes 2014 : C., M´ arquez–Corbella, Pellikaan : attack on AG codes C., Otmani, Tillich : Goppa codes with m = 2 Faug` ere, Perret, Portzamparc : Some Goppa codes with m = 2, 3 Faug` ere, Otmani, Perret, Portzamparc, Tillich Further attack on QC and QD codes Nov 2017 : NIST’s call for post quantum crypto etc...
Cryptanalysis in code–based crypto Nutmic 2019 51 / 80
Algebraic cryptanalysis in code–based cryptography
1
History of code–based cryptography
2
Algebraic cryptanalysis in code–based cryptography
3
How to design secure schemes with codes?
Cryptanalysis in code–based crypto Nutmic 2019 52 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 53 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 54 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 54 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 55 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 55 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 55 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 56 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 56 / 80
Algebraic cryptanalysis in code–based cryptography
1
n
Cryptanalysis in code–based crypto Nutmic 2019 57 / 80
Algebraic cryptanalysis in code–based cryptography
1
n
Cryptanalysis in code–based crypto Nutmic 2019 57 / 80
Algebraic cryptanalysis in code–based cryptography
1
n
Cryptanalysis in code–based crypto Nutmic 2019 57 / 80
Algebraic cryptanalysis in code–based cryptography
q with a group action G, one can define:
Cryptanalysis in code–based crypto Nutmic 2019 58 / 80
Algebraic cryptanalysis in code–based cryptography
q with a group action G, one can define:
r |G| and for some xG, y G
n |G|.
|G| and
|G| . (+ This results extends to subfield subcodes).
Cryptanalysis in code–based crypto Nutmic 2019 58 / 80
Algebraic cryptanalysis in code–based cryptography
Attacks on quasi–cyclic and quasi–dyadic Goppa/alternant codes, (Faugère, Otmani, Perret, Portzamparc, Tillich 2010, 2014)
Cryptanalysis in code–based crypto Nutmic 2019 59 / 80
Algebraic cryptanalysis in code–based cryptography
q we denote by ⋆ the component wise product:
q:
Cryptanalysis in code–based crypto Nutmic 2019 60 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 61 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 61 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 62 / 80
Algebraic cryptanalysis in code–based cryptography
q × (F× q )n,
Cryptanalysis in code–based crypto Nutmic 2019 62 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 63 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 63 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 63 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 64 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 65 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 65 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 65 / 80
Algebraic cryptanalysis in code–based cryptography
q | z ⋆ GRSk(x, y) ⊆ GRSk−1(x, y)2
Cryptanalysis in code–based crypto Nutmic 2019 66 / 80
Algebraic cryptanalysis in code–based cryptography
q | z ⋆ GRSk(x, y) ⊆ GRSk−1(x, y)2
Cryptanalysis in code–based crypto Nutmic 2019 66 / 80
Algebraic cryptanalysis in code–based cryptography
q | z ⋆ GRSk(x, y) ⊆ GRSk−1(x, y)2
Cryptanalysis in code–based crypto Nutmic 2019 66 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 67 / 80
Algebraic cryptanalysis in code–based cryptography
Cryptanalysis in code–based crypto Nutmic 2019 67 / 80
How to design secure schemes with codes?
1
History of code–based cryptography
2
Algebraic cryptanalysis in code–based cryptography
3
How to design secure schemes with codes?
Cryptanalysis in code–based crypto Nutmic 2019 68 / 80
How to design secure schemes with codes?
AG Codes Subfield Subcodes of AG codes Alternant codes Codes Goppa Classical GRS codes
Cryptanalysis in code–based crypto Nutmic 2019 69 / 80
How to design secure schemes with codes?
AG Codes Subfield Subcodes of AG codes Alternant codes Codes Goppa Classical GRS codes
Cryptanalysis in code–based crypto Nutmic 2019 70 / 80
How to design secure schemes with codes?
Subfield Subcodes of AG codes Alternant codes Codes Goppa Classical AG Codes g ≤ 2 GRS codes
Cryptanalysis in code–based crypto Nutmic 2019 71 / 80
How to design secure schemes with codes?
AG Codes Subfield Subcodes of AG codes Alternant codes Codes Goppa Classical GRS codes
Cryptanalysis in code–based crypto Nutmic 2019 72 / 80
How to design secure schemes with codes?
AG Codes Subfield Subcodes of AG codes Alternant codes Codes Goppa Classical GRS codes
Cryptanalysis in code–based crypto Nutmic 2019 73 / 80
How to design secure schemes with codes?
Decreasing dimension of the subcode Subcodes of GRS codes . . . . . . (m = 1) GRS Alt (m = 2) m = 3 m ≫ 1
Cryptanalysis in code–based crypto Nutmic 2019 74 / 80
How to design secure schemes with codes?
Decreasing dimension of the subcode Subcodes of GRS codes . . . . . . (m = 1) GRS Alt (m = 2) m = 3 m ≫ 1 dim 2 √ k
What filtration attacks can break
Cryptanalysis in code–based crypto Nutmic 2019 75 / 80
How to design secure schemes with codes?
Decreasing dimension of the subcode
Faug` ere, Otmani, Perret, Tillich distinguisher
Subcodes of GRS codes . . . . . . (m = 1) GRS Alt (m = 2) m = 3 m ≫ 1 dim 2 √ k
What filtration attacks can break
Cryptanalysis in code–based crypto Nutmic 2019 76 / 80
How to design secure schemes with codes?
Cryptanalysis in code–based crypto Nutmic 2019 77 / 80
How to design secure schemes with codes?
Cryptanalysis in code–based crypto Nutmic 2019 77 / 80
How to design secure schemes with codes?
C 2, (C ⊥)2 and their shortenings should behave like random codes.
Cryptanalysis in code–based crypto Nutmic 2019 77 / 80
How to design secure schemes with codes?
C 2, (C ⊥)2 and their shortenings should behave like random codes.
Cryptanalysis in code–based crypto Nutmic 2019 77 / 80
How to design secure schemes with codes?
C 2, (C ⊥)2 and their shortenings should behave like random codes.
Cryptanalysis in code–based crypto Nutmic 2019 77 / 80
How to design secure schemes with codes?
Cryptanalysis in code–based crypto Nutmic 2019 78 / 80
How to design secure schemes with codes?
Cryptanalysis in code–based crypto Nutmic 2019 78 / 80
How to design secure schemes with codes?
Cryptanalysis in code–based crypto Nutmic 2019 78 / 80
How to design secure schemes with codes?
Cryptanalysis in code–based crypto Nutmic 2019 78 / 80
How to design secure schemes with codes?
Cryptanalysis in code–based crypto Nutmic 2019 79 / 80
How to design secure schemes with codes?
Cryptanalysis in code–based crypto Nutmic 2019 80 / 80