Introducción:
La criptografía cuántica representa un fascinante avance en el mundo de la seguridad de la información. Un protocolo clave en este campo es el BB84, que utiliza principios cuánticos para facilitar la distribución segura de claves. En este artículo, exploraremos el código de un simulador BB84 y su relevancia en la criptografía cuántica.
¿Qué es el Protocolo BB84?
El protocolo BB84, propuesto por Charles Bennett y Gilles Brassard en 1984, aprovecha las propiedades cuánticas de las partículas subatómicas para crear un canal de comunicación seguro. En lugar de utilizar algoritmos complejos, BB84 utiliza qubits y la superposición cuántica para garantizar la seguridad en la transmisión de información.
Simulando el Protocolo sin Infiltrados:
En la primera parte de nuestro código, simulamos el escenario ideal: Alice transmite qubits a Bob sin la interferencia de un infiltrado. El código muestra cómo Alice y Bob eligen bases aleatorias para codificar y medir sus qubits. La clave esperada coincide con la clave obtenida, demostrando la seguridad del canal cuántico.
Simulando el Protocolo con Infiltrados:
En la segunda parte, introducimos a Eve, un infiltrado que intenta interceptar los qubits en tránsito. El código revela las acciones de Eve al medir los qubits y la consiguiente alteración de la clave. La discrepancia entre la clave esperada y la obtenida revela la presencia de un infiltrado, destacando la vulnerabilidad del canal cuando un tercero interviene.
Relevancia en la Criptografía Cuántica:
- Seguridad Cuántica: El BB84 muestra cómo la mecánica cuántica puede garantizar la seguridad en la transmisión de información. La propiedad de entrelazamiento cuántico permite detectar cualquier interferencia de un tercero.
- Imposibilidad de Clonar: El teorema de no clonación cuántica subyacente al BB84 establece que es imposible copiar estados cuánticos desconocidos. Esto impide que un infiltrado realice copias exactas de los qubits sin ser detectado.
- Detección de Infiltrados: El protocolo BB84 proporciona un mecanismo para detectar la presencia de infiltrados, ya que cualquier interferencia se refleja en las discrepancias entre las claves esperadas y obtenidas.
Explorando el codigo
Funciones Principales:
- make_bb84_circ: Esta función crea un circuito cuántico BB84 con base en las bases y estados aleatorios de Alice y Bob. En el escenario con un infiltrado, se utiliza para simular las acciones de Eve en la interceptación y transmisión de qubits.
- bitstring: Transforma una lista de bits en una cadena binaria. Se utiliza para representar las claves esperadas y obtenidas en formato legible.
- print_results: Imprime los resultados de la simulación, incluyendo las bases de Alice y Bob, los bits de Alice, la coincidencia de bases, y las claves esperadas y obtenidas.
Escenario 1: No Infiltrado:
En este escenario, Alice y Bob generan aleatoriamente sus bases y estados cuánticos. El código simula la transmisión segura de qubits, mostrando cómo Alice prepara sus qubits y Bob los mide. La clave esperada y obtenida coinciden, validando la seguridad del canal.
Simulando protocolo no infiltrado
0: ───X───H───H───M───
1: ───X───H───H───M───
2: ───H───M───────────
3: ───X───H───M───────
4: ───X───H───M───────
5: ───H───M───────────
6: ───X───H───M───────
7: ───M───────────────
Base de Alice: HHHHCHHC
Base de Bob: HHCCHCCC
BIts de ALice: 11011010
Las bases concuerdan:: XX_____X
Llave esperada: 110
Llave recibida: 110
Escenario 2: Con Infiltrado:
En este escenario, presentamos a Eve, un infiltrado que intenta interceptar la comunicación cuántica. El código simula la intervención de Eve, mostrando cómo intercepta y modifica los qubits antes de que Bob los reciba. La discrepancia entre la clave esperada y obtenida revela la presencia de Eve y demuestra cómo la criptografía cuántica puede detectar intrusiones.
Simulando protocolo infiltrado
0: ───X───M───────X───M───────────
1: ───H───H───M───H───H───M───────
2: ───X───H───M───X───H───H───M───
3: ───X───M───────X───H───M───────
4: ───X───H───M───X───H───H───M───
5: ───X───H───M───H───M───────────
6: ───M───────────H───M───────────
7: ───H───H───M───H───H───M───────
Base de Alice: CHCCCHCH
Base de Bob: CHHHHHHH
BIts de ALice: 10111100
Las bases concuerdan:: XX___X_X
Llave esperada: 1010
Llave recibida: 1000
Conclusión:
La criptografía cuántica, como se ilustra en el Protocolo BB84, representa un salto significativo hacia la seguridad informática del futuro. La capacidad de garantizar la seguridad de las comunicaciones mediante principios cuánticos abre nuevas posibilidades para la protección de la información en la era de la computación cuántica. Este código y su explicación ofrecen una visión práctica de cómo la teoría cuántica puede aplicarse para crear canales de comunicación seguros e inviolables.
0 Comentarios