Source: /cirosantilli/bb84

= BB84
{c}
{wiki}

Does not require <entangled particles>, unlike <E91> which does.

https://en.wikipedia.org/w/index.php?title=Quantum_key_distribution&oldid=1079513227\#BB84_protocol:_Charles_H._Bennett_and_Gilles_Brassard_(1984) explains it well. Basically:
* Alice and Bob randomly select a measurement basis of either 90 degrees and 45 degrees for each <photon>
* Alice measures each photon. There are two possible results to either measurement basis: parallel or perpendicular, representing values 0 or 1. TODO understand better: weren't the possible results supposed to be pass or non-pass? She writes down the results, and sends the (now <wave function collapse>[collapsed]) photons forward to Bob.
* Bob measures the photons and writes down the results
* Alice and Bob communicate to one another their randomly chosen measurement bases over the unencrypted classic channel.

  This channel must be authenticated to prevent <man-in-the-middle>. The only way to do this authentication that makes sense is to use a <pre-shared key> to create <message authentication codes>. Using <public-key cryptography> for a <digital signature> would be pointless, since the only advantage of <QKD> is to avoid using <public-key cryptography> in the first place.
* they drop all photons for which they picked different basis. The measurements of those which were in the same basis are the key. Because they are in the same basis, their results must always be the same in an ideal system.
* if there is an eavesdropper on the line, the results of measurements on the same basis can differ.

  Unfortunately, this can also happen due to imperfections in the system.

  Alice and Bob must decide what level of error is above the system's imperfections and implies that an attacker is listening.