1 Introducción a la Criptografía Cuántica Experimental Distribución de una Clave Cuántica por aire libre Carlos Manuel Díaz Domínguez Facultad de Ciencias, Universidad Nacional de Ingeniería – Lima-Perú [email protected]Marzo 2010 Como un primer trabajo de introducción a la Criptografía Cuántica en nuestro medio, se presenta la implementación de una máquina original de criptografía, capaz de crear y distribuir una clave secreta a través del aire libre usando pulsos de fotones a una distancia de 1.5 m utilizando el protocolo cuántico BB84. La importancia y necesidad de la Criptografía Cuántica radica en que las investigaciones actuales en el desarrollo de procesadores cuánticos de semiconductores hacen suponer que dentro de 15 ó 20 años ya estarán en funcionamiento las primeras computadoras cuánticas que podrán desencriptar las claves más seguras que se usan en internet, bancos y grandes empresas, incluso ya se existen algoritmos cuánticos capaces de realizar dicha desencriptación. Palabras claves: Criptografía Cuántica, Protocolo Cuántico BB84, Computación Cuántica. As a first introduction to the work of Quantum Cryptography in our environment, presents an implementation of a cryptographic original machine, able to create and distribute a secret key through the air using pulses of photons at a distance of 1.5 m using the BB84 quantum protocol. The importance and necessity of quantum cryptography is that current research in the development of semiconductor quantum processors suggest that within 15 or 20 years and will be operational early quantum computers that can decrypt the keys that are safer than are used in Internet, banks and large corporations, including already existing quantum algorithms capable of performing the decryption. Keywords: Quantum Cryptography, Quantum BB84 Protocol, Quantum Computing. I. Introducción Las primeras ideas de lo que ahora se conoce como Computación Cuántica aparecieron en 1981 durante la “Primera Conferencia sobre la Física y Computación”, organizada por el Instituto Tecnológico de Massachusetts (MIT), donde Richard Feynman (1918-1988) observó que las computadoras convencionales se hacían muy lentas al simular la evolución de sistemas cuánticos y sugirió que sólo una computadora construida en base a principios cuánticos podría ser capaz de realizar dichas simulaciones (1). Feynman describió un “Simulador Cuántico Universal” que emulaba el comportamiento de cualquier sistema físico, pero no fue hasta 1985 cuando David Deutsch propuso la primera máquina de Turing Cuántica (2) con la que se establecieron las bases para el desarrollo de una Computadora Cuántica. Desde esa fecha se han desarrollado algoritmos teóricos cuánticos capaces de resolver problemas que son imposibles o muy difíciles para las computadoras actuales. Entre los más conocidos están el algoritmo de Shor (3) (1994) que factoriza números enteros, el algoritmo de Grover (4) (1996) que realiza una búsqueda rápida en una base de datos desordenada y los más recientes el algoritmo de las Sumas de Gauss (5) que factoriza números enteros (2006) y el algoritmo para resolver sistemas de ecuaciones lineales (6) (2008). Sin embargo, la construcción física de una computadora cuántica que implemente estos algoritmos con los qubits 1 necesarios todavía es muy complicado (7) (8) (9). El principal problema es que la tecnología actual aún no 1 El qubit (Quantum Bit) o bit cuántico es el equivalente cuántico del bit clásico. Tiene la característica de que además de estar en los estados 0 y 1, también puede ser 0 y 1 al mismo tiempo. permite construir el hardware necesario para controlar totalmente la interacción de un estado cuántico con su entorno, lo que se conoce como el problema de la decoherencia. No obstante, una de las aplicaciones prácticas de la Computación Cuántica que mas avance tecnológico viene mostrando hasta la fecha es la Criptografía Cuántica, que consiste en crear y distribuir una clave secreta (Quantum Key Distribution: QKD) que permita la comunicación segura entre dos partes remotas convencionalmente identificadas como Alice (emisor) y Bob (receptor). Merece comentar que los métodos de encriptación actuales basan su seguridad en la dificultad de las computadoras modernas de realizar enormes cálculos matemáticos y por tanto son vulnerables a ataques por espías con suficiente potencia de cálculo. En contraste existe una posibilidad en la que la seguridad, en el límite es incondicional y está garantizada por leyes fundamentales de la Física Cuántica. En el límite esta posibilidad incluso es invulnerable ante una computadora cuántica. Figura 1: Primera máquina de Criptografía Cuántica, construida por Bennet y Brassard en los laboratorios de IBM en 1989. El equipo consta básicamente de 3 partes: el emisor de fotones (Alice), el canal cuántico (espacio por donde viajan los fotones) y el receptor de fotones (Bob). ALICE CANAL CUÁNTICO BOB
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
1
Introducción a la Criptografía Cuántica Experimental
Distribución de una Clave Cuántica por aire libre
Carlos Manuel Díaz Domínguez
Facultad de Ciencias, Universidad Nacional de Ingeniería – Lima-Perú
Como un primer trabajo de introducción a la Criptografía Cuántica en nuestro medio, se presenta la implementación de una máquina original de criptografía, capaz de crear y distribuir una clave secreta a través del aire libre usando pulsos de fotones a una distancia de 1.5 m utilizando el protocolo cuántico BB84. La importancia y necesidad de la Criptografía Cuántica radica en que las investigaciones actuales en el desarrollo de procesadores cuánticos de semiconductores hacen suponer que dentro de
15 ó 20 años ya estarán en funcionamiento las primeras computadoras cuánticas que podrán desencriptar las claves más seguras que se usan en internet, bancos y grandes empresas, incluso ya se existen algoritmos cuánticos capaces de realizar dicha desencriptación. Palabras claves: Criptografía Cuántica, Protocolo Cuántico BB84, Computación Cuántica. As a first introduction to the work of Quantum Cryptography in our environment, presents an implementation of a cryptographic original machine, able to create and distribute a secret key through the air using pulses of photons at a distance of 1.5 m using the BB84 quantum protocol. The importance and necessity of quantum cryptography is that current research in
the development of semiconductor quantum processors suggest that within 15 or 20 years and will be operational early quantum computers that can decrypt the keys that are safer than are used in Internet, banks and large corporations, including already existing quantum algorithms capable of performing the decryption. Keywords: Quantum Cryptography, Quantum BB84 Protocol, Quantum Computing.
I. Introducción
Las primeras ideas de lo que ahora se conoce como Computación Cuántica aparecieron en 1981 durante la
“Primera Conferencia sobre la Física y Computación”,
organizada por el Instituto Tecnológico de Massachusetts
(MIT), donde Richard Feynman (1918-1988) observó que
las computadoras convencionales se hacían muy lentas al
simular la evolución de sistemas cuánticos y sugirió que
sólo una computadora construida en base a principios
cuánticos podría ser capaz de realizar dichas simulaciones
(1).
Feynman describió un “Simulador Cuántico Universal” que emulaba el comportamiento de cualquier sistema
físico, pero no fue hasta 1985 cuando David Deutsch
propuso la primera máquina de Turing Cuántica (2) con la
que se establecieron las bases para el desarrollo de una
Computadora Cuántica. Desde esa fecha se han
desarrollado algoritmos teóricos cuánticos capaces de
resolver problemas que son imposibles o muy difíciles
para las computadoras actuales. Entre los más conocidos
están el algoritmo de Shor (3) (1994) que factoriza
números enteros, el algoritmo de Grover (4) (1996) que
realiza una búsqueda rápida en una base de datos
desordenada y los más recientes el algoritmo de las Sumas de Gauss (5) que factoriza números enteros (2006) y el
algoritmo para resolver sistemas de ecuaciones lineales (6)
(2008).
Sin embargo, la construcción física de una computadora
cuántica que implemente estos algoritmos con los qubits1
necesarios todavía es muy complicado (7) (8) (9). El
principal problema es que la tecnología actual aún no
1 El qubit (Quantum Bit) o bit cuántico es el equivalente cuántico del bit clásico. Tiene la característica de que además de estar en
los estados 0 y 1, también puede ser 0 y 1 al mismo tiempo.
permite construir el hardware necesario para controlar
totalmente la interacción de un estado cuántico con su
entorno, lo que se conoce como el problema de la
decoherencia. No obstante, una de las aplicaciones
prácticas de la Computación Cuántica que mas avance
tecnológico viene mostrando hasta la fecha es la
Criptografía Cuántica, que consiste en crear y distribuir una clave secreta (Quantum Key Distribution: QKD) que
permita la comunicación segura entre dos partes remotas
convencionalmente identificadas como Alice (emisor) y
Bob (receptor).
Merece comentar que los métodos de encriptación actuales basan su seguridad en la dificultad de las computadoras
modernas de realizar enormes cálculos matemáticos y por
tanto son vulnerables a ataques por espías con suficiente
potencia de cálculo. En contraste existe una posibilidad en
la que la seguridad, en el límite es incondicional y está
garantizada por leyes fundamentales de la Física Cuántica.
En el límite esta posibilidad incluso es invulnerable ante
una computadora cuántica.
Figura 1: Primera máquina de Criptografía Cuántica, construida por Bennet y Brassard en los laboratorios de IBM en 1989. El equipo consta básicamente de 3 partes: el emisor de fotones
(Alice), el canal cuántico (espacio por donde viajan los fotones) y el receptor de fotones (Bob).
operación XOR, para obtener un mensaje encriptado que
es enviado a Bob mediante un canal clásico3 (Figura 5).
Finalmente, cuando Bob recibe el mensaje lo desencripta
usando la clave y la misma operación que se realizo para
encriptar, obteniendo de esa manera el mensaje original
(Figura 6).
Protocolos de distribución de claves cuánticas
(Quantum Key Distribution - QKD)
Son protocolos que utilizan las propiedades de la Física
Cuántica para crear una clave que permita la comunicación
segura entre Alice (emisor) y Bob (receptor).
Básicamente son tres los protocolos cuánticos más conocidos, dos de ellos utilizan fotones en bases
conjugadas4 ortogonales (BB84 y B92) y el tercero fotones
entrelazados5 (E91). Otros protocolos menos conocidos
son BBM92, SARG04, Six-States, Lo-Chau, CSS, COW,
DPS, S09, etc.
En este artículo se construyó una máquina que emplea el
protocolo BB84. Este protocolo utiliza dos bases
3 El canal clásico es un medio convencional de comunicación que no necesariamente debe estar protegido contra ataques de espías, puede ser una línea telefónica, una señal de radio, una red, internet, etc. 4 Dos bases son conjugadas si al medir los estados de una base en la otra siempre se tiene una probabilidad de 1/2 de obtener un estado de la base con que se mide. 5 Dos fotones están entrelazados cuando la medida (por ejemplo,
la polarización) de uno de ellos afecta la medida del otro.
conjugadas (Figura 7), cada una con dos polarizaciones
ortogonales:
La base rectilínea
,
Y la base diagonal
,
En cada base la primera polarización representa el bit cero
y la segunda polarización el bit uno, esto es arbitrario.
Métodos de espionaje más utilizados
Un metodo de espionaje tiene como objetivo tratar de
descubrir la clave secreta sin que el emisor Alice ni el
receptor Bob se percaten de ello.
La Criptografia Cuántica al estar basada en la Física
Cuántica siempre delatará al espía pues cualquier medida
que realice cambiará con alguna probabilidad el estado de
polarización de los fotones enviados por Alice, llegando a
Bob fotones con polarizaciones diferentes. De esa forma Alice y Bob se dan cuanta que han sido espiados. Los dos
formas de espionaje más conocidos, obviamente sin éxito,
son:
Man in the Middle (MITM): El espía Eve se coloca
entre Alice y Bob e intercepta todos los fotones
enviados por Alice, intenta medir su polarización y
reenvía el resultado a Bob.
Photon Number Splitting (PNS): El espía Eve desvía
aleatoriamente algunos fotones enviados por Alice usando beamsplitters, intenta medir su polarización y
reenvía el resultado a Bob.
Protocolo Cuántico Bennett y Brassard 1984
(BB84)
Es un protocolo que utiliza fotones polarizados para
codificar la información expresada en bits. Utiliza dos
bases conjugadas ortogonales (rectilínea y diagonal) para
construir una clave cuántica.
Figura 7: Polarizaciones usadas para codificar los bits en el protocolo BB84.
Figura 5: Alice envía el mensaje encriptado a través del canal clásico.
Figura 6: Bob obtiene el mensaje.
Figura 8: Polarizaciones utilizadas para codificar los bits.
5
100%BitsIguales
BitsComparados
nQBER
n
Los pasos para la distribución de la clave cuántica son los
siguientes:
Generación y distribución de la clave en bruto
Estimación de la tasa de error de qubits en las claves
Reconciliación de claves
Amplificación de privacidad
Generación y distribución de la clave en bruto
Consiste en utilizar los principios de la Física Cuántica
para construir una clave secreta entre Alice y Bob.
1. Alice decide enviar a Bob un mensaje secreto de n bits.
2. Alice genera una cadena aleatoria a de 4n+δ bits6,
luego genera aleatoriamente otra cadena b con la bases
+ o que asignará a cada bit de la cadena a para codificar en una cadena c las polarizaciones de acuerdo
a la base y al bit que Alice desea enviar.
3. Alice envía a Bob, por un canal cuántico, fotones polarizados según la cadena c.
4. Bob recibe los 4n+δ fotones y mide la polarización de
cada uno de ellos utilizando una cadena aleatoria b’ de
bases + o . Esta medida resulta en polarizaciones que se almacenan en la cadena c’ y por último traduce el
resultado en una cadena de bits a’.
5. Alice y Bob anuncian por una canal clásico las cadenas
b y b’.
6. Alice y Bob descartan los bits en las que las bases
difieren y obtiene una subcadena de a’ de longitud aproximada (4n+δ)/2 que corresponde a las bases
coincidentes. Esta es la clave en bruto.
Estimación de la tasa de error de qubits en las claves
(Quantum Bit Error Rate - QBER)
Durante la distribución de la clave siempre existe la
posibilidad que el ruido7 o presencia de un espía8 afecte la
transmisión y genere bits distintos entre las claves de Alice
y Bob. El QBER es el porcentaje de las claves que son
diferentes.
1. Alice selecciona una parte de su clave en bruto la cual
servirá para averiguar si hubo ruido o interferencia de
Eve. Y avisa a Bob las posiciones de los bits
seleccionados.
6 La clave en bruto que genera el protocolo tiene aproximadamente el 50% de los bits enviados. Y en general se utiliza el 50% para estimar la tasa de error en la clave, de esta forma sólo queda aproximadamente el 25% de los bits enviados,
es decir n+/4. El excedente /4 se usará para la reconciliación de
claves. El valor se determina de manera experimental. 7 Por ruido se entiende cualquier hecho fortuito que cambia la polarización del fotón. 8 La presencia del espía puede modificar la polarización del fotón pues es un acto intencional donde el espía siempre tratará de
ocultar su presencia.
2. Alice y Bob anuncian y comparan los bits
seleccionados para hallar el QBER, según la siguiente
expresión:
3. Si el QBER supera cierto valor preestablecido (21), se
reinicia el protocolo.
Reconciliación de información (Corrección de errores)
La reconciliación de información es un proceso por el cual
se elimina los bits erróneos de las claves. En este artículo
se empleo una variación del método Cascada (22)
propuesto por Brassard y Salvail en 1994.
1. Se divide la clave en bloques de 4 bits.
2. Se compara su paridad. Si son diferentes se elimina
todo el bloque, pero si son iguales solo se elimina el último bit.
3. Los bits que quedan son permutados aleatoriamente.
4. Se repite hasta no encontrar bloques de distinta
paridad.
5. Al terminar Alice y Bob pueden estar seguros de tener
claves iguales. Esta clave se denomina clave
reconciliada.
Amplificación de privacidad
La reconciliación de información es un proceso que se
realiza por un canal clásico entonces está expuesta a ser
replicada por un espía. La amplificación de privacidad
tiene como objetivo reducir la información que tiene Eve;
es decir si Eve conoce algunos bits de la clave, luego de la
amplificación de privacidad ella conocerá menos bits.
La amplificación de privacidad consiste básicamente en
tomar aleatoriamente varios bits de la clave y realizar alguna operación con ellos y el resultado reemplaza a otro
bit elegido también aleatoriamente, esto da una gran
probabilidad de que Eve mezcle sus bits correctos con los
incorrectos, obteniendo un resultado incorrecto que quizás
reemplace a un bit correcto.
En este artículo usamos un método que utiliza el operador
XOR (23):
1. Alice y Bob eligen aleatoriamente tres bits de sus
claves reconciliadas.
2. Con los dos primeros bits realizan la operación XOR y el resultado reemplaza al tercer bit.
3. Se repite tantas veces como longitud tenga la clave.
El resultado es una clave totalmente segura con la cual la
Alice y Bob podrán comunicarse un mensaje secreto.
6
Ejemplo de aplicación del protocolo cuántico BB84
Supongamos que nos comunicamos en un medio donde el
ruido es de 10% y sin espía.
1. Alice quiere enviar a Bob la letra z, código ASCII 122,
en binario 01111010, es decir que n=8 bits.
2. Alice genera una cadena aleatoria a de 48 bits (Utilizó
un =16). Luego genera aleatoriamente otra cadena b
con la bases + o que asignará a cada bit de la cadena a. Por último genera una cadena c que contiene las
polarizaciones de acuerdo a la base y al bit que Alice
desea enviar (Figura 9).
3. Alice envía los bits (fotones polarizados) a Bob
mediante un canal cuántico. Durante el envío de fotones puede ocurrir que algunos fotones cambien su
polarización debido al ruido o presencia de espía. Las
celdas amarillas muestran estos cambios de
polarización durante el envío (Figura 10).
4. Bob recibe los 48 fotones y mide la polarización de
cada uno de ellos utilizando una cadena aleatoria b’ de
bases + o . Esta medida resulta en polarizaciones que
se almacenan en la cadena c’ y por último traduce el
resultado en una cadena de bits a’. El signo de ? denota
el caso cuando no se sabe de antemano en que
polarización colapsará el fotón (Figura 11).
5. Alice y Bob utilizando un canal clásico comparan las
cadenas b y b’, descartan las posiciones en las que las
bases elegidas difieren y obtiene una subcadena de a’.
Las bases iguales están sombreadas de verde, obtienen una clave en bruto de 25 bits (Figura 12).
6. Debido al ruido, 2 bits de la clave en bruto son distinto
para ambos, fondo amarillo (Figura 13).
Figura 9: Alice y Bob obtiene la clave en bruto.
Figura 12: La polarización de algunos fotones es afectada por el ruido.
Figura 11: Fotones codificados de Alice
Figura 13: Fotones decodificados por Bob.
Figura 10: Sólo las bases coincidentes son tomadas en cuenta para formar la clave en bruto.
7
Calculo del QBER (Quantum Bit Error Rate)
1. Se eligen al azar la mitad de la clave en bruto para
comparar, 12 bits (columnas sombreadas de celeste)
(Figura 14).
2. Al comparar, Alice y Bob estiman el QBER. En el
ejemplo QBER=1/12=8.3% (Figura 15).
Como el QBER es menor que 11% se suponen que no han
sido espiados.
Reconciliación de información (Corrección de errores)
1. Se divide la clave que queda en bloques de 4 bits y se
compara su paridad. Si son diferentes se elimina todo
el bloque, pero si son iguales solo se elimina el último
bit y el resto queda en la clave (Figura 16).
2. El primer bloque (amarillo) de Alice tiene paridad par
y el de Bob paridad impar así que se eliminan. En el segundo bloque (verde) ambos tienen paridad par y en
el tercer bloque (azul) ambos tienen paridad impar, así
que se procede a eliminar sus correspondientes últimos
bits (Figura 17Figura 17).
3. Se obtiene una clave de 7 bits, pero se necesita 8 bits para transmitir un carácter, usualmente se elije un δ
grande para no tener este problema de una clave muy
pequeña. Alice y Bob deben ponerse de acuerdo en una
técnica para completar las claves, por ejemplo se
completa lo que falta con los primeros bits, aunque
podría también elegirse una selección aleatoria (Figura
18).
Amplificación de privacidad
1. Se selecciona aleatoriamente dos bits y se realiza la
operación XOR para luego reemplazar el resultado en cualquier posición aleatoria.
2. La clave tiene 8 bits, así que se repite la operación 8
veces. Los bits elegidos tendrán fondo amarillo y el
que se reemplazará color verde (Figura 19).
3. A medida que se avanza la clave se va transformando.
Luego de 8 amplificaciones se podría obtener la
mostrada en la Figura 20.
Así, Alice y Bob tienen sus claves idénticas y están listos para transmitir el mensaje secreto.
Figura 17: Alice y Bob obtiene la clave en bruto.
Figura 18: Se elige al azar la mitad de la clave en bruto.
Figura 15: Alice y Bob obtiene un QBER de 8.3%.
Figura 14: Dividen la clave restante en bloques de cuatro bits.
Figura 16: Clave reconciliada.
8
Fórmulas probabilísticas que describen el protocolo
cuántico BB84
Se muestra a continuación un resumen de las fórmulas
probabilísticas de acierto y error en cualquier situación de
ruido9 % y espía con capacidad de interceptación10 %, durante el envío de fotones en el protocolo cuántico BB84.
Las deducciones pueden verse en (24).
Fórmulas para el receptor Bob:
Fórmulas para el espía Eve:
9 Un ruido % significa que un porcentaje del total de fotones
enviados cambiaran su estado de polarización. 10 Una interceptación % significa que un porcentaje del total
de fotones enviados serán interceptados y posiblemente
cambiaran su polarización.
III. Construcción de una máquina de
criptografía básica
En este artículo describiremos la construcción de una
máquina original de criptografía usando pulsos de fotones
que en el límite funcionará como una máquina de
Criptografía Cuántica.
Es importante recalcar que esta es la primera máquina de
este tipo construida en nuestro país y que debido a los muy
limitados recursos económicos se simplifico a lo esencial
por lo que trabaja a baja velocidad respecto a equipos
modernos desarrollados en laboratorios más avanzados.
Se dedujo fórmulas probabilísticas que gobiernan el funcionamiento de la máquina construida, mostrando que
en el caso de usar fotones individuales son iguales a las
deducidas para las máquinas modernas (ecuaciones 1, 2, 3,
4 y 5) (24).
Se escribió un programa de simulación en Visual C# de la
máquina construida para generar la clave cuántica usando
el protocolo BB84.
Se realizaron varios experimentos para comprobar el
protocolo cuántico BB84 obteniendo resultados que coinciden con los esperados teóricos y simulados:
Se generó y distribuyó una clave entre Alice y Bob.
Logrando distribuir claves formada aproximadamente
del 50% del total de pulsos láser enviados por Alice.
Se realizo una intervención de espía utilizando el
método PNS, observando que al atenuar
suficientemente los pulsos láser el espía Eve ya no
tiene éxito, esto conlleva a reemplazar necesariamente
la fuente de pulsos láser por una fuente de fotones
individuales.
2 1 1100 % (1)
3 4 300
Bob
acertarp
1 2 1% (2)
4 3 300
Bob
equivocarp
1 2 1% (3)
4 3 300QBER
1 150 % (4)
4 300
Eve
acertarp
1 150 % (5)
4 300
Eve
equivocarp
Figura 19: La amplificación de privacidad mezcla los bits.
Figura 20: Clave final que se utilizará para encriptar el mensaje a enviar.
9
Simulación computarizada de la transmisión
de una clave cuántica
El programa de simulación se ha escrito en Visual C# y
permite simular el envío de hasta 100 mil fotones.
También simula ruido en la transmisión, logrando corregir
con éxito la clave siempre y cuando el QBER sea menor o
igual que 20% y con una buena probabilidad de éxito si el
QBER está entre 20% y 25%. El programa de simulación
sacrifica el 50% de la clave para calcular el QBER, de esta
manera la mitad de la clave se hace pública y ya no sirve, pero aún queda la otra mitad que solo es conocida por
Alice y Bob.
El programa muestra que es imposible que un espía
obtenga la clave mediante el uso de métodos de ataque
conocidos: MITM y PNS.
Se puede idear variaciones de estos métodos pero todos
modificaran con alguna probabilidad las claves obtenidas
por Alice y Bob, es por eso que si el QBER es mayor que
cierto valor, se descarta la clave y se empieza de nuevo. En
(25) Peter Shor y John Preskill muestran que sin espías se
puede esperar un QBER <11%.
En la Figura 21 se muestra el diagrama de bloques del
programa. Usualmente se recomienda aceptar un error
máximo antes de la corrección (Emáximo) menor que 11% y
un error aceptable en la transmisión (Elímite) menor que
1%, estos parámetros no son constantes en el programa y
el usuario puede usar el que desee con el riesgo que
supone la seguridad. Transmitir con un QBER diferente de
cero significa que algunos caracteres del mensaje
desencriptado por Bob podrían ser erróneos.
NO
SI
Inicio
Alice envía fotones a Bob
Bob recibe fotones de Alice y mide su polarización
Alice y Bob publican sus bases
Alice y Bob construyen sus
claves solo cuando las bases son iguales
Sacrifican la mitad de sus claves y calculan el QBER
QBER > Emáximo Espía detectado
QBER = 0 Clave lista
Reconciliación de
información
Amplificación de
privacidad
Fin
Calculan el QBER
SI
NO
SI
NO
Cantidad de
bloques con
paridades
diferentes = 0
NO
QBER < Elímite
SI
Inician transmisión del mensaje
α
α β β
Figura 21: Diagrama de análisis de Alice y Bob en el programa.
10
Ejemplo de simulación en computadora clásica de
transmisión sin espía y sin ruido
Idealmente la transmisión se realiza sin ruido (%=0%) y
sin ningún espía (%=0%) que potencialmente modifique la polarización original. Como se demuestra en la práctica
esto no es lo común, por ejemplo, pruebas realizadas con
la máquina construida por Henning Weir (26) obtiene un
QBER entre 2.8% y 5.0% (27). Chris Erven (28) obtiene
un QBER promedio de 9.3%. Tobias Schmitt-Manderbach
(29) obtiene un QBER entre 2.86% y 5.85% y Martin
Hendrych (30) utiliza fibra óptica y obtiene un QBER promedio de 0.32%.
Nuestra máquina a diferencia de las construidas en
laboratorios modernos no envía fotones individuales, en su
lugar envía pulsos de fotones, es por eso que se obtiene un
QBER del 0% pero esto no es una buena noticia pues al
enviar un pulso de fotones, también se está expuesto a que espías usando el método PNS logren obtener la clave sin
dificultad y experimentalmente se confirma este temor, de
allí la necesidad que en un proyecto futuro se construya
una fuente de fotones individuales.
El software simula el caso cuando la máquina construida
utiliza una fuente de fotones individuales.
La Figura 22 muestra un ejemplo de envío del mensaje
secreto “Facultad de Ciencias UNI - QKD”.
En este caso para enviar un mensaje de 30 caracteres se
necesita una clave de 240 bits (8 bits por carácter).
Entonces como mínimo Alice debe enviar el doble, pues se sabe que la clave generada es aproximadamente el 50% de
los bits enviados.
Sin embargo para tener suficientes bits para realizar la
corrección de errores se envía muchos más, en este caso el
programa envía 1600 fotones por carácter, 200 veces lo
que se necesita (ver cuadro de texto “Factor”), es decir que
en total enviará 48000 fotones.
Al terminar de generar las claves Alice y Bob obtienen un
QBER de 0% (no es necesaria ninguna reconciliación de
información) y una clave en bruto de 12041 bits, de las cuales solo tomaran los primeros 240 bits para encriptar y
desencriptar el mensaje secreto.
La comunicación entre Alice y Bob se logra con éxito.
El algoritmo utilizado para encriptar y desencriptar es el
que utiliza el operador XOR:
1. Sea el alfabeto11 A={0,1}, un texto en claro12
m=m1m2…mL donde miєA y una clave de la misma
longitud k=k1k2…kL donde kiєA.
2. El algoritmo de encriptación produce el mensaje
encriptado c=c1c2…cL donde ci=mi XOR ki y 1≤i≤L.
3. Para desencriptar se emplea el mismo algoritmo. Se
realiza la operación XOR entre la clave k y el mensaje
encriptado c, obteniéndose el texto en claro m.
11 El alfabeto es el conjunto de símbolos empleados en un sistema de comunicación. 12 Se denomina texto en claro al mensaje escrito de manera legible, que se puede leer y entender. Es el mensaje secreto que
se desea enviar.
Figura 22: El programa simula el envío de fotones polarizados y obtiene una clave cuántica para encriptar mensajes.
11
1 1100%
2 2
Bob
acertarp
Figura 23: Los resultados experimentales confirman que la clave es aproximadamente el 50% de los bits enviados por
Alice.
Se ejecutó varias veces el programa y se graficó para
comparar con el valor teórico (Figura 23).
Probabilísticamente el 50% de la cantidad de bits enviados
por Alice constituyen la clave secreta y según las
ecuaciones 1, 2 y 3 Bob tiene las siguientes probabilidades
de acertar y equivocarse:
Mensaje secreto a enviar: Facultad de Ciencias
Cantidad de bits a enviar: 32000
Teóricamente el resultado es:
Alice Bob
QBER
%
Cantidad
de
bits a
enviar
Longitud Porcent.
% Longitud
Porcent.
%
Aciertos
%
32000 16000 50.00 16000 50.00 100.00 0.00
Al ser un proceso aleatorio en cada simulación se obtiene
una longitud de la clave alrededor del 50% de la cantidad
de bits enviados por Alice, tal como predice la teoría.
Simulación de transmisión con un ruido δ% y ataque
parcial de probabilidad λ
El caso más interesante es cuando la transmisión es
afectada por un ruido % y un espía de capacidad de
interceptación . En la Figura se muestra el programa de simulación que obtiene resultados que coinciden con lo
esperado según las fórmulas probabilísticas 1, 2, 3, 4 y 5.
0%Bob
equivocarp
0%QBER
Figura 24: Teóricamente Eve acierta el 63.75% de la clave (Simulación 64.10%), Bob acierta el 72.92% (Simulación 72.93%) y el QBER es 27.08% (Simulación 26.78%).
12
Se ejecuto varias veces y construyó la Tabla 1. Se observa
que hay una coincidencia total con la teoría.
Mensaje secreto a enviar: Facultad de Ciencias
Cantidad de bits a enviar: 32000
Ataque λ%: Varios valores
Ruido %: Varios valores
Los resultados teóricos se obtuvieron de las fórmulas 1, 2,
3, 4 y 5.
Simulación (%) Teórico (%)
Simu-
lación % % Bob QBER Eve Bob QBER Eve
1 75 15 74.85 24.79 65.41 75.00 25.00 65.00
2 75.00 50 60.52 39.30 56.16 60.42 39.58 56.25
3 75 75 49.60 50.32 50.08 50.00 50.00 50.00
4 50 15 80.20 20.02 60.33 80.00 20.00 60.00
5 50 50 62.60 37.68 54.39 62.50 37.50 54.17
6 50 75 49.47 50.58 50.30 50.00 50.00 50.00
7 25 15 85.12 14.81 54.83 85.00 15.00 55.00
8 25 50 64.76 35.06 51.91 64.58 35.42 52.08
9 25 75 49.73 50.45 50.06 50.00 50.00 50.00
10 30 6 89.23 10.94 57.06 89.10 10.90 56.90
Tabla 1: Comparación de los valores teóricos y simulados
Cuando el QBER es mayor del 11% se supone que existe
un espía y no se transmite el mensaje. Sin embargo el
software está preparado para corregir la clave con éxito
hasta un QBER del 20% y con una buena probabilidad
hasta 25%. Y así lograr una comunicación segura.
Por ejemplo:
Mensaje secreto a enviar: Facultad de Ciencias
Cantidad de bits a enviar: 32000
Ataque λ%: 60%
Ruido %: 15%
Al ejecutar la simulación se obtiene un QBER de 22.48%.
Si en este momento Alice envía el mensaje y Eve y Bob lo
desencriptan obtendrían:
Ninguno logra descifrar el mensaje pues las claves
contienen errores.
Para reducir los errores de las claves se realiza la
reconciliación de información (corrección de errores).
Si se realiza una vez la corrección de error se tendría:
En una segunda corrección vemos que algunos caracteres
del mensaje ya aparecen en la traducción de Bob.
En la tercera corrección la cantidad de caracteres correctos
obtenidos por Bob ha aumentado:
Y en la cuarta corrección Bob logra obtener el mensaje
correctamente mientras que Eve no.
Esto demuestra que el protocolo es bastante efectivo al
momento de corregir las claves, conservando la seguridad.
13
Luego de realizar la reconciliación de información se
procede a la amplificación de privacidad con lo que se
logra que Eve tenga una clave con más errores.
Construcción de la máquina La máquina construida tiene un diseño de funcionamiento
totalmente diferente a las máquinas modernas, y fue ideada
por nosotros debido a los escasos recursos económicos, sin
embargo funciona y demuestra que el protocolo cuántico
BB84 es eficaz.
La máquina consta de 3 partes: el emisor Alice, el canal
cuántico (aire libre) y el receptor Bob. Y utiliza el
portapapeles de Windows como el canal clásico. Además
se ha incluido un canal de interceptación o del espía Eve
para probar la eficiencia de la máquina (Figura 25 y 26).
Distribución de la clave sin espía y sin ruido
1. Láser Helio-Neón, 633 nm, 1 mW, polarizado
linealmente. Utilizado por Alice para enviar la señal a
Bob.
2. Atenuador colocado a la salida del láser, construido
con un polarizador introducido en un soporte que
permite rotarlo. Alice lo utiliza para reducir
controladamente la potencia del pulso enviado.
3. Disco giratorio con 8 aberturas igualmente espaciadas
que actúa como chopper. Lo utiliza Alice para producir
una secuencia periódica de pulsos.
4. Motor a paso que gira el chopper.
5. Disco con 4 polarizadores igualmente espaciados que
utiliza Alice para enviar pulsos láser con las
polarizaciones elegidas al azar.
6. Motor a paso que gira el disco de Alice.
7. Disco con 4 polarizadores igualmente espaciados que
utiliza Bob para medir al azar la polarización del pulso
que recibe.
8. Motor a paso que gira el disco de Bob.
9. Fototransistor que Bob utiliza para detectar el pulso
incidente.
10. Interface electrónica de control: Tienes dos funciones,
recibe órdenes de la computadora para girar los
motores y envía las medidas del fototransistor a la
computadora.
11. Parte lógica del equipo y se encarga de implementar el
protocolo BB84 así como controlar la interfaz
electrónica.
Figura 25: Calibrando la máquina antes de realizar la transmisión.
Figura 26: Vista cercana de los equipos utilizados por Alice y Bob.
Figura 24: La máquina de criptografía construida, comprueba el protocolo cuántico BB84.
ALICE EVE BOB
14
Por ejemplo, para enviar la palabra “UNI” (3 caracteres, 24
bits) se necesitarán 48 bits (Figura 28).
En este caso el tiempo empleado en la distribución de la
clave fue de 187500 ms = 3.125 minutos, obteniéndose el
resultado esperado, se construyo una clave en bruto de 27
bits (56.25% del total). Teóricamente es el 50%. El
software elimina los bits sobrantes y sólo toma en cuenta
los primeros 24 bits necesarios para transmitir el mensaje
secreto UNI.
Distribución de la clave con espía (Photon Number
Splitting) y sin ruido
Sólo se añadió los componentes para implementar al espía
Eve.
12. Soporte fijo con 2 polarizadores. Los usa Eve para
medir al azar las polarizaciones desviadas por los vidrios.
13. Primer fototransistor de Eve. Mide en base rectilínea.
14. Segundo fototransistor de Eve. Mide en base diagonal.
15. Un vidrio delgado que funciona como un
“beamsplitter” que transmite y refleja el pulso láser.
Lo utiliza el intruso Eve para desviar parte del pulso
de fotones enviados por Alice.
16. Otro vidrio que cumple la misma función anterior.
Figura 28: Vista cercana de los equipos utilizados por Eve. Figura 27: La clave creada es la misma para Alice y Bob.
15
Distribución de la clave con espía atenuando la
intensidad del haz láser
Con la atenuación de la intensidad del pulso láser se
disminuye controladamente la cantidad de fotones
transmitidos. De tal forma que Bob y Eve tendrán
dificultades en la detección, sin embargo Eve será el más
afectado pues el vidrio refleja menos del 50%.
El láser tiene una potencia de 1 mW y está polarizado
linealmente. Al colocar el polarizador del atenuador en
paralelo, la potencia de salida se reduce13 a 0.98 mW.
El atenuador permite girar el polarizador un ángulo
entonces la potencia de salida final es 0.98 cos mW.
Se atenuó el láser para observar los efectos en la
generación de la clave en Bob y en el espía Eve. El láser
Helio-Neon tiene longitud de onda de = 633 nm y el tiempo del pulso de la máquina es aproximadamente t =
600 ms. Como c = 3 108 m/s y h = 6.63 10-34 J.s se puede calcular el número de fotones por pulso y tabular el
efecto en las claves de Bob y Eve (Tabla 2).
Se puede observar claramente que a partir de 55º la
interceptación del espía es ineficaz, permitiendo todavía
que Bob obtenga la clave correcta. Esto muestra la
necesidad de utilizar en estos sistemas fuentes láser de
muy baja potencia con, obviamente, detectores de alta
sensibilidad. Esto en el límite conduce a la utilización de
fuentes y detectores de fotones individuales que se están
implementando en la tecnología del mundo desarrollado.
13 Según las características técnicas del polarizador la
transmitancia en paralelo es aproximadamente 98%.
IV. Conclusiones
Se describe la construcción y el funcionamiento de un
primer prototipo experimental en Criptografía Cuántica en el Perú. El equipo básico, cuya electromecánica está
controlada por una PC, es capaz de elaborar una clave
secreta entre el emisor (Alice) y el receptor (Bob)
separados una distancia de 1.5 m. utilizando el protocolo
cuántico BB84.
Para su funcionamiento el aparato, mediante un haz láser,
transmite información (en bits) codificando aleatoriamente
en la polarización de sus fotones definidos en bases
elegidas también aleatoriamente.
Se han deducido las fórmulas probabilísticas que gobiernan
la transmisión de esta información en un equipo ideal que trata individualmente a los fotones.
Mediante un programa escrito en Visual C# se ha
efectuado una simulación en computadora clásica en las
distintas fases del protocolo BB84:
a) El envío de hasta 100 mil fotones en presencia de ruido
y de ataque o intervención de un espía (Eve).
b) La obtención de la clave en bruto (raw key).
c) La determinación de la tasa de error de bits cuánticos
(QBER).
d) La reconciliación de información o corrección de errores.
e) La amplificación de la privacidad.
Con este procedimiento se define una clave totalmente
segura con la cual la información se encripta, se envía y se
desencripta.
Una simplificación de este programa permite monitorear el
prototipo verificando experimentalmente las fórmulas
probabilísticas deducidas. En particular se ha estudiado la
implementación del protocolo en presencia de un espía que
es capaz de dividir el haz láser (Photon Number Splitting),
cuando se efectúa una progresiva atenuación de la potencia del láser, comprobándose la existencia de un límite por
debajo del cual el receptor Bob puede todavía obtener la
clave y definitivamente no lograrlo Eve. Esta observación
está en la dirección de la investigación tecnológica actual
de la Criptografía Cuántica en la que son transmitidos y
detectados fotones individuales para acentuar los efectos
cuánticos.
Bibliografia 1. Feynman, Richard P. Simulating Physics with Computers.
International Journal of Theoretical Physics, Vol. 21, Nos. 6/7, 1982.
2. La máquina de Turing clásica es un modelo matemático de
un dispositivo de cálculo, se propuso en 1936, y es capaz de realizar teóricamente cualquier cálculo matemático. Es la base
del diseño de las computadoras actuales. La máquina de Turing Cuántica es similar a la clásica con la única diferencia
que en vez de usar un bit utiliza un bit cuántico.
3. Shor, Peter W. Algorithms for Quantum Computation:
Discrete Logarithms and Factoring. 35th Annual Symposium on Foundations of Computer Science, 1994.
Tabla 2: Efectos en las claves al reducir la potencia del pulso láser.
16
4. Grover, L. A fast quantum mechanical algorithm for
database search. 28th Annual ACM Symposium on Theory of Computing, 1996.
5. W. Merkel, I. Averbukh, B. Girard, G. Paulus.
Factorization of numbers with physical systems. Fortschritte
der Physik 54, Nos. 8-10, p. 856-865, 2006.
6. Aram W. Harrow, Avinatan Hassidim and Seth Lloyd. Quantum algorithm for solving linear systems of equations.
Universidad de Bristol y MIT, 19 de noviembre del 2008.
7. En 1998, Jonathan A. Jones y Michele Mosca de la Universidad de Oxford construyeron la primera computadora
cuántica de 2 qubits utilizando técnicas de Resonancia Magnetica Nuclear (NMR), ese mismo año Isaac Chuang
(IBM), Neil Gerschenfeld (MIT) y Mark Kubinec (Universidad de Stanford) también construyeron
independientemente una computadora cuántica de 2 qubits
NMR. En el 2000 la Universidad Técnica de Munich presentó una computadora cuántica de 5 qubits NMR. En el 2001 IBM
presentó una computadora cuántica de 7 qubits NMR. En el 2006 el Instituto Cuántico de Waterloo junto al MIT lograron
un computadora cuántico de 12 qubits NMR. Y en el 2009 Robert Schoelkopf, Steven Girvin y Leonardo DiCarlo de la
Universidad de Yale presentaron el, primer procesador cuántico de 2 qubits basado en semiconductores.
8. Negrevergne, T.S. Mahesh, C. A. Ryan, M. Ditty, F.
Cyr-Racine, W. Power, N. Boulant, T. Havel, D.G. Cory and R. Laflamme. Benchmarking quantum control methods
on a 12-qubit system. Universidad de Waterloo- Canada y MIT - USA, 2006.
9. L. DiCarlo, J. M. Chow, J. M. Gambetta, Lev S. Bishop,
B. R. Johnson, D. I., Schuster, J. Majer, A. Blais, L.
Frunzio, S. M. Girvin, and R. J. Schoelkopf. Demonstration of Two-Qubit Algorithms with a
Superconducting Quantum Processor. Departments of Physics and Applied Physics, Yale University, New Haven,
01 de mayo del 2009.
10. C. H. Bennett, G. Brassard. Quantum Cryptography Public Key Distribution and Coin Tossing. International
Conference on Computers, Systems and Signal Processing, diciembre de 1984.
11. C. H. Bennet, G. Brassard. The dawn of a new era for quantum cryptography: The experimental prototype is
12. Tobias Schmitt-Manderbach, HenningWeier, Martin
Fürst, Rupert Ursin, Felix Tiefenbacher, Thomas Scheidl,
Josep Perdigues, Zoran Sodnik, Christian Kurtsiefer,
John G. Rarity, Anton Zeilinger, and Harald Weinfurter. Experimental Demonstration of Free-Space Decoy-State Quantum Key Distribution over 144 km. Physical Review
Letters 98, 05 de enero del 2007.
13. R. Ursin, F. Tiefenbacher, T. Schmitt-Manderbach, H.
Weier, T. Scheid, M. Lindenthal, B. Blauensteiner, T.
Jennewein, J. Perdigues, P. Trojek, B. Ömer, M. Fürst, M.
Meyenburg, J. Rarity, Z. Sodnik, C. Barbieri, H. Weinfurter, A. Zeilinger. Entanglement-based quantum
communication over 144km. Nature Physics, 3 de junio del 2007.
14. Fundada en el 2001 por los físicos Nicolas Gisin,
Grégoire Ribordy, Olivier Guinnard y Hugo Zbinden de la Universidad de Ginebra en Suiza (www.idquantique.com).
Otras empresas son MagiQ Technologies en New York (www.magiqtech.com) y SmartQuantum. en Francia
(www.smartquantum.com).
15. Donna Dodson (NIST), Mikio Fujiwara (NICT),
Philippe Grangier (CNRS), Masahito Hayashi (Tohoku