Download - Reticulos t.n
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Retículos, Algoritmos de Reducción de Base ysu Aplicación a la Teoría de Números
Computacional
Ismael Jiménez Calvo
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Definición.Reducción de Gauss.Problema del vector más corto de un retículo
Retículos
b
b
1
2
B =
(
b1
b2
)
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Definición.Reducción de Gauss.Problema del vector más corto de un retículo
Retículos
b
b
1
2
B =
(
b1
b2
)
L(B) = {xb1 + yb2 : x , y ∈ Z}
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Definición.Reducción de Gauss.Problema del vector más corto de un retículo
Retículos
b
b
b
b
1
2
1
2
’
’
B =
(
b1
b2
)
L(B) = {xb1 + yb2 : x , y ∈ Z}
(
b′1
b′2
)
=
(
3 12 1
) (
b1
b2
)
.
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Definición.Reducción de Gauss.Problema del vector más corto de un retículo
Retículos
b
b
b
b
1
2
1
2
’
’
B =
(
b1
b2
)
L(B) = {xb1 + yb2 : x , y ∈ Z}
(
b′1
b′2
)
=
(
3 12 1
) (
b1
b2
)
.
(
b1
b2
)
=
(
1 −1−2 3
)(
b′1
b′2
)
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Definición.Reducción de Gauss.Problema del vector más corto de un retículo
Retículos
b
b
b
b
1
2
1
2
’
’
B =
(
b1
b2
)
L(B) = {xb1 + yb2 : x , y ∈ Z}
(
b′1
b′2
)
=
(
3 12 1
) (
b1
b2
)
.
|L(B)| = |B|
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Definición.Reducción de Gauss.Problema del vector más corto de un retículo
Reducción de Gauss
b
b
2
1
O
H
En cada paso:{
b′1 = b1,
b′2 = b2 − tb1,
t =
⌊
OH|b1|
⌉
=
⌊
< b2, b1 >
|b1|2⌉
.
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Definición.Reducción de Gauss.Problema del vector más corto de un retículo
Reducción de Gauss
b
b
2
1
En cada paso:{
b′1 = b1,
b′2 = b2 − tb1,
t =
⌊
OH|b1|
⌉
=
⌊
< b2, b1 >
|b1|2⌉
.
(
b′1
b′2
)
=
(
1 0−t 1
)(
b1
b2
)
.
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Definición.Reducción de Gauss.Problema del vector más corto de un retículo
Reducción de Gauss
b
b
1
2
En cada paso:{
b′1 = b1,
b′2 = b2 − tb1,
t =
⌊
OH|b1|
⌉
=
⌊
< b2, b1 >
|b1|2⌉
.
(
b′1
b′2
)
=
(
1 0−t 1
)(
b1
b2
)
.
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Definición.Reducción de Gauss.Problema del vector más corto de un retículo
Reducción de Gauss
b
b
1
2
En cada paso:{
b′1 = b1,
b′2 = b2 − tb1,
t =
⌊
OH|b1|
⌉
=
⌊
< b2, b1 >
|b1|2⌉
.
Terminamos si:
|b2| ≥ (1 + ε)|b1|.
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Definición.Reducción de Gauss.Problema del vector más corto de un retículo
Complejidad de la Reducción de un Retículo
El Algoritmo de Reducción de Gauss encuentra la basemás pequeña de un Retículo en Tiempo Polinómico.
Para más de dos dimensiones el problema tienecomplejidad exponencial.
Van Em de Boas (1980) demostró que el problema esNP-Completo.
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Definición.Reducción de Gauss.Problema del vector más corto de un retículo
Vector más corto, λ(L)
Minkowski demostró que el vector más corto de un retículoes
λ(L) ≤√
n |L|1/n.
En 1982 Lenstra, Lenstra & Lovász publican un algoritmoque, en tiempo polinómico, es capaz de encontrar unvector
|b1| ≤ 2(n−1)/2 λ(L).
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Definición.Reducción de Gauss.Problema del vector más corto de un retículo
Vector más corto, λ(L)
Minkowski demostró que el vector más corto de un retículoes
λ(L) ≤√
n |L|1/n.
En 1982 Lenstra, Lenstra & Lovász publican un algoritmoque, en tiempo polinómico, es capaz de encontrar unvector
|b1| ≤ 2(n−1)/2 λ(L).
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.Proceso de ortogonalización de Gram-Schmidt
Proceso de ortogonalización de Gram-Schmidt
B = b1, b2, · · · , bn.
b∗1 = b1,
b∗2 = b2 −
< b2, b∗1 >
|b∗1|2
b∗1,
...
b∗i = bi −
i−1∑
j=1
µijb∗j , µij =
< bi , b∗j >
|b∗j |2
,
...
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.Proceso de ortogonalización de Gram-Schmidt
Algoritmo de Reducción LLL (Lenstra, Lenstra &Lovász.)
Para i = 2, · · · n,
bi ← bi −∑i−1
j=1
⌊
µij⌉
bj , µij =<bi ,b∗
j >
|b∗
j |2 ,
Si|b∗
i−1|2 ≤ (1 + ε)|b∗i + µi ,i−1bi−1|2
(Proyecciones en∑i−2
j=1 R bj de bi−1 y bi ),se intercambian bi−1 y bi y se repite el paso anterior.
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.Proceso de ortogonalización de Gram-Schmidt
Algoritmo de Reducción LLL (Lenstra, Lenstra &Lovász.)
El algoritmo LLL se ejecuta en tiempo O(n3 log X ).
|b1| ≤ 2(n−1)/4|L|1/n.
|b1| ≤ 2(n−1)/2λ(L).
|b1| · · · · · |bn| ≤ 2(n2)/2|L|.
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Relaciones Lineales Enteras.Ataques a casos relajados del RSA.
Relaciones lineales enteras entre irracionales
Objetivo: Encontrar una combinación lineal entera∑n
i=1 ciαi
pequeña, donde αi es un conjunto de números irracionales.Aplicamos el algoritmo LLL sobre la base:
1 0 0 · · · 0 Nα1
0 1 0 · · · 0 Nα2
0 0 1 · · · 0 Nα3...
......
. . ....
...0 0 0 · · · 1 Nαn
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Relaciones Lineales Enteras.Ataques a casos relajados del RSA.
Relaciones lineales enteras entre irracionales
Objetivo: Encontrar una combinación lineal entera∑n
i=1 ciαi
pequeña, donde αi es un conjunto de números irracionales.
c1
c2
c3...
cn
1 0 0 · · · 0 Nα1
0 1 0 · · · 0 Nα2
0 0 1 · · · 0 Nα3...
......
. . ....
...0 0 0 · · · 1 Nαn
.
b1 = (c1, c2, c3, · · · , cn, Nn
∑
i=1
ciαi).
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Relaciones Lineales Enteras.Ataques a casos relajados del RSA.
Aplicaciones de las relacioiones lineales enteras
Relaciones entre constantes transcendentes. Borwein,Plouffe & Bailey (1996), descubren una formula que escapaz de dar el enésimo dígito exadecimal de π.
Una relación entera lineal nula de (α0, α1, α2, · · · , αn)identifica como algebraico a α y calcula el polinomio delcual es raiz.
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Relaciones Lineales Enteras.Ataques a casos relajados del RSA.
Raices pequeñas de polinomios modulares. DonCoopesmith (1996).
Problema:
Dado f (x) mod N, con N de factorización desconocida,encontrar una raiz pequeña x0 < X.
Tiene aplicación para ataques directos al RSA (sin pasar por lafactorización del módulo N), cuando se conocen los bits altosdel mensaje en claro m = M + x .
Cifrado RSA: (M + x)e ≡ C mod N, N = pq.
f (x) = (M + x)e − C, f (x0) ≡ 0 mod N.
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Relaciones Lineales Enteras.Ataques a casos relajados del RSA.
Solución de Coopersmith y Howgrave-graham
Observamos que si f (x0) = 0 mod N, x i f (x) = 0 mod N tienela misma raiz. Igualmente consideramos los polinomios
fi ,j(x) = Nd−jx i f (x)j mod Nd .
Cualquier combinación lineal de ellos, F (x), tendrán como raizx0 mod Nd .Se consideran los polinomios como vectores, cuyas entradasson los monomios dotados de peso X i .Una vez hecha la reducción LLL obtenemos un vector de bajanorma. Dividiendo cada término por X i recuperamos unpolinomio F (x), también de baja norma, que tiene como raizx0. Si F (X ) < Nd , el polinomio se puede resolver sobre losenteros, lo que nos proporciona x0.
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Relaciones Lineales Enteras.Ataques a casos relajados del RSA.
Ejemplo simplificado
Buscamos una raiz x0 < X del polinomiof (x) = x3 + ax2 + bx + c mod N;
fi(x) = x i f (x) mod N, i = 0, 1, 2, 3.
Aplicamos el algoritmo LLL sobre la base
X 6 X 5 X 4 X 3 X 2 X 1
1 a b c 0 0 00 1 a b c 0 00 0 1 a b c 00 0 0 1 a b c0 0 0 0 N 0 00 0 0 0 0 N 00 0 0 0 0 0 N
,
|L| = N3X 21,
|b1| ≤ k |L|1/7 < N,
x0 < X ≤ N4/21.
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números
Retículos.El Algoritmo de Reducción LLL (Lenstra, Lenstra & Lovász. (1982))
Aplicaciones en Teoría de Números y Criptografía.
Relaciones Lineales Enteras.Ataques a casos relajados del RSA.
Resultados del ataque por LLL al RSA relajado
Ataque de Coopersmith sobre RSA con bajo exponentepúblico y bits altos del mensaje conocidos:
El algoritmo es capaz de recuperar en tiempo polinómico1/e LSB del mensaje, conociendo el resto de los bits.
OAEP evita, entre otros, este tipo de ataque.
Ataque al caso de RSA con exponente privado d bajo(Wiener):
El atacante puede recuperar el exponente privado sid < N0,292.
Ismael Jiménez Calvo Algoritmos de Reducción de Base en Teoría de Números