martes, 2 de abril de 2013

TALLER 5: CRIPTOGRAFÍA


CIFRADOS

CIFRADOS POR SUSTITUCIÓN

¿Qué es un cifrado por sustitución?

Es aquel cifrado que sustituye cada letra o grupo de letras por otra letra o grupo de letras distinta/s para cifrar el texto en claro.

Los primeros y antiguos métodos de cifrado se basaban en este principio, aunque en aquella época no eran muy robustos ni difíciles de descifrar, pero les resultaban muy útiles.

Cifrado César

Quizá el cifrado más conocido, fue inventado por Julio César en el antiguo imperio Romano. Sigue el siguiente principio:

Cada letra del texto en claro se sustituye por la letra que hay a “k” posiciones detrás de ella en el alfabeto. Matemáticamente hablando:

Definimos las siguientes operaciones:

  • Ordinal de una letra: Es la posición que ocupa la letra en el alfabeto que usamos. Se denota como: ORD (Letra) [ORD (A) = 0]
  • Carácter de un número: Es la letra que ocupa la posición del número que tenemos. Se denota como: CAR (x) [donde “x” tiene que ser mayor o igual a cero, y menor o igual al número de letras del alfabeto usado]

Vamos a pasar a lo interesante la fórmula del cifrado y descifrado:

  • Cifrado: C(x) = x + k (mod T)
  • Descifrado: D(x) = x – k (mod T)

(Siendo “x” el ORD (Letra a cifrar), “k” es el número de posiciones a desplazar y “T” es el total de letras en el alfabeto a usar)

Se puede observar que la clave de este cifrado es el número de posiciones a desplazar las letras (k).

Como veis no hemos hecho nada más que empezar y ya aparece la operación módulo, aunque Julio César no tuviera ni idea de qué era el módulo.



Cifrado Polybios

Este cifrado fue realizado en la antigua Grecia y usaba el alfabeto Griego en su versión original, aunque se ha adaptado a los demás alfabetos. Se basa en colocar las letras del alfabeto en una matriz, normalmente de 5×5, y en las cabeceras de las columnas y filas se le asigna unos números o letras siguiendo un patrón preestablecido por el usuario del cifrado.

Así usando el alfabeto tradicional, sin contar la Ñ, tendríamos la siguiente matriz:

1
2
3
4
5
1
A
B
C
D
E
2
F
G
H
I
K
3
L
M
N
O
P
4
Q
R
S
T
U
5
V
W
X
Y
Z

(Aclaración: La J se junta con la I por convenio)

Y a partir de esta matriz se cifra el mensaje, cogiendo letra a letra y sustituyendola por los números de su fila y columna. Por ejemplo:

HOLA => 23343111

Para descifrar, se cogerían de dos en dos números y se buscaría el cruce de dichos números en la matriz.

Es obvio, que la clave de este cifrado es la matriz, y más concretamente el orden del contenido de ésta y los valores que usemos en los encabezados de las filas y columnas.



Cifrado de Vigènere

Se escoge una clave que usaremos para que al cifrar el mensaje cada letra tenga un diferente cifrado, así evitamos la repetición de carácteres en el criptograma.

Así, se usa una clave que en realidad es un trozo de texto, puede ser cualquier palabra o conjuntos de letras desordenado, por ejemplo GATO, siempre es mejor coger una clave más corta que el mensaje a cifrar.

Y se realiza el siguiente método:

Mensaje: AUTOESCUELA              Clave: GATO

Se van asignando los caracteres uno a uno del mensaje a la clave formando pares de carácter del mensaje y carácter de la clave, si llegamos al final de la clave se empieza de nuevo por el primer carácter de ésta o se puede usar el mensaje (lo explicaré más detalladamente después), de modo que tendríamos:

(A, G) (U, A), (T, T), (O, O), (E, G), (S, A),….

Ahora vamos a usar una tabla, llamada la tabla de Vigenère (¿a qué no os lo esperabáis?), al igual que se hacía en el cifrado Polybios, para cifrar cada par de carácteres anterior. De modo que tenemos:

(A, G) = G

(U, A) = U

(T, T) = M

(O, O) = C

….

Y el mensaje cifrado es: GUMCKSVJKLT

Como decía anteriormente, se puede usar una versión un tanto diferente de este cifrado que se basa en un método llamado autoclave, este método consiste en que si alguna vez llegamos al fin de la clave no pasaríamos al principio de ésta, en su lugar usaríamos el mensaje que tengamos como clave. Así con el ejemplo anterior, tendríamos:

(A, G) (U, A), (T, T), (O, O), En lugar de comenzar la clave de nuevo usaríamos el mensaje. (E, A), (S, U), ….

Corregido gracias a Papá Oso

Para descifrar, se haría completamente al revés, cogiendo carácter a carácter del mensaje cifrado y con la clave buscando la posición que ocupe en la tabla dicho par.


Cifrado de Playfair

Cifrado de poligramas (bloques de carácteres) que se cifran como un único carácter. Para ello se construye una matriz y se siguen unas reglas:

  • Para los caracteres en la misma fila/columna se cogen los siguientes hacía la derecha/abajo.
  • Para los caracteres en distinta fila/columna se cogen los unidos por la diagonal opuesta a la formada por los primeros.
  • Si hay dos caracteres iguales seguidos, se mete entre medios un carácter de relleno. Normalmente, uno poco usado, como Ñ, X, Y.

Aunque ahora mismo no entendáis las reglas no pasa nada, ahora os pasaré a explicar todo detalladamente.

Lo primero como siempre es saber la clave a usar, en este caso vuelve a ser una matriz de 5×5 que se creará a partir de una palabra o conjuntos de caracteres que queramos. La matriz se crea poniendo la clave en la primera fila y rellenando el resto con el orden del alfabeto que usemos quitando los caracteres usados en la clave.

Por ejemplo, tomamos como clave: TRES. La matriz sería:

T
R
E
S
A
B
C
D
F
G
H
I
J
K
L
M
N
O
P
U
V
W
X
Y
Z

Ahora tenemos que tener un mensaje, por ejemplo: LA PIZARRA

Y ahora tomamos pares de caracteres del mensaje, llamados poligramas, como “LA”, “PI”, “ZA”, “RR” como son iguales añadimos uno de relleno (3a regla) “RX”, “RA”. Y pasamos a cifrar usando las reglas, para cifrar buscamos los pares de carácteres en la matriz y una vez localizados aplicamos la regla que toque.

Por ejemplo: Para “LA” tendríamos que la “L” y la “A” están en la misma columna (1a regla), por lo que cogemos los caracteres de debajo, para la “L” la “U” y para la “A” la “G”. Ahora “PI”, están en diferentes columna y fila (2a regla), por lo que cogemos los caracteres de la diagonal contraria a la formada por ellos, para la “P” la “N” y para la “I” la “K”.

Para descifrar realizamos las reglas a la inversa con el mensaje cifrado y la matriz.

Para mis queridos frikis de la criptografía, quería decir que este algoritmo fue el usado por los británicos en la primera guerra mundial y por los australianos en la segunda.



Cifrado Hill

Y como este blog es matemático, no podía faltar un cifrado que se base en algo matemático. Este es un cifrado poligráfico que usa como clave una matriz cuadrado y su inversa para descifrar.

Además se tiene la posibilidad de usar dos cifrados diferentes, el cifrado Hill con clave por la derecha:

Ci = mi · K

mi = Ci · K-1

(Donde mi es el carácter “i” del mensaje, Ci es el carácter “i” del mensaje cifrado y K es la clave)

Cifrado Hill con clave por la izquierda:

Ci = K · mi

mi = K-1 · Ci

Para realizar este cifrado, primero debemos transformar el mensaje en un vector de números, y que mejor manera que usando las posiciones que ocupan en el alfabeto como resultado, también se pueden usar otras equivalencias dando mayor seguridad a este algoritmo.

Por ejemplo: HOY = [7 15 25]

Después se pasaría a cifrar, con una matriz de unos y ceros que sería la clave, y obviamente esta matriz tiene que ser reversible.

Un cifrado muy sencillito y matemático.

El método de cifrado Vigènere


Tras escoger una palabra clave de entre 1 y 10 caracteres, preferiblemente todos distintos, se escribe en el campo correspondiente la frase que quiere cifrarse (sin espacios ni signos de puntuación entre palabras). No se distinguirá entre mayúsculas y minúsculas en este applet.

Cuando esté todo ya listo se pulsa el botón "Cifrar usando palabra clave" y entonces empieza el algoritmo de cifrado.

En cada paso, se coge la letra de la clave y la letra de la frase correspondientes a ese paso y se cifra la letra de la frase desplazando ésta en el alfabeto tantas posiciones como nos indique el orden alfabético de la letra clave. Por tanto se asignará a la letra A la posición 0, y a la letra Z la posición 26.

Por ejemplo: si ciframos la letra Z utilizando la letra clave C, obtendremos como resultado la letra cifrada B. Matemáticamente esto se expresa como 26 + 2 mod 27 = 1, que es la posición de la letra "B"

Cada paso se representará visualmente en el cuadrado Vigenère de 27 alfabetos que aparece en el lado izquierdo. La letra cifrada aparecerá en color verde, como resultado de la intersección de la fila i indicada por la letra-clave (color azul) y la columna j indicada por la letra correspondiente de la frase que ciframos (color amarillo).

                         CÓDIGO MORSE

Fue desarrollado por Alfred Vail mientras colaboraba en 1830 con Samuel Morse en la invención del telégrafo eléctrico. Vail creó un método según el cual cada letra o número era transmitido de forma individual con un código consistente en rayas y puntos, es decir, señales telegráficas que se diferencian en el tiempo de duración de la señal activa. La duración del punto es la mínima posible. Una raya tiene una duración de aproximadamente tres veces la del punto. Entre cada par de símbolos de una misma letra existe una ausencia de señal con duración aproximada a la de un punto. Entre las letras de una misma palabra, la ausencia es de aproximadamente tres puntos. Para la separación de palabras transmitidas el tiempo es de aproximadamente tres veces el de la raya. Morse reconoció la idoneidad de este sistema y lo patentó junto con el telégrafo eléctrico. Fue conocido como «American Morse Code» y fue utilizado en la primera transmisión por telégrafo.
En sus comienzos, el alfabeto Morse se empleó en las líneas telegráficas mediante los tendidos de cable que se fueron instalando. Más tarde, se utilizó también en las transmisiones por radio, sobre todo en el mar y en el aire, hasta que surgieron las emisoras y los receptores de radiodifusión mediante voz.




CÓDIGOS QR

A primera vista, tienen la apariencia de un tablero de ajedrez con los escaques desquiciados. Están en publicidades, en afiches o en cualquier packaging . Son los códigos QR, que sin hacer ruido se ganaron un lugar entre las herramientas de comunicación del siglo XXI.

En la sigla, la R es de response (respuesta) y la Q, de quick (rápida), porque el código fue creado bajo la consigna de que la información que contuviera pudiera ser descifrada en fracciones de segundo.

Los smartphones tienen todo lo necesario para “leer” los módulos QR . Basta que la cámara del teléfono los encuadre para que un soft gratis (Barcode es uno de los más conocidos) decodifique el mensaje oculto en la figura y lo haga legible. Y fue con la propagación de estos celulares que los QR encontraron las condiciones necesarias para multiplicarse a gran escala.

Del fenómeno tomaron nota departamentos de marketing y agencias de publicidad, y los QR comenzaron a formar parte de la comunicación comercial.

También el comercio electrónico se fijó en la novedad. El año pasado, la firma de artículos de oficina Staples fue pionera en el país al probar los QR en tiendas virtuales ubicadas en estaciones de subte. La idea era que se seleccionaran productos con la cámara del celular y encargarlos. Leo Piccioli, gerente general de la firma para Argentina, explica que la movida tuvo tres objetivos: “mostrarnos innovadores en el mercado, mostrarnos innovadores hacia las demás filiales de la compañía y vender más; y conseguimos los dos primeros”. Los QR no generaron ventas considerables a Staples y Piccioli cree que no fue solo porque era demasiado pronto, sino porque para el e-commerce hay mejores opciones.

Otros usos, aunque todavía incipientes, parecen tener mejor futuro. En la cadena de cines Hoyts, por ejemplo, quienes compran entradas por Internet ya pueden llegar directo al control de acceso de la sala portando un código QR, sea impreso o en la pantalla de su smartphone, para ingresar sin más trámite a ver la película . “Vendemos cerca del 35% de las entradas por Internet, por eso es importante para nosotros ofrecer este tipo de herramientas”, de dijo a Clarín Laura Najlis, gerente de Marketing Cines Hoyts.

Por la diferencia horaria, el miércoles, el diario belga La Derniére Heure cerró su edición antes de conocerse al vencedor de las elecciones de EE.UU. Y en su portada publicó el torso de un hombre ofreciendo una rueda de prensa en la Casa Blanca bajo el titular “Y el presidente es...”. Pero en el lugar de la cara del vencedor publicaron un QR que, al leerlo con el celular, dirigía a la noticia de la web del diario, donde se informaba del triunfo de Obama.

En el municipio de Tigre, los QR se están usando en la señalización callejera para dar datos sobre puntos de interés cercanos. Y también están siendo colocados en ambulancias y móviles de seguridad, para que los vecinos los puedan identificar. “Utilizamos los códigos QR y otras tecnologías móviles porque a fin de año la mitad de los celulares en uso serán smartphones, y queremos poner esa tecnología al servicio del vecino”, le explicó a Clarín Sergio Massa, intendente de Tigre.

Los posibles usos de los QR son muchos. A una empresa europea se le ocurrió usarlos para codificar datos médicos y colocarlos en un dije para llevar colgado en el cuello, y una fuerza de seguridad mexicana decidió bordarlos en sus uniformes con datos del portador.

En el país, la AFIP terminó de hacer conocidos los códigos QR cuando obligó a todos los comercios a exhibir uno con sus datos impositivos . Así cualquier cliente pueda capturar esa información si necesita hacer una denuncia.

No es un dato menor que crear un módulo QR es fácil. Y se puede hacer online y gratis.




LA MÁQUINA ENIGMA


La historia de Enigma

La necesidad de cifrar mensajes apareció a finales de la Primera Guerra Mundial (a pesar de que las técnicas de cifrado ya existían desde hacía tiempo).
Fue un alemán que vivía en su país, el Dr. Arthur Scherbius, quien desarrolló la máquina Enigma con propósitos comerciales. Esta máquina se utilizaba para codificar mensajes.
El modelo A de esta máquina (Chieffrienmaschinen Aktien Gesellschaft) se presentó en 1923, en el Congreso Postal Universal de Berna. Su precio (equivalente a 30.000 euros actuales) la convirtió en un gran fracaso. No obstante, la idea se popularizó y la Marina alemana retomó el proyecto en 1925 y lo confió a la división de cifrado del ministerio de guerra alemán (Chiffrierstelle). El modelo Enigma M3 fue adoptado por el Wehrmacht (ejército alemán) el 12 de enero de 1937.
Lo que los alemanes desconocían era que los servicios de contraespionaje franceses y polacos también habían estado trabajando, desde 1930, en un método de cifrado. Para esto, el Capitán Gustave Bertrand del servicio de inteligencia francés reclutó a Hans Thilo Schmidt (nombre clave, Asche), que trabajaba en ese momento para la Chiffrierstelle
.
Cuando la Segunda Guerra Mundial estalló en 1939, los aliados podían descifrar los mensajes Enigma. El 24 de julio de 1939, Marian Rejewski (jefe de Biuro Szyfrow - el servicio europeo más avanzado involucrado en la investigación de cifrado alemán) le dio un modelo de la máquina Enigma al Captain Bertrand y a Alistair Denniston, director de la división de cifrado de los servicios de Inteligencia británicos.
Luego la guerra se intensificó y los esfuerzos de cifrado se aceleraron. Entre los meses de octubre y junio de 1939, más de 4.000 mensajes cifrados fueron decodificados por los servicios secretos franceses. Estas operaciones recibieron un nombre: Operación Z para los franceses y Ultra Secret para los ingleses.
En agosto de 1939, los ingleses establecieron sus servicios de Código y Cifrado en Bletchley Park (a 80 km de Londres). No menos de 12.000 científicos y matemáticos ingleses, franceses y polacos trabajaron para romper el código Enigma. Entre estos matemáticos se encontraba uno de los inventores de la informática moderna: Alan Turing, quien supervisó todo este trabajo.
Los mensajes descifrados en Bletchley Park se dirigían a Hut 6 a través de una cinta transportadora y luego se enviaban a la estación para ser traducidos (2 estaciones por equipo):
  • una para mensajes no urgentes
  • otra para mensajes urgentes
Los mensajes traducidos procedentes de la Luftwaffe eran enviados a 3A, y aquellos mensajes que eran del ejército se enviaban a 3M (A=aviación; M=ejército). Las letras Z eran asignadas de acuerdo a la importancia de los mensajes (1Z: no muy importante; 5Z: extremadamente urgente). Luego, se resumía la información y se enviaba en 3 copias:
  • una al SIS (Servicio de Inteligencia) de Broadway,
  • otra al correspondiente departamento del ministerio o a Whitehall,
  • y otra al general competente en este área.
Los ingleses fueron capaces de descifrar los mensajes codificados. Sin embargo, como la Kriegsmarine (Marina de guerra alemana) utilizaba diferentes métodos de cifrado, el descifrado resultaba difícil. Un importante logro fue la captura de un Enigma y sus instrucciones en el U-110. Esto hizo posible averiguar las posiciones de los submarinos y reducir el tonelaje hundido por los U-Boots (Puede ver la película U-571).
El 1º de febrero de 1942 entró en marcha Enigma M4. Durante once meses los aliados fueron incapaces de descifrar sus mensajes.
A lo largo de la guerra, se descifraron más de 18.000 mensajes al día, algo que hizo posible que las fuerzas aliadas descubrieran la intenciones de Alemania. El último mensaje cifrado se encontró en Noruega, firmado por el Almirante Doenitz: "El Führer está muerto. La batalla continúa". Los alemanes nunca sospecharon que su preciada máquina podía ser descifrada.
Fuente:

Cómo funcionaba Enigma

El funcionamiento de Enigma era particularmente simple: estaba equipado con un teclado para introducir mensajes, diferentes rotores para codificar y un panel de luz para los resultados.
Cuando se presionaba una tecla en el tablero, se encendía una letra en el panel de luz. Había 3 ruedas para codificar, llamadas "Scrambler-Rotors" (Rotores de codificación), que conectaban el tablero con el panel de luz.
Por ejemplo, con un sólo rotor, cuando se presionaB, la corriente pasa a través del rotor y A se enciende en el panel de luz:
El rotor de Enigma
Para hacer la máquina más compleja, cuando se presiona una tecla, el rotor giraba una tuerca. Después de presionar, se obtenía lo siguiente:
el rotor de Enigma giraba una tuerca.
Dependiendo del modelo (M3 o M4), el sistema tenía 3 o 4 rotores. El segundo y tercer rotor se movían hacia una tuerca cuando el anterior había realizado una vuelta completa. Había también un panel de enchufes que mezclaba las letras del alfabeto y un proyector que enviaba la corriente hacia los rotores antes de mostrar los resultados.

En total, para las máquinas Enigma equipadas con 26 letras, había 17.576 combinaciones (26 x 26 x 26) relacionadas con la orientación de cada uno de los tres rotores, 6 combinaciones posibles relacionadas con el orden de los rotores y, por lo tanto, 100.391.791.500 conexiones posibles cuando se conectaban los seis pares de letras del panel de enchufes: 12 letras elegidas sobre 26 (¡26! /(12!14!)), luego 6 letras sobre 12 (¡12!/¡6!), y ya que algunos pares eran iguales (A/D y D/A), era necesario dividir por 26.
Por lo tanto, las máquinas Enigma podían cifrar un texto utilizando ¡1016 (17.576 * 6 * 100.391.791.500) combinaciones diferentes!

Descifrando el código Enigma

Los polacos inventaron "la Bomba" (posteriormente llamada "Ultra"), que hizo posible descubrir los esquemas de Enigma. Sin embargo, durante el año 1938, era el propio operario quien establecía el esquema. Los polacos encontraron la solución a este problema: cada mensaje contenía palabras repetidas o bien palabras recurrentes (llamadas "hembras").
Esto fue una pista en lo que se refiere al eje (esquema básico del rotor). Para descubrir el esquema, los polacos pasaron a utilizar la "tabla" (hojas perforadas que correspondían a todas las permutaciones del eje). Estas hojas se apilaban una sobre otra de acuerdo a la posición de las "hembras".
El próximo paso era encontrar el punto en el que una serie de agujeros se alineaban desde arriba hacia abajo en la pila.
Texto escrito por Jean-François PILLOU y Sébastien DELSIRIE


 CIFRADO CUÁNTICO

El computador cuántico y el final de la criptografía de clave pública

Una de las grandes ventajas de un sistema de clave pública/clave privada como el RSA reside en la comodidad para compartir y distribuir las claves. Pero... nunca se ha demostrado matemáticamente la seguridad de dicho sistema. Lejos de ser imposible la factorización en un tiempo polinómico, lo único que sabemos es que no se ha encontrado un algoritmo factible; en definitiva, la seguridad de este sistema, ampliamente empleado, depende sola y exclusivamente de la complejidad matemática para factorizar números grandes.
Sin embargo, si se usase un computador cuántico, podríamos usar el algoritmo de Peter Shor, científico de la AT&T, que permite factorizar un número muy grande en tiempo polinómico. El truco está en que este algoritmo tiene una parte basada en una transformada de Fourier cuántica... casi nada para el cuerpo...

Sin complicarnos la vida en la matemática y en la mágica teoría cuántica, en la que se dice que reside la magia de Dios en el universo, podemos concluir que con un ordenador cuántico y el algoritmo de Shor, diseñado en el año 1994, podemos liquidar el RSA de un plumazo. Si tenemos un sistema 2^n, si usamos una transformada de Fourier clásica, necesitaremos n*2^n pasos, mientras que si usamos una transformada de Fourier cuántica, como la diseñada por Ekert y Sozsa en 1996, solamente necesitamos n^2 pasos, algo mucho más manejable sin duda. Como se puede ver, el efecto del tamaño de la clave es casi despreciable en este caso, cayendo casi en el mismo tiempo una clave de 2048 bits que una potente de 7349, ahora ya no es un exponente, es una base. Pero la computación cuántica no solamente rompe la clave RSA calculando la factorización, usando los algoritmos adecuados, puede bucar claves simétricas, resolver problemas N=NP y realizar cálculos estadísticos, que podrían darnos otros avances en la criptografía.
Pero existe el computador cuántico.. bueno, por el momento tenemos la teoría cuántica y los algoritmos cuánticos, algunos hasta han sido mejorados con el tiempo, pero ¿dónde está el ordenador cuántico diseñado teóricamente en 1970? ¿es posible que exista?.
Una clave la tenemos en una noticia procedente de IBM del año 1991, en la que se dice que científicos de esa empresa, en el Almaden Research Center habían usado un trillón de moléculas especialmente diseñadas, para crear un ordenador de 7 qbits para comprobar el funcionamiento del algoritmo de Shor. Tuvieron éxito al encontrar que 3 y 5 eran factores de 15... parece poco pero, realmente es mucho ya que es la computación cuántica más complicada que se había realizado hasta la fecha, un logro.

Eso era en 1991, pero ¿qué pasa ahora?, bueno, hay proyectos de computación cuántica en la NASA, que parece que avanzan bastante. Pero hay noticias de la NSA del año 2002, que dicen que podemos ir tirando nuestro PGP/GPG a la basura.

Pero mientras que la computación cuántica se mueve en el misterio, ya hay sistemas de cifado cuántico comerciales, de los que hablaré en otra ocasión. Por el momento tienen la limitación de la distancia, la velocidad de transmisión máxima y la necesidad de una conexión mediante fibra óptica de los terminales. La criptografía cuántica no se basa en la complejidad del sistema, se basa en el hecho de que al intentar leer un sistema cuántico, se modifica su estado de forma irremediable. Los sistemas cuánticos, para ser completamente seguros, deben generar una clave de un tamaño comparable al mensaje.

Lo que si se puede decir, es que la mecánica cuántica ha avanzado mucho, por ejemplo, se la logrado detener la luz y luego liberarla, sí, se ha logrado parar la luz, es decir que no avance en el espacio. Hace unos años se logró que viajase a 70 Km/h solamente en un medio superenfriado (mi coche viaja a dos veces la velocidad de la luz), pero ya se ha logrado que se detenga por completo en una sopa de átomos, que añaden peso a los fotones, peso que puedo quitar o poner a voluntad.
Aunque parezca un avance trivial, para la luz tendrá enormes aplicaciones a la hora de crear repetidores cuánticos que permitan superar la barrera de 100 km de los sistemas de cifrado cuántico actuales. Estos se basarán en otro efecto curioso y misterioso de la materia, la paradoja de Einstein, Podolski, Rosen (EPR). Dicha paradoja, que hay quien dice que no lo es, ha sido probada de forma experimental a una distancia de 10 m, dice que cuando un átomo con simetría esferica, emite fotones en direcciones opuestas, el estado inicial de polarización de los fotones es indefinido, pero en el instante que se mide la polaridad de uno de ellos, la polarización del otro queda automáticamente determinada, ¿comunicación más rápida de la luz y sin medio físico? ¿sistemas de almacenamiento de ultra alta densidad? ¿memoria para el computador cuántico?

Es como si todos los fotones del universo tuvieran su pareja y al determinar la polarización de uno, se determinaría automáticamente la de su pareja. Imaginad que logramos separar un par de fotones "entrelazados", para ello podemos usar la trampa de luz y viajamos con el otro fotón en el espacio. Podremos tener un sistema de comunicaciones instantáneo y seguro... ya que si alguien interviene, modificaría el estado del fotón ya que solamente se puede usar un filtro para comprobar la polaridad y si se usa el incorecto, la modificará, lo que afectará a la pareja ¿llegará una nueva era de denegaciones de servicio?.

Pero es evidente que todavía quedan muchas cosas por descubir en este mundo de la mecánica cuántica. ¿será posible el teletransporte? ¿entraremos en otras dimensiones?.


Mientras que la computación cuántica se mueve en el misterio de los secretos de estado y en los laboratorios de universidades y corporaciones, ya hay sistemas de cifrado cuántico comerciales, como el de la empresa QuinetiQ.
Vamos a intentar describir, de forma sencilla, el funcionamiento de un sistema de claves cuánticas, que supera el problema de los computadores cuánticos. Para ello, nos basaremos en el protocolo cuántico de generación de claves (QKG) más sencillo, el BB84...
Un sistema de cifrado tradicional es seguro si se dan dos condiciones:
  • La clave es perfectamente aleatoria.
  • La clave solamente se usa una vez.
Aunque parece algo sencillo, lo cierto es que para que esto se cumpla, es necesario que la clave sea del mismo tamaño que el mensaje, que tenga un único uso y ha de estar en posesión del emisor y del receptor de forma exclusiva. El principal problema para lograrlo, está en la compartición de las claves.
Una solución al problema de la compartición de claves, la encontramos en los sistemas de clave pública-privada, pero como hemos dicho, puede que no sean seguros cuando los ordenadores cuánticos estén disponibles. Para ello, podemos recurrir a sistemas de distribución de claves cuánticos, que se basan en tres leyes fundamentales (pdf):
  • Teorema de no clonación, que nos asegura que el estado de un Qbit no puede ser copiado en otro. Es decir, un espía no podrá copiar la clave que circula por el sistema cuántico en otro sistema cuántico.
  • Cualquier intento de determinar información sobre un sistema cuántico, tiene como consecuencia, una modificación del mismo. Es decir, no se puede ver lo que circula por el sistema cuántico sin perturbarlo.
  • Una vez determinado el estado cuántico, la situación del Qbit es irreversible. Es decir, no podemos borrar nuestras huellas, si espiamos un sistema cuántico.
Para un sistema de distribución de claves cuántico, necesitamos dos canales, uno cuántico, por ejemplo, una fibra óptica y otro tradicional, por ejemplo, una conexión telefónica. También necesitaremos una fuente de fotones, como un láser.
Cada Qbit puede tener cuatro estados posibles, dos corresponderán a una polarización oblicua y otros dos a una polarización recta. Para provocar estos estados usaremos, en el lado del emisor, que llamaremos Alicia, cuatro filtros de polarización, dos para el modo de polarización recta y dos para el de polarización oblicua. Estos filtros los podemos representar como “/” y “\” (45º y -45º) para polarización oblicua y “|” y “-” (90º y 180º) para polarización recta. Supongamos también, que asignamos a cada variación de los modos de polarización, los valores de “0” y “1”. Por ejemplo, “\”=1, “/”=0 y “-”=0, “|”=1. Para determinar un fotón por completo, debemos saber al mismo tiempo, el modo de polarización y el bit codificado en dicho modo, lo que tendría el problema detallado en el punto b) de las leyes de la mecánica cuántica. La solución está en determinar el bit, sin determinar el modo de polarización ¿cómo lo hacemos?.
Veamos el procedimiento.
En el otro lado, que llamaremos Bob, colocaremos unos filtros “x” e “+” que son capaces de determinar el bit correcto, solamente si acertamos a utilizar el filtro que corresponde al modo de polarización que tenía el fotón, recto o oblicuo, ya que no podemos determinar completamente el estado, por el principio de incertidumbre. Para hacerlo, se necesitarían 4 filtros y como la mecánica cuántica nos impide usar los cuatro al mismo tiempo, en el momento que no usemos el adecuado, cambiaremos la polarización del fotón, destruyendo su información. Dicho de otro modo, de los 3 parámetros que definen el estado de polarización de un Qbit, solamente podemos determinar dos, el otro nos lo tienen que dar de alguna forma, como veremos seguidamente.
Estos dos filtros los utilizaremos de forma aleatoria sobre los Qbits que nos llegan, consiguiendo una secuencia de 0 y 1. De esta secuencia, como hemos dicho, no estamos seguros que hayamos elegido el filtro correcto, es decir, todavía nos queda por determinar el tercer parámetro de cada Qbit. Para ello, Bob manda a Alicia, a través de la línea telefónica y en claro, la secuencia de filtros que ha utilizado aleatoriamente. Alicia le contestará indicando los que ha utilizado correctamente para cada Qbit, lo que permite a Bob eliminar los bits correspondientes a una mala elección del filtro.
Hay que señalar, que la comprobación de filtros no compromete la clave. Para cada filtro, sigue habiendo la posibilidad de un 0 o 1, la incertidumbre es absoluta, ambos valores, para cada modo de polarización, tienen una probabilidad del 50%. Lo que se hace realmente, es intercambiar el parámetro que faltaba y que permite a Bob determinar la polarización completa del Qbit, sin violar el principio de incertidumbre. Como se hace después, no antes del envío, no hay más remedio que rechazar los bits que no son válidos. Los bits correspondiente a una correcta elección del filtro, formarán la clave para intercambiar mensajes.
Este proceso se denomina medición de Von Neumann.
Ahora bien ¿qué pasa si hay alguien, llamado Eva, interceptando la comunicación, con la intención de capturar la clave?. Para no interferir en la comunicación, Eva debería poder usar los dos filtros al mismo tiempo, cosa que es imposible, ya que cada vez que se equivoque en la elección, Bob recibirá un Qbit cambiado. Para comprobarlo, se emplean métodos estadísticos. Si no hay nadie escuchando, la probabilidad de acertar con el filtro adecuado es de 3/4, mientras que de fallar es de 1/4. Si Eva está escuchando, aumentará la tasa de errores, por los fallos que introduce al usar el filtro con el modo de polarización no adecuado. Los fallos serán un 50% mayores que antes, por lo tanto, la probabilidad de acertar en este caso bajará a 5/8 y de fallar subirá a 3/8. Para comprobarlo, bastará con tomar una parte de los bits recibidos e intercambiarlos entre Alicia y Bob. Si la tasa de error, es superior a la estimada de 1/4 y se aproxima a 3/8, es que Eva está escuchando e introduce errores en el proceso, por lo que la clave no es válida.
Estos sistemas tienen la limitación de la distancia, de la velocidad de transmisión máxima, limitada a 100 Mb/s y de la necesidad de una conexión mediante fibra óptica entre los extremos. La criptografía cuántica no se basa en la complejidad del sistema, se basa en el hecho de que al intentar leer un sistema cuántico, se modifica su estado de forma irremediable, es decir, en la misma incertidumbre y aleatoriedad que caracteriza la mecánica cuántica, más seguridad es imposible.

PRESENTACIONES




No hay comentarios:

Publicar un comentario