Este documento presenta un resumen de 3 oraciones o menos:
El documento introduce conceptos básicos de criptografía simétrica y asimétrica, así como conceptos de álgebra abstracta como grupos y anillos utilizados en criptografía. Explica el problema de logaritmo discreto en grupos como Zp× y su aplicación en algoritmos como Diffie-Hellman. Finalmente, discute el uso de curvas elípticas y hiperelipticas como posibles grupos donde el problema de logaritmo discreto es más difícil de resolver.
1. Criptograf´ experimental
ıa
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM
GuadalajaraCON 2012
Abril 21, 2012
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
2. Agenda
Intro: Criptograf´ en telecomm
ıa
Conceptos b´sicos de algebra abstracta
a
Problema de logaritmo discreto en Zp ×
Aplicaciones del PLD en Zp ×
Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Conclusiones
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
3. Introducci´n
o
En las telecomunicaciones hay dos tipos de cifrado muy
importantes
Sim´trico: Utiliza la misma llave para cifrar y descifrar
e
Dk (Ek (x)) = x
Asim´trico: Utiliza una llave para cifrar y otra para descifrar
e
Ds (Ep (x)) = x
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
4. Introducci´n
o
Sim´tricos El sim´trico generalmente se usa para cifrar flujos de
e e
informaci´n, y estos suelen ser muy rapidos.
o
´
Este tiene una desventaja, requiere una negociaci´n previa de una
o
llave, Y si las entidades est´n separadas, esta llave se tendr´ que
a ıa
negociarse a trav´s de un medio no seguro, lo cual ser´ absurdo.
e ıa
Ejemplos de algoritmos sim´tricos
e
Rijndael-AES, Blowfish, TEA, A5
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
5. Introducci´n
o
Asim´tricos Aqu´ hay dos llaves, p´blica y privada, la p´blica se
e ı u u
usa para cifrar y la privada para descifrar unicamente, a partir de la
´
llave p´blica es Turing-intratable el problema de calcular la llave
u
privada utilizando algoritmos asim´tricos basados en factorizaci´
e o
en n´meros primos o el problema de logaritmo discreto en ciertos
u
grupos
Ejemplos de algoritmos asim´tricos
e
RSA, Elgamal, XTR, Diffie-Hellman
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
6. Conceptos b´sicos
a
Conjuntos que usaremos:
N = {0, 1, 2, 3, ..., ∞}
Z = {−∞, ..., −2, −1, 0, 1, 2, ..., ∞}
a
Q = { b / a, b ∈ Z y b = 0}
nZ = {nz/n ∈ Z}
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
7. Conceptos b´sicos
a
Definicion: Un grupo es un par < G , ⋆ > tal que G es un
conjunto y ⋆ es una operacion binaria en G que
cumple lo siguiente:
∀a, b ∈ G a ⋆ b ∈ G (⋆ est´ cerrada en G)
a
∀a, b, c ∈ G a ⋆ (b ⋆ c) = (a ⋆ b) ⋆ c (⋆ es asociativa)
∃e ∈ G tal que g ⋆ e = e ⋆ g = g (G tiene elemento neutro)
∀a ∈ G ∃h ∈ G tal que a ⋆ h = h ⋆ a = e (existen inversos
bajo ⋆ )
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
8. Conceptos b´sicos
a
Si para todo a, b ∈ G a ⋆ b = b ⋆ a (⋆ conmuta) diremos que G es
un grupo abeliano y hoy solo trabajaremos con grupos abelianos
Ejemplos de grupos abelianos
< Z, + > es un grupo abeliano
< Q× , ∗ > es un grupo abeliano
< N, + > no es un grupo abeliano
< Mat(R)n×n , ∗ > no es un grupo
< Z, ∗ > no es un grupo
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
9. Conceptos b´sicos
a
Otro ejemplo es el grupo de puntos de una curva el´
ıptica
K:y 2 − x3 − x
< E (K), ⊕ >
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
10. Conceptos b´sicos
a
Definici´n: Un subgrupo H ⊂ G es aquel que forma un grupo
o
bajo ⋆
´ste se denotar´ como H < G
e a
Se dir´ que G es un grupo finito si |G | = n con n ∈ N e infinito si
a
|G | = ℵn
Ejemplo
< 2Z, + > es subgrupo de < Z, + > ya que 2Z ⊂ Z y
2Z son los numeros pares, y la suma que hereda de Z hace que
suma de pares sea par
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
11. Conceptos b´sicos
a
Nota: La siguiente definici´n solo es para grupos abelianos para
o
no definir lo que es un grupo normal
Definici´n: Un grupo cociente G /S donde < S, ∗ > es subgrupo
o
de < G , ∗ > es:
G /S = {aS / a ∈ G } donde aS = {a ∗ s / s ∈ S}
a cada aS le llamamos clase, ahora construiremos la operaci´n del
o
cociente G /S
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
12. Conceptos b´sicos
a
Antes de definir la operaci´n de G /S definamos lo que es el
o
siguiente producto de conjuntos S por T :
ST = {st / s ∈ S y t ∈ T }
Entonces si aS, bS ∈ G /S es f´cil ver que
a
(aS)(bS) = (ab)SS = (ab)S
ya que SS = {st / s, t ∈ S} = S
El elemento neutro de G /S es eS = S donde e es el neutro de G y
S
esto es claro ya que (aS)(eS) = (ae(SS)) = aS
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
13. Conceptos b´sicos
a
Ejemplo de grupo cociente
El mas sencillo pero no trivial es con los subgrupos de < Z, + >
tenemos que 2Z < Z entonces:
Z/2Z = {n + 2Z / n ∈ Z}
Sus clases son:
0 + 2Z = pares
1 + 2Z = impares
2 + 2Z = pares
3 + 2Z = impares
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
14. Conceptos b´sicos
a
Continuaci´n ejemplo de grupo cociente
o
Por lo tanto solo hay dos clases, la clase de los pares e impares
⇒ Z/2Z = {I , P} con I y P impares y pares respectivamente
Sabemos que la regla de sumar pares con impares, pares con pares
e impares con impares es:
I +P =I
P +P =P
I +I =P
Por lo tanto este cociente es un grupo de 2 elementos que operan
como sumar modulo 2
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
15. Conceptos b´sicos
a
Definicion: Un morfismo de grupos < G , ∗ > y < H, ⊙ > es una
funci´n φ : G → H tal que ∀u, v ∈ G
o
φ(u ∗ v ) = φ(u) ⊙ φ(v )
una observaci´n es que φ(eG ) = eH y φ(u −1 ) = φ(u)−1
o
Definicion: Dados dos grupos < G , ∗ > y < H, ⊙ >, un
isomorfismo entre ellos es un morfismo biyectivo
Ejemplo de isomorfismo
< R, + > y < R+ , ∗ > son isomorfos con φ(x) = e x ya que
φ(a + b) = φ(a) ∗ φ(b) i.e e a+b = e a ∗ e b
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
16. ×
Problema de logaritmo discreto en Zp
Definici´n del PLD:
o
Sea < G , ∗ > c´ıclico , |G | = n , b ∈ G y < b >= G ⇒ ∀g ∈ G
g = b k , k entero y definimos el morfismo de grupos:
logb : G → Zn
g → [k]
de tal manera que b k = g mod n
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
17. ×
Problema de logaritmo discreto en Zp
No existe hasta ahora un algoritmo para calcular esta k en tiempo
polinomial dados g y b aunque existen cosas mas r´pidas que
a
”intentar todo” como pollard − ρ o la criba de campo de
funciones, criba numerica, etc.., tambi´n es muy r´pido si usas tu
e a
computadora cu´ntica usando el algoritmo de Shor para PLD y la
a
transformada de fourier cu´ntica :p
a
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
18. Aplicaciones del PLD en Zp ×
Una aplicaci´n del problema de logaritmo discreto es intercambiar
o
llaves a trav´s de medios no seguros, Martin Hellman, Whitfield
e
Diffie, Ralph Merkle pensaron en un algoritmo usando el problema
de logaritmo discreto y no olvidemos a los que lo descubrieron
antes pero por razones de secreto militar no pod´ publicarlo,
ıan
Malcolm J. Williamson y James H. Ellis de Inglaterra en la GCHQ.
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
19. Aplicaciones del PLD en Zp ×
Alberto (A) quiere cifrar un mensaje a Berenice (B) pero necesitan
un password en com´n, el problema es que no pueden comunicarse
u
el password ya que podr´ estar intervenidos, y Eulalio (E) podr´
ıan ıa
estar capturando su tr´fico
a
entonces:
A y B se ponen de acuerdo en un < Z∗ , ∗ > y en un g ∈ G tal
p
que g es generador, (N´tese que E ya tiene esta informaci´n)
o o
A toma un a ∈ Zp , calcula A1 = g a mod p y manda A1 a B
B toma un b ∈ Zp , calcula B1 = g b mod p y manda B1 a A
a
A calcula Sa = B1 mod p
B calcula Sb = Ab mod p
1
Sa = Sb ya que Sa = (g b )a = Sb = (g a )b = g ab = S
Alberto y Berenice ya tienen un secreto S y no importa que Eulalio
conozca A1 , B1 , p y g
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
20. Curvas hiperel´
ıpticas, teoria de divisores y conceptos
fundamentales
Ahora, ¿Por qu´ no usar otros grupos ?
e
Variedades abelianas en campos finitos
Jacobianas de curvas hiperel´
ıpticas
Jacobianas de otras curvas algebraicas
Todo el mundo utiliza Z× , es lo mas sencillo de entender pero hay
p
grupos donde el PLD es mas complejo (o menos investigado)
nosotros nos fijaremos hoy en Jacobianas de Curvas hiperelipticas
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
21. Curvas hiperel´
ıpticas, teoria de divisores y conceptos
fundamentales
El problema de logaritmo discreto ya se ha investigado en curvas
el´
ıpticas y se define as´
ı:
Sea E una curva el´ıptica sobre Fq y P ∈ E (Fq ){∞}, computamos
Q = nP p.a n entero
El problema de logaritmo discreto en curvas el´
ıpticas es que dado
P y Q obtener n.
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
22. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Existen muchas cosas a considerar para que esto sea seguro... solo
mencionar´ uno de los puntos mas importantes el cual es:
e
Si |E (Fq )| = q existe un morfismo de grupos
< E (Fq ), ⊕ >→< Fqω , + >
ya vimos que en el grupo aditivo, es trivial el problema de
logaritmo discreto.
Tambi´n hay una manera de dar el morfismo al grupo multiplicativo
e
Existen documentos del NIST que indican que curvas son las
optimas.
´
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
23. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Pero aqu´ ¿Qu´ sucede utilizando la misma construcci´n
ı, e o
geom´trica? y 2 = f (x) Deg (f ) = 5
e
Aqu´ la linea que pasa por 2 puntos no necesariamente ’choca’ con
ı
un unico tercer punto vi´ndolo en A2
´ e K
Tendremos que definir una relaci´n de equivalencia entre puntos y
o
operar con las clases que nos permitan definir una operaci´n
o
binaria, para esto es lo que sigue.. divisores.
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
24. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Sea C una curva suave y algebraica sobre K.
Un divisor de C es una suma formal finita:
D= nP (P) np ∈ Z
P∈C
Llamaremos Div (C) al conjunto de estos divisores.
Ejemplo de divisor
D1 = 1(P) − 3(Q) + 2(R) + 3(S)
Donde un n´mero finito de coeficientes es no-cero
u
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
25. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
La suma de divisores es as´
ı:
D1 = P∈C nP (P)
D2 = P∈C mP (P)
D1 + D2 = P∈C(nP + mP )(P)
Entonces (Div (C), +) es un grupo con elemento neutro:
O= P∈C 0(P)
El grado de un divisor es:
∂(D) = P∈C nP
Un subgrupo de Div (C) son los X ∈ Div (C) tal que ∂(X ) = 0 el
cual denotaremos como Div 0 (C)
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
26. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Denotaremos al anillo de coordenadas de la curva C sobre el
campo K como el cociente:
K[C] = K[x, y ]/ < C >
donde < C > es el ideal generado por la curva C i.e. los m´ltiplos
u
de ´sta en K[x, y ]
e
K(C) ser´ el campo de funciones generado por el campo de
a
fracciones de K[C], i.e.
K(C) = Quot(K[C]) = {f /g |f , g ∈ K[C], g = 0}
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
27. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
El divisor de una funci´n f ∈ K(C)∗ (campo de funciones
o
racionales sobre C) es:
Div (f ) = P∈C ordP (f )(P)
Intuitivamente ordP (f ) es una medida de la multiplicidad del cero
de f, o sea la multiplicidad de la intersecci´n de la curva C con f=0
o
A estos divisores les llamamos divisores principales y los denotamos
por Princ(C)
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
28. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Intuitivamente as´ se define el orden en estos dos casos:
ı
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
29. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Estos divisores realmente lo que nos indican en sus coeficientes es
que si bajo una una f ∈ K(C)∗ , P es un polo (ordP (f ) < 0) o P es
un cero (ordP (f ) > 0)
Algunas propiedades de divisores principales sobre C una curva
suave algebraica sobre K y con f , g ∈ K(C)∗
∗
Div (f ) = O ⇔ f ∈ K
∂(Div (f )) = 0
Div (f ∗ g ) = Div (f ) + Div (g )
Div (f /g ) = Div (f ) − Div (g )
Div (f n ) = n · Div (f ) ∀n ≥ 1
∗
Div (f ) = Div (g ) ⇔ f = cg , c ∈ K
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
30. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Ejemplo de divisores principales en y 2 = x 3 − x
(Con cuentas salen los ordPi (L) visto como el homogeneizado de L
en P2 , esto es algebraicamente lo que vimos antes con geometr´ )
ıa
Div (LP,Q ) = (P) + (Q) + (R) − 3(∞)
Div (LP⊕Q,∞ ) = (P ⊕ Q) + (R) − 2(∞)
LP,Q
Div ( LP⊕Q,∞ ) = Div (LP,Q ) − Div (LP⊕Q,∞ )
= (P) + (Q) − (P ⊕ Q) − (∞)
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
31. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Vamos a dar una relaci´n de equivalencia entre divisores para
o
definir algo que nos pueda servir en criptograf´
ıa
Sean D1 , D2 ∈ Div (C)
Si D1 − D2 ∈ Princ(C) ⇒ D1 , D2 son linealmente equivalentes y
D1 ∼ D2
Ahora.. la relaci´n de equivalencia en Div 0 (C) forma el grupo
o
Pic 0 (C) (divisores m´dulo la equivalencia lineal) , en otras
o
palabras:
Pic 0 (C) = Div 0 (C)/Princ(C)
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
32. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Teorema: Sea C una curva algebraica de g´nero g suave sobre un
e
campo algebraicamente cerrado ⇒ ∃ una variedad abeliana
J(C) ∼ Pic 0 (C), donde J(C) es la jacobiana de C
=
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
33. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
R´pidamente con el siguiente teorema clasificamos a los divisores
a
de una curva de g´nero g:
e
Def: Una curva hiperel´ ıptica de g´nero g es de la forma
e
y 2 + h(x)y = f (x), h, f ∈ K[x], Deg (f ) = 2g + 1, Deg (h) ≤ g
y f m´nico
o
En este caso nos interesa que no tenga puntos singulares, o sea
que no se anule el gradiente y la curva en alg´n punto.
u
Teorema: Sea C una curva hiperel´ ıptica de g´nero g sobre K
e
entonces cada clase de divisores se puede representar de
manera unica como:
´
(Pi ) − r (∞)
1≤i ≤r
donde r ≤ g , Pi = ∞
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
34. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Ve´moslo geom´tricamente con un ejemplo:
a e
Por geometr´ sabemos que en esta curva con g = 2 dados
ıa
P1 , P2 , Q1 , Q2 podemos encontrar una c´bica que pasa por esos 4
u
puntos que al sustituir en la curva C nos dar´n 6 puntos De los
a
cuales ya conocemos 4, los otros dos los proyectamos con ∞ y
obtenemos a los representantes del nuevo divisor .
(P1 ) + (P2 ) − 2(∞) + (Q1 ) + (Q2 ) − 2(∞) = (R1 ) + (R2 ) − 2(∞)
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
35. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Para poder hacer criptograf´ necesitamos una representaci´n
ıa o
computacional de los divisores, ya que queremos operar en la
jacobiana de la curva, y tenemos que:
Todo elemento [D] ∈ J(C) puede representarse por el par
< u(x), v (x) > tal que u(pix ) = 0 y v (pix ) = piy con u m´nico,
o
grad(u) = g y grad(v ) = g − 1 con pi ∈ Sop(D) y pi = (pix , piy )
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
36. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
La definici´n anterior nos dice b´sicamente que para todo divisor
o a
en la jacobiana existen dos polinomios u, v unicos tal que u tiene
´
como raices a los puntos del divisor (a las coordenadas x) y
v (x) = y para todo punto (x, y ) en el divisor [D]
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
37. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Finalmente la aportaci´n que presento es un modelo que calcula
o
este endomorfismo para curvas hiperel´ ıpticas de g´nero 2 el cual se
e
aplicar´ a criptograf´ asim´trica, resolviendo un sistema de
ıa ıa e
ecuaciones de 4x4, tanto para [D1 ] ⊕ [D2 ] y 2[D] existe un
algoritmo general, pero es lento aunque funciona para toda curva
de cualquier g´nero (Cantor)
e
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
38. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Definamos la curva hiperel´
ıptica de g´nero 2
e
C : y 2 − f (x) (1)
Con f (x) irreducible y de grado 5 sobre un campo K y
′ ′
[D1 ] = P1 + P2 − 2∞ y [D2 ] = P1 + P2 − 2∞ tal que
[D1 ], [D2 ] ∈ Pic 0 (C) y la forma de Mumford de esos divisores es
respectivamente.
[D1 ] =< x 2 + ax + b, cx + d >, [D2 ] < x 2 + Ax + B, Cx + D > (2)
Si [D1 ] = [D2 ], existir´ un f ∈ K(C) tal que
a
Div (f ) = [D1 ] ⊕ [D2 ] = [D3 ]
¯ ¯
Con Div (f ) = [D3 ] = P1 + P2 − 2∞ donde f ser´ un polinomio de
a
grado 3 αx 3 + βx 2 + γx + δ que pasa por los otros 2 puntos que
nos dar´ el nuevo divisor invertido
ıan
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
39. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Donde α, β, γ, δ son las soluciones de la siguiente matriz
aumentada:
2
a − b −a 1 0 c
ab
−b 0 1 d
.
A2 − B −A 1 0 C
AB −B 0 1 D
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
40. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Y si quisieramos calcular 2[D1 ] = [D1 ] ⊕ [D1 ] con su forma de
Mumford [D1 ] =< x 2 + ax + b, cx + d > la suma dar´ igual un
ıa
polinomio c´bico pero que pasa por puntos con multiplicidad 2
u
(intuitivamente tangentes, en general no): y las soluciones del
polinomio ser´ dadas por:
ıan
6a2 c − 6ad − 6bc −4ac + 4d 0 10ab − 5a3
2c
6abc − 6bd −4bc 2d 0 5b 2 − 5ba2
.
a2 − b −a 1 0 c
ab −b 0 1 d
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
41. Curvas hiperel´
ıpticas, teor´ de divisores y conceptos
ıa
fundamentales
Intuitivamente [D1 ] ⊕ [D2 ] y 2[D1 ]:
EsEduardo Ruiz Duarte, Facultadhay espacios donde no existe esa a la seguridad
intuitivo porque de Ciencias UNAM Algebra conmutativa aplicada noci´n de
´
o
42. Conclusiones
En resumen para construir el grupo de Picard hacemos:
Escoges una curva suave C algebraica
Buscas los divisores de orden cero Div 0 (C)
Consideras relaci´n de equivalencia lineal entre divisores
o
Defines el representante de cada clase de divisores
Veamos un ejemplo ya con c´digo corriendo, implementando esta
o
idea.
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
43. Conclusiones
Las curvas el´
ıpticas proveen m´s seguridad, 160 bits son igual
a
de seguros que 1024 bits RSA
Las curvas hiperel´
ıpticas con g=2 bien escogidas de 80 bits
son igual de seguras que 1024 bits RSA
La teor´ de curvas hiperel´
ıa ıpticas es m´s complicada para
a
implementar
Las curvas el´ıpticas tambi´n sirven para romper RSA
e
(factorizaci´n)
o
Se necesita m´s investigaci´n para cifrado con variedades
a o
abelianas
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad
44. ¡Gracias! Eduardo Ruiz Duarte
beck@math.co.ro
http://math.co.ro
twitter: @toorandom
PGP key fingerprint: 0xFEE7F2A0
Referencias y mas informaci´n en:
o
Elliptic curves in cryptography - Ian Blake, Gadiel Seroussi,
Nigel Smart
Elliptic and hyperelliptic curve cryptography - Henri Cohen,
Grehard Frey, Tanja Lange
Software and hardware implementation of hyperelliptic curve
cryptosystems - Thomas Wollinger
Generalized Jacobians in cryptography - Isabelle D´chen`
e e
A Course in number theory and cryptography - Neal Koblitz
Elementary algebraic geometry - Klaus Hulek
Algebraic Aspects of cryptography - Neal Koblitz, Alfred
Menezes (Appendix, Hyperelliptic curves)
Eduardo Ruiz Duarte, Facultad de Ciencias UNAM ´
Algebra conmutativa aplicada a la seguridad