Python libraries used: Numpy, Matplotlib, Qiskit.
In this piece of work:
-
Studied the BB84 protocol using the code from https://qiskit.org/textbook/ch-algorithms/quantum-key-distribution.html. Both the cases, with interception from an eavesdropper, and without interception from the eavesdropper, were explored. The code in the notebook ceases after 'key sifting' has been performed. Code for parameter estimation and error correction was not executed in this notebook. The code for parameter estimation is still present although it has been commented out. This notebook can be used hand in hand with the original BB84 paper(https://arxiv.org/abs/2003.06557) to attain a basic undertstanding of the protocol.
-
A very handy plot relating the probability of detecting the eavesdropper and the number of bits drawn from the sifted keys was also plotted.
The relevant Jupyter Notebook containing the code and the aforementioned plot have been attached.
If you need any more information/explanation related to the code, don't hesitate to contact me.