CRIPTOGRAFIA I/II

Anuncio
CRIPTO – UT0 – N° 04
BASES :
GRUPOS CICLICOS Z*n y
GRUPOS MULTIPLICATIVOS Z*n
(con nRSA=p.q)
CRIPTOGRAFIA I/II
Prof. Titular Dr. Juan Pedro Hecht
IESE/EST-Posgrado Criptografía y Seguridad Teleinformática
cripto-hecht
DEFINICIONES - 1
•
GRUPO MULTIPLICATIVO Z*n
Z*n={ a ∈ Zn | (a,n)=1} y posee estructura de
grupo respecto al producto.
En particular si n primo, Z*n={ a | 1 ≤ a ≤ n-1}
•
ORDEN DEL GRUPO MULTIPLICATIVO Z*n
Es el número de elementos de Z*n representado
como | Z*n| o cardinal de Z*n. Por definición | Z*n|
= φ(n), o sea para n primo, | Z*p| =p-1
•
ORDEN
DE
INTEGRANTES
DEL
GRUPO
MULTIPLICATIVO Z*n
Sea a ∈ Z*n. Se define ordn(a) al mínimo entero
positivo t tal que at ≡ 1 (mod n) . Siempre t | φ(n)
Ej: en Z*21 el ord21(13)=2 porque 132 ≡ 1(21)
1
cripto-hecht
DEFINICIONES - 2
•
GENERADORES Y GRUPOS CICLICOS
Sea g ∈ Z*n. Entonces, si ord(g)= φ(n) , se define a g como
generador (o elemento primitivo) y Z*n es un grupo cíclico
•
PROPIEDADES DE LOS GENERADORES DE Z*n
1.
2.
3.
Z*n tiene generador si n=2,4,pk,2pk donde p primo impar
y k ≥ 1.
Si g es generador ⇒ Z*n ={gi mod n | 0 ≤ i ≤ φ(n) –1}
Si g es generador ⇒ b= gi mod n también lo es sii (i,
φ(n) )=1. Se desprende que si Z*n es cíclico, el número
de generadores es φ(φ(n))
Único algoritmo eficiente conocido para encontrar generadores:
4.
g ∈ Z*n es generador sii para cada primo p | φ(n)
se cumple gφ(n)/p≠ 1 (mod n)
cripto-hecht
DEFINICIONES - 3
•
OTRAS PROPIEDADES DE LOS GRUPOS CICLICOS
1. Todo subgrupo H de un grupo cíclico G es cíclico.
2. Si un grupo cíclico es de orden primo, todos los
elementos distintos de la unidad son generadores
3. Si d es divisor del orden de G, entonces existe
exactamente un subgrupo H de orden d
4. Si d es divisor del orden de G, entonces G contiene
phi(d) elementos de orden d
5. Los divisores de phi(n) generan una partición de
clases de equivalencia de los elementos de G
ϕ ( n) =
∑ ϕ (d )
d |ϕ ( n )
2
cripto-hecht
TEOREMA DE LAGRANGE
Sea H subgrupo de G. Entonces
el orden de H es un divisor del
orden de G.
Ejemplo:
Sea Z*7={1,2,3,4,5,6} un grupo multiplicativo
(cíclico) de orden 6. Es el conjunto de los
residuos enteros módulo 7 (coprimos con 7)
Entonces:
H7={1,2,4} es un subgrupo multiplicativo
(cíclico) cuyo orden 3 divide a 6, el orden de
Z*7.
cripto-hecht
1=30=36
3=31
5=35
Z
*
7
4=34
2=32
6=33
grupo multiplicativo cícico: hay phi(phi(7))=2 generadores
3 es generador, cuál es el otro?
3
cripto-hecht
PARTICION EN CLASES DE EQUIVALENCIA EN
EL GRUPO MULTIPLICATIVO CICLICO Z*7
Z*7={1,2,3,4,5,6}
ϕ (7) = 7 − 1 = 6
Los divisores de 6 son 1, 2, 3, 6:
• Para 1|6, existe un subgrupo cíclico de orden 1:
{1}
hay phi(1)= 1 generador de orden 1 (es el 1)
• Para 2|6, existe un subgrupo cíclico de orden 2:
{1,6} hay phi(2)= 1 generador de orden 1 (es el 6)
• Para 3|6, existe un subgrupo cíclico de orden 3:
{1,2,4} hay phi(3)=2 generadores orden 3 (son el 2 y 4)
Observar que el orden primo determina que todos los
elementos no unitarios sean generadores.
• Para 6|6, existe un subgrupo cíclico de orden 6:
{1,2,3,4,5,6} hay phi(6)=2 generadores de orden 6
(son el 3 y 5)
comprobar que ϕ (7) = ∑ ϕ (d )
d |ϕ (7)
cripto-hecht
•
•
•
•
•
•
GRUPO MULTIPLICATIVO Z*n DE ORDEN
n=p*q (RSA)
Z n* posee un orden ϕ (n) = ( p − 1)(q − 1)
Z*n no es cíclico
Cada elemento de Z*n posee un orden que es divisor
*
λ (n)
de λ (n) = mcm( p − 1, q − 1) ∴ ∀a ∈ Z n ⇒ a ≡ 1(n)
El orden de a en Z*p y Z*q es también divisor de
λ (n) = mcm( p − 1, q − 1) ∴ ∀a ∈ Z n* ⇒ a λ ( n ) ≡ 1( p ) ∩ a λ ( n ) ≡ 1(q )
Como p-1 y q-1 son ambos pares
λ (n) = mcm( p − 1, q − 1) ≤
ϕ ( n)
2
Para cada par (e,d) coprimos con λ (n) de exponentes
RSA, existen e ⇒ [e + k λ (n)] mod λ (n) donde k ∈ Z
exponentes secundarios que los reemplazan
Para cada pare (e,d) existen #PF puntos fijos en Zn
PF ⇔ {m∈ Z n | m ≡ m (mod n)}
# PF = [1 + MCD(e − 1, p − 1) ][1 + MCD (e − 1, q − 1) ]
9 ≤ # PF ≤ p.q = n (e : impar y MCD ≥ 2, # PF = n sii e = ϕ + 1)
4
cripto-hecht
GRUPO MULTIPLICATIVO Z*n (RSA)
n = pq y ∀a ∈ Zn* ⇒
ordn (a) = mcm[ord p (a), ordq (a)]
Para cada elemento de a de Z*n , a pertenece a los
grupos cíclicos Z*p y Z*q cuyos ordenes máximos
son p-1 y q-1 respectivamente. En general los
ordenes de a suelen ser bastante menores y
divisores de esos valores, por lo cual pueden ser
ϕ (n)
divisores de λ (n) = mcm( p − 1, q − 1) ≤
2
Si a no es comprimo con n (o sea a=k.p, a=k.q,
k=entero) los ordenes son valores aún menores.
cripto-hecht
GRUPO MULTIPLICATIVO Z*35 (RSA)
n = pq = 5.7 = 35
ϕ (35) = ( p − 1)(q − 1) = 4.6 = 24
Z 5*
Z 7*
ord35 (a ) | λ (35) = mcm(5 − 1, 7 − 1) = 12
congruencia ⇒ 3revol.4 posic = 2revol.6 posic = 12
5
cripto-hecht
CONCLUSION
6
Descargar