Criptografía con curvas elípticas · PDF fileCC-BY-NC-ND • PID_00200952...

download Criptografía con curvas elípticas · PDF fileCC-BY-NC-ND • PID_00200952 Criptografía con curvas elípticas Índice Introducción..... 5

If you can't read please download the document

Transcript of Criptografía con curvas elípticas · PDF fileCC-BY-NC-ND • PID_00200952...

  • Criptografa concurvas elpticasLloren Huguet Rotger

    Josep Rif Coma

    Juan Gabriel Tena Ayuso

    PID_00200952

  • Los textos e imgenes publicados en esta obra estn sujetos excepto que se indique lo contrario auna licencia de Reconocimiento-NoComercial-SinObraDerivada (BY-NC-ND) v.3.0 Espaa deCreative Commons. Podis copiarlos, distribuirlos y transmitirlos pblicamente siempre que citisel autor y la fuente (FUOC. Fundaci per a la Universitat Oberta de Catalunya), no hagis un usocomercial y no hagis una obra derivada. La licencia completa se puede consultar enhttp://creativecommons.org/licenses/by-nc-nd/3.0/es/legalcode.es

  • CC-BY-NC-ND PID_00200952 Criptografa con curvas elpticas

    ndice

    Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    1. Curvas y puntos racionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    1.1. Definiciones previas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    1.2. Plano proyectivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    1.3. Curvas afines y proyectivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

    1.4. Puntos racionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

    1.4.1. Puntos racionales de una curva de grado 1 . . . . . . . . . . . 17

    1.4.2. Puntos racionales de una curva de grado 2 . . . . . . . . . . . 17

    1.4.3. Puntos racionales de una curva de grado 3 . . . . . . . . . . . 18

    1.4.4. Puntos racionales de una curva de grado 4 . . . . . . . . . . . 19

    2. Geometra de las curvas elpticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

    2.1. Ecuacin de Weierstrass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

    2.2. La ley de grupo de una curva elptica . . . . . . . . . . . . . . . . . . . . . . . . . 24

    2.2.1. Ley de grupo en C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

    2.2.2. Ecuacin general de P + Q . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

    3. Curvas elpticas sobre cuerpos finitos . . . . . . . . . . . . . . . . . . . . . . . . . 34

    3.1. Nmero de puntos de una curva elptica . . . . . . . . . . . . . . . . . . . . . . 34

    3.2. Extensin de una curva sobre un cuerpo a una curva sobre un

    cuerpo extendido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    4. El uso de las curvas elpticas en criptografa . . . . . . . . . . . . . . . . . 40

    4.1. El problema del logaritmo elptico . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

    4.2. Eleccin de la curva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

    4.3. Asignacin de mensajes a puntos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    4.3.1. Creacin de una tabla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    4.3.2. Mtodo de curvas entrelazadas . . . . . . . . . . . . . . . . . . . . . . . 44

    5. Criptografa y protocolos criptogrficos basados en curvas

    elpticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

    5.1. Protocolos criptogrficos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

    5.1.1. Protocolo de Diffie-Helman . . . . . . . . . . . . . . . . . . . . . . . . . . 47

    5.1.2. Protocolo de tres-pasos de Shamir . . . . . . . . . . . . . . . . . . . . 49

    5.2. Criptosistema ElGamal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

    5.3. Criptosistema RSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

    5.4. Firma digital . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

    5.5. Comparacin de los sistemas de clave pblica . . . . . . . . . . . . . . . . 53

  • CC-BY-NC-ND PID_00200952 Criptografa con curvas elpticas

    5.5.1. Seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

    5.5.2. Eficiencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

    6. ECC estndares y aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

    6.1. ECC estndares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

    6.1.1. Estndares principales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

    6.1.2. Estndares de aplicacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

    6.2. Aplicaciones de la ECC. Tarjetas inteligentes . . . . . . . . . . . . . . . . . . 59

    6.2.1. Restricciones de las tarjetas inteligentes . . . . . . . . . . . . . . 60

    6.2.2. Ventajas de la ECC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

    6.2.3. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

    Ejercicios de autoevaluacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

    Soluciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

    Bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

  • CC-BY-NC-ND PID_00200952 5 Criptografa con curvas elpticas

    Introduccin

    La teora de curvas elpticas sobre cuerpos finitos encuentra aplicaciones en

    diversas disciplinas, como por ejemplo la teora de nmeros o la criptografa.

    Resultan sorprendentes sus relaciones con problemas tan diversos como la

    realizacin de tests de primalidad, la factorizacin de nmeros enteros o la

    demostracin del ltimo teorema de Fermat, entre otras.

    Veamos unas pinceladas de estas relaciones para centrarnos despus en la apli-

    cacin de las curvas elpticas a la criptografa. En un principio podemos pensar

    en una curva elptica como el conjunto de soluciones de una ecuacin de la

    forma:

    y2 = x3 + ax + b.

    Relacionadas con la teora de nmeros podemos destacar dos aplicaciones:

    El problema de losnmeros congruentes

    Fue enunciado por primeravez por el matemtico persaal-Karaji (hacia el siglo X a.C.). Actualmente, la solucindel problema depende de laconjetura deBirch-Swinnerton-Dyer sobrecurvas elpticas. El problemaes uno de los siete problemasdel milenio que el ClayMathematics Institute dot,en el ao 2000, con unpremio de un milln dedlares para quien aportara lasolucin de cualquiera deellos.

    Nmeros congruentes. Un nmero racional N se dice que es congruentesi existe un tringulo con aristas racionales cuya rea es N. Durante mucho

    tiempo el problema ha permanecido sin que se conociese ningn algorit-

    mo capaz de resolverlo, es decir, de comprobar si un nmero dado N era

    congruente o no. Actualmente, est demostrado que N es un nmero con-

    gruente si y solo si la curva elptica y2 = x3 N2x = x(x N)(x + N) tiene

    algn punto racional diferente de (0,0), (N,0) y del punto del infinito dela curva.

    Teorema de Fermat. En 1985 Gerhard Frey observ que si An + Bn = Cn eraun contraejemplo al ltimo teorema de Fermat, entonces la curva elptica

    y2 = x(xAn)(x+Bn) tena por discriminante (AnBn(An +Bn))2 = (ABC)2n.

    Discriminante

    El discriminante de una curvaelptica y2 = x3 + ax + b vienedado por = 4a3 + 27b2 y esnulo si y solo si la curva tienepuntos singulares (puntos enlos que las dos derivadasparciales se anulan).

    Tal curva contradeca la denominada conjetura de Taniyama. Posterior-

    mente, A. Wiles prob que ninguna curva poda contradecir esta conjetura

    y, por lo tanto, qued probado que no existe ningn contraejemplo al l-

    timo teorema de Fermat.

    En el campo de la criptografa, la aplicacin de estas curvas la podemos en-

    contrar en la descomposicin de un nmero en factores, en los sistemas crip-

    togrficos y en los tests de primalidad, estos ltimos desarrollados por Bosma,

    Goldwasser-Killian, Atkin y Lenstra entre otros.

    H.W. Lenstra ha obtenido un nuevo mtodo de factorizacin que es, en mu-

    chos aspectos, mejor que los conocidos anteriormente. La mejora y eficiencia

  • CC-BY-NC-ND PID_00200952 6 Criptografa con curvas elpticas

    de este nuevo mtodo todava no es significativo en la prctica (el tiempo para

    factorizar contina siendo el mismo) pero, an as, el hecho de haber encon-

    trado un mecanismo diferente hace que los sistemas criptogrficos basados en

    el problema de la factorizacin no resulten, al fin y al cabo, tan seguros co-

    mo parecan. El algoritmo de factorizacin con curvas elpticas de Lenstra es

    anlogo al mtodo clsico denominado p 1 de Pollard.

    Los avances en estos mtodos as como en las prestaciones de los ordenado-

    res exigen nmeros cada vez mayores a fin de poder garantizar la seguridad

    de los sistemas criptogrficos, lo que representa un grave inconveniente a la

    hora de implementar los procesos de generacin y distribucin de las claves

    secretas. Este problema se soluciona, en parte, usando sistemas de cifrado con

    curvas elpticas. Estos sistemas ofrecen un nivel de seguridad equivalente al

    de los mtodos tradicionales (RSA, ELGamal,...) pero ut