Software Diagnostics and Conformance Testing Division home page

SCREENSHOTS

Home | Screenshots | QCSim | genadder | Qhdl2Jaq/Jaq2Qhdl | Generate | Download

The following shows QCSim, jaQuzzi, Qhdl2Jaq, and Jaq2Qhdl at work simulating the BB84 Secure Quantum Communication Protocol. BB84 involves shared secret key creation by two parties (Alice and Bob) in the presence of an eavesdropper (Eve). See Quantum Computing and Cryptography for a more detailed explanation of the protocol. At the bottom is a 2-bit wide adder produced by genadder.

We first use jaQuzzi to create a quantum circuit simulating transfer of one qubit using BB84.

jaQuzzi screen capture

We can use Jaq2Qhdl to convert this into QHDL format...

BB84 in QHDL format

If we wish to see the JAQ format, we can use Qhdl2Jaq to convert back to JAQ format...

BB84 in .jaq format

We can then use QCSim to simulate our quantum circuit. We print only the density matrix for the two pertinent qubits: whether Alice and Bob chose the same basis (BasesEq) and whether Bob got the wrong information (Error). The output matches the theoretical BB84 results. That is, we see that half the key bits are discarded because Alice and Bob use a different basis. Of the qubits that Alice and Bob use the same basis to measure, 1/4 were altered by Eve's intervention, so we see a 25% error rate.

qcsim output

A simple circuit produced by genadder is a 2-bit wide adder. It uses six qubits: inp0, inp1, sum0, sum1, anc0, and carryOut. The input is inp0/1 and sum0/1. The output is sum0, sum1, and carryOut. The least significant bits are at the top.

a 2-bit wide adder circuit


Send comments to: webmaster-sdct
Privacy Policy

Created Fri Jul 11 2003
by Andrew Lane

Updated Mon Apr 11 09:52:28 2005
by Paul E. Black

This page's URL is: http://hissa.nist.gov/~black/Quantum/screenshots.html