Seguridad inform tica
Download
1 / 28

Seguridad informática - PowerPoint PPT Presentation


  • 176 Views
  • Uploaded on

Seguridad informática. Matemática I. Alejandro Silvestri 2008. Presentación basada en el libro de W. Stallings, Cryptography and Network Security, 4º ed. Grupos y campos. Grupo.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Seguridad informática' - nathan


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Seguridad inform tica

Seguridad informática

Matemática I

Alejandro Silvestri

2008

Presentación basada en el libro de W. Stallings, Cryptography and Network Security, 4º ed.



Grupo
Grupo

  • Es un conjunto discreto y finito de valores, sobre los que se define la adición con las siguientes características

    • Cerramiento

      • El resultado de una adición se encuentra dentro del grupo

    • Asociatividad

    • Elemento de identidad

      • 0+a = a+0 = a

    • Inversa

      • a+a’ = a’+a = 0

  • Grupo Abeliano

    • Conmutatividad de la adición


Anillos
Anillos

  • Es un grupo abeliano en el que se define el producto, con las siguientes características

    • Cerramiento

    • Asociatividad

    • Leyes distributivas con la adición

  • Anillo conmutativo

    • Conmutatividad del producto


Campos
Campos

  • Dominio integral es un anillo conmutativo con:

    • Elemento de identidad del producto

      • 1.a = a.1 = a

    • Divisores no cero

      • a.b = 0 => a=0 v b=0

  • Campo

    • Inversa del producto

      • Para todos los elementos excepto el cero

      • b=a-1 => a.b = 1




Artim tica m dulo n
Artimética módulo n

  • La aritmética modular es una forma particular de campo o de dominio integral

    • sobre n enteros entre 0 y n-1

  • La operación amod b calcula el resto de a/b

  • Operaciones módulo n se indican con un (mod n) a la derecha


Adici n y producto
Adición y producto

  • La adición se define a partir de la suma aritmética

    • c=a+b (mod n) : c=(a+b) mod n

  • El producto se define a partir de la multiplicación aritmética

    • c=a.b (mod n) : c=(a.b) mod n

    • a3 mod n = {[(a.a) mod n] . a} mod n

  • Resta

    • c=a–b (mod n) : c=(a-b) mod n


Divisi n
División

  • c=a/b (mod n) ≠>c=(a/b) mod n

    • c = a.d (mod n)

    • d = b-1 (mod n)

  • En álgebra modular no todos los elementos de un dominio tienen inversa

    • Los valores sin inversas son los que tienen denominadores comunes con n

    • Si todos los elementos tienen inversa, se trata de un campo

      • Esto ocurre con n primo

  • La inversa no se determina a través de un cálculo directo, pero sí iterando con el algoritmo de Euclides extendido



Logaritmo discreto
Logaritmo discreto

  • dloga,n(x)=k => ak=x (mod n)

  • Sólo existe si a es una raíz primitiva de n

  • No todos los enteros n tienen raíces primitivas

    • Los únicos son

      • 2

      • 4

      • pb

      • 2.pb

      • p es primo >2 y b es entero positivo

  • No es posible calcular en forma directa el logaritmo discreto

    • Se deben recorrer los valores buscando el resultado





Algoritmo de euclides
Algoritmo de Euclides

  • Para encontrar el máximo divisor común (gcd) de dos valores

  • Es un algoritmo recursivo de recursividad finita, basado en la siguiente propiedad

    • gcd(a,b) = gcd(b, a mod b)

    • para a>b

  • De esta manera se reducen sucesivamente las magnitudes de a y b

  • Cuando la iteración devuelve cero, el valor obtenido en la iteración anterior es el gcd.


C digo del algoritmo de euclides
Código del algoritmo de Euclides

EUCLID(a, b)

  • A = a; B = b

  • if B = 0 return A = gcd(a, b)

  • R = A mod B

  • A = B

  • B = R

  • goto 2


Algoritmo de euclides extendido
Algoritmo de Euclides extendido

  • Una versión extendida del algoritmo de Euclides permite determinar la inversa módulo n de un número, a través de una serie de aproximaciones sucesivas


C digo de euclides extendido
Código de Euclides extendido

EXTENDED EUCLID[m(x), b(x)]

  • [A1(x), A2(x), A3(x)] = [1, 0, m(x)];

  • [B1(x), B2(x), B3(x)] = [0, 1, b(x)];

  • if B3(x) = 0 return A3(x) = gcd[m(x), b(x)]; no

  • inverse

  • if B3(x) = 1 return B3(x) = gcd[m(x), b(x)];

  • B2(x) = b(x)1 mod m(x)

  • Q(x) = quotient of A3(x)/B3(x)

  • [T1(x), T2(x), T3(x)] = [A1(x) Q(x)B1(x), A2(x)Q(x)B2(x), A3(x) QB3(x)]

  • [A1(x), A2(x), A3(x)] = [B1(x), B2(x), B3(x)]

  • [B1(x), B2(x), B3(x)] = [T1(x), T2(x), T3(x)]

  • goto 3


Fast modular exponentiation algorithm
Fast Modular Exponentiation Algorithm

  • Calcula ab mod n

Resultado delFast ModularExponentiationAlgorithm para ab mod n

donde a = 7, b = 560 = 1000110000, n = 561


Totiente de euler
Totiente de Euler

  • Φ(n)

    • Es la cantidad de valores entre 1 y n-1 relativamente primos con n (es decir gcd(n, k)=1

      • El valor k=1 se considera relativamente primo

    • Se define Φ(1) = 1

  • Propiedad

    • Sean p y q primos, p≠q

    • Φ(p) = p-1

    • Φ(p.q) = (p-1)(q-1)


Teorema de euler
Teorema de Euler

  • Para a y n relativamente primos, y a<n

    • aΦ(n) = 1 (mod n)

    • Si p es primo:

      • a(p-1) = 1 (mod p)

  • Pequeño teorema de Fermat

    • an = a (mod n)

    • Si p es primo:

      • a(p-1) = 1 (mod p)


Teorema chino del resto crt
Teorema chino del resto (CRT)

  • Sean

    • n y k enteros positivos

    • N el vector de divisores primos de n

    • K el vector de restos de k mod N

  • Se verifica que K y k mantienen una relación biyectiva

    • K contiene la información necesaria para reconstruir k


RSA

  • Med mod n = M

    • n = p.q p, q primos

    • e.d = Φ(n) = (p-1)(q-1)

      • => e.d mod Φ(n) = 1

  • => Mk.Φ(n)+1 mod n = M

    • => Mk.(p-1)(q-1)+1 mod n = M

  • Esto requiere que se cumplan

    • Mk.(p-1)(q-1)+1 mod p = M

    • Mk.(p-1)(q-1)+1 mod q = M

      • Por el teorema del resto chino:

      • X mod p ^ X moq q => X mod (p.q)


RSA

  • Mk.(p-1)(q-1)+1 mod p =

    = M.MΦ(p).k(q-1) mod p =

    = M mod p [MΦ(p) mod p]k(q-1)

    • Teorema de Euler MΦ(p) mod p = 1

      = M mod p [1]k(q-1)

      = M mod p



Test de primalidad
Test de primalidad

  • Test iterativo probabilístico

    • Miller Rabin (1975)

    • Determina la primalidad relativa de un dato n a las potencias de un dato a

    • Probabilidad de primalidad: 75%

      • Si el algoritmo señala que el dato no es primo, es conclusivo

      • Si señala que el dato puede ser primo, tiene un 75% de probabilidad de acertar

  • Test determinístico

    • Agrawal, Kayal y Saxena (2002)


Distribuci n de primos
Distribución de primos

  • La densidad de números primos entre los números enteros disminuye a medida que aumentan los enteros

  • Para un entero n, la separación promedio de números primos es

    ln(n)


ad