4e74bcdf70 | ||
---|---|---|
.. | ||
.vscode | ||
img | ||
KeyDistribution_BB84.csproj | ||
KeyDistribution_BB84.ipynb | ||
KeyDistribution_BB84.sln | ||
README.md | ||
ReferenceImplementation.qs | ||
Tasks.qs | ||
Tests.qs | ||
Workbook_KeyDistribution_BB84.ipynb |
README.md
Welcome!
The Quantum Key Distribution kata is a series of exercises designed to teach you about a neat quantum technology where you can use qubits to exchange secure cryptographic keys. In particular, you will work through implementing and testing a quantum key distribution protocol called BB84.
Background
What does a key distribution protocol look like in general? Normally there are two parties, commonly referred to as Alice and Bob, who want to share a random, secret string of bits called a key. This key can then be used for a variety of different cryptographic protocols like encryption or authentication. Quantum versions of key exchange protocols look very similar, and utilize qubits as a way to securely transmit the bit string.
You can see in the figure above that Alice and Bob have two connections, one quantum channel and one bidirectional classical channel. In this kata you will simulate what happens on the quantum channel by preparing and measuring a sequence of qubits and then perform classical operations to transform the measurement results to a usable, binary key.
There are a variety of different quantum key distribution protocols, however the most common is called BB84 after the initials of the authors and the year it was published. It is used in many existing commercial quantum key distribution devices that implement BB84 with single photons as the qubits.