Sunteți pe pagina 1din 7

Conceptos bsicos de la teora de la informacin y de la teora de la complejidad

Teora de la informacin 1. Tipos de seguridad. 2. Teora de la probabilidad y criptografa 3. Concepto de entropa. Propiedades. 4. Claves falsas y distancia de unicidad. Teora de la complejidad 1. Algoritmos deterministas y no deterministas. 2. Reducciones entre problemas. Completitud. 3. Algunas clases de complejidad. 4. Algunos problemas !"-completos. 5. Sistemas Interactivos de Demostracin. 6. Aplicacin a la criptografa.

Conceptos bsicos de la teora de la informacin y de la teora de la complejidad


Jos M. Sempere Departamento de Sistemas Informticos y Computacin Universidad Politcnica de Valencia

Tipos de seguridad

Teora de la probabilidad
Variables independientes

Seguridad computacional Seguridad incondicional

Teora de la complejidad Teora de la informacin

p(x,y) = p(x)p(y)
Probabilidad condicional y conjunta

Tipos de ataques Slo texto cifrado (ciphertext-only) Texto conocido (known plaintext) Texto elegido (chosen plaintext) Texto cifrado elegido (chosen ciphertext)

p(x,y) = p(x|y)p(y) p(x,y) = p(y|x)p(x)


Teorema de Bayes (regla de Bayes)

p(y|x)p(x) p(x|y) = p(y)

Probabilidad y criptografa
Posibles textos sin cifrar :

Privacidad perfecta (secreto perfecto)


Un criptosistema tiene privacidad perfecta (secreto perfecto) si ( x !) ( y #) P!(x|y)= P!(x).
p k

p!(x)

Posibles claves : " p#(k)

Posibles textos cifrados con una clave k" : C(k) = { ek(x) : x ! } Probabilidad de aparicin de un texto cifrado y # : PC ( y) =
k {k: yC ( k )}

p (k) p (d ( y))

Probabilidad de aparicin del texto cifrado y dado el texto sin cifrar x :

Ejemplo Un criptosistema con privacidad perfecta. ! = {a,b} P!(a) = 0.25 P!(b) = 0.75 " = { k1, k2, k3 } P"(k1) = 0.5 P"(k2) = P"(k3) = 0.25 # = { 1,2,3,4 } Funciones de encriptamiento ek
a b 2 3 4 Comprobacin de que el texto cifrado 3 tiene secreto perfecto : 1. Calcular p#(i|j) donde i #, j ! 2. Calcular p#(i) donde i # 3. Calcular p!(j|i) donde i #, j ! 4. Comprobar si se cumple el caso ( x !) ( y #) P!(x|y)= P!(x).

pc ( y | x ) =

k { k :x = d k ( y )}

p (k )
pp ( x)
x {k :x = d k ( y )} p

Probabilidad de que un texto sin cifrar sea x dado que el texto cifrado sea y :

p p ( x| y ) =

p p ( x ) pc ( y | x ) pc ( y )

p (k )
( d k ( y ))

k1 k2 k3

1 2 3

k {k : y C ( k )}

p (k ) p

El sistema de Vernam (Vernam One-time Pad)


Sea n 1 y !$= # = " = (%2)n. Tomamos k (%2)n y se define la funcin de cifrado ek(x) = (x1 + k1 , ... , xn + kn) mod 2 La funcin de descifrado se define como dk(y) = (y1 + k1 , ... , yn + kn) mod 2
El sistema de Vernam proporciona privacidad perfecta. La cantidad de claves utilizadas debe ser igual a la de textos a transmitir (es altamente vulnerable a un ataque de texto conocido ya que la clave se calcula como la OR-exclusiva entre y y x).

Entropa H ( X ) = p ( X = xi ) log 2 p ( X = xi )
i =1 n

H ( X | y ) = p ( x | y ) log 2 p ( x | y )
x

H ( X | Y ) = p ( y ) p ( x | y ) log 2 p ( x | y )
y x

Teorema. H(X,Y) H(X) + H(Y) H(X,Y) = H(X) + H(Y) sii X e Y son independientes Teorema. H(X,Y) = H(Y) + H(X |Y) = H(X) + H(Y | X) Corolario. H(X | Y) H(X) H(X | Y) = H(X) sii X e Y son independientes

Claves falsas y distancia de unicidad (I)


Equivocacin de clave

Claves falsas y distancia de unicidad (II)

H ( K | C ) = p( k , c ) log 2 p( k | c )
c C k K

Nmero de claves falsas en promedio

sn =

y C n

p( y ) | K ( y )| - 1
| K| 1 | P|nRL

Entropa de un lenguaje L

H(Pn ) H L = lim n n
RL = 1 HL log 2 | P|

Teorema

Si |#$| = |!$| y

pK ( k ) =

1 | K|

entonces sn

Redundancia de un lenguaje L

Distancia de unicidad n0

Claves consistentes con un texto cifrado y

n0

log 2 | K | RL log 2 | P|

K ( y ) = {k K | x P n , p P n ( x ) > 0, ek ( x ) = y}

Algoritmos no deterministas Sea P un problema con un conjunto de restricciones R


C

Un ejemplo: El Problema del Viajante de Comercio


8 6 6 17 F 11 14 D A 12 B

distancia mxima : B

Sea S una estructura de soluciones para el problema P Un algoritmo A no determinista que resuelva P se basa en dos fases: (1) Fase de conjetura Conjetura(P,S) (2) Fase de verificacin Verifica(S,R) Medida de la complejidad

10 E

25

Estructura de soluciones S : lista de vrtices

(1) Fase de conjetura : Conjetura(P,S) Genera aleatoriamente una permutacin de {A,B,C,D,E,F} y la almacena en S = { v1, v2, v3, v4 ,v5 ,v6 } (2) Fase de verificacin : Verifica(S,RP)
|S |1

Comprobar si

peso(v , v
i =1 i

i +1

) + peso(v|S | , v1) B

Reducciones entre problemas. Completitud. Dados dos problemas A y B, diremos que A se reduce a B (A P B) si existe una funcin f tal que 1. f es calculable en tiempo polinmico 2. La instancia x tiene solucin en A f(x) tiene solucin en B Dado un conjunto de problemas C, diremos que un problema A es ... C-duro si todos los problemas de C se reducen a A C-completo si A C y A es C-duro coC si su problema complementario pertenece a C

Un ejemplo de reduccin : CH P VC
A C B E

Un Circuito Hamiltoniano consiste en un circuito que recorre todos los vrtices una nica vez

1 C 1 E 1 2 1

A 1 2 2 2 1 D B

Viajante de Comercio La distancia mxima se establece como |V|

Algunas clases de complejidad

Algunos problemas NP-completos NPEl problema del Viajante de Comercio

EXPTIME PSPACE coNPcoNP-completo NPNP-completo

8 C 10 E 25 6 17 6

A 12 F 11 14 D B

B distancia mxima

coNP

NP

P : Problemas que admiten algoritmos deterministas polinmicos NP : Problemas que admiten algoritmos no deterministas polinmicos PSPACE : Problemas que necesitan espacio polinmico EXPTIME : Problemas que necesitan tiempo exponencial

Dados un conjunto de ciudades y las posibles distancias entre ellas. Dada una distancia mxima B. Es posible establecer un tour que recorra todas las ciudades una sola vez y que no exceda en su distancia a B ?

Algunos problemas NP-completos NPEl problema de la isomorfa de subgrafos G1


C F E D B 1 5 2 4

Algunos problemas NP-completos NPEl problema de la SATisfacibilidad U = { u1, u2, ..., un } (variables)
3

G2
A 6

(cada variable uj origina dos literales: uj y uj) C = {c1, c2, ... , cm } (clusulas) (cada clusula es una disyuncin de literales) Ejemplo: C = { {u1 , u2 , u3} , {u2 , u3} , {u4} , {u1 , u3 , u4} }

Dados dos grafos G1 y G2. Existe un subgrafo de G1 isomorfo a G2 ?

Dados los conjuntos U y C. Existe una asignacin a las variables de U que haga ciertas todas las clusulas de C simultneamente ?

Algunos problemas NP-completos NPEl problema de las incongruencias simultneas C = { (a1,b1), (a2,b2), ... , (an,bn) } ai , bi son enteros positivos ai bi para cualquier valor de i

Algunos problemas NP-completos NPEl problema de las congruencias cuadrticas a , b y c son enteros positivos

Dados a, b y c. Existe un valor entero positivo x < c tal que x2 a (mod b) ?


El problema se puede resolver en P si el entero b es primo (asumiendo algunas condiciones de partida)

Dado el conjunto C. Existe un valor entero x tal que x ai (mod bi) para 1 i n ?

Sistemas Interactivos mensajes P-a-V


Demostrador (prover) Verificador (verifier)

Un ejemplo de demostracin interactiva: No isomorfa de grafos (I)

x
entrada mensajes V-a-P

Generador aleatorio

Grafos isomorfos:< A,1> <B,3> <C,4> <D,2> A B 1 3

La computacin se establece por turnos (rounds) que comienza V La aceptacin o rechazo de la entrada la establece V El nmero de mensajes y la longitud de los mismos estn acotados polinmicamente en relacin con la longitud de la entrada

Grafos no isomorfos Un ejemplo de demostracin interactiva : NoIsoGraf Instancia: G1=(V1,E1) y G2=(V2,E2) V : m = random{1,2} Gn = random(Gm) V-a-P : <Gn> P : Comprueba qu grafo es isomorfo a Gn y asigna su ndice a p. Si ambos grafos son isomorfos a Gn entonces selecciona p = random{1,2} P-a-V : <p> V : Si p m entonces rechaza la instancia. Si p = m acepta. Si G1 y G2 son isomorfos entonces P no tiene opcin de establecer con qu grafo se corresponde Gn y la probabilidad de equivocarse es de 0.5 Repitiendo dos veces el experimento la probabilidad pasa a ser 0.25

Un ejemplo de demostracin interactiva: No Isomorfa de grafos (II)

Pregunta Dados dos grafos G1 y G2 Son no isomorfos ? : El problema de la no isomorfa de grafos pertenece a coNP. NP) coNP (su problema complementario pertenece a NP Hasta el momento no existe ninguna evidencia de su posible pertenencia a NP NP. Existen subconjuntos del problema que pertenecen a P (i.e. grafos planares)

Sistemas Interactivos con conocimiento cero (nulo) mensajes P-a-V


Demostrador (prover) Verificador (verifier)

Aplicaciones de la Teora de la Complejidad a las tcnicas criptogrficas


Todos los problemas NP-completos presentan instancias fciles NPde resolver. Toda instancia fcil de resolver puede enmascararse como una instancia difcil. El problema de desenmascarar la instancia se resuelve a partir de una informacin secreta (clave)

x
entrada mensajes V-a-P

Generador aleatorio

Aplicacin a los sistemas asimtricos o de clave pblica


Los Sistemas Interactivos con conocimiento cero definen protocolos criptogrficos tiles para la autentificacin y la firma digital

Un Sistema Interactivo decimos que presenta conocimiento cero si la informacin que enva P a V puede ser simulada aleatoriamente (P no desvela ninguna informacin acerca de la entrada)

S-ar putea să vă placă și