BB84 Protocol

The first quantum key distribution protocol, using single photons in two conjugate bases.


BB84 is the original QKD protocol, proposed by Charles Bennett and Gilles Brassard in 1984. It remains the most widely implemented QKD scheme.

The Setup

Alice wants to share a secret key with Bob. Eve (eavesdropper) may try to intercept.

The Two Bases

BasisStatesBit Values
Rectilinear (+), 0, 1
Diagonal (×), 0, 1

Key insight: Measuring in the wrong basis gives random results.

The Protocol

Step 1: Quantum Transmission

Alice, for each bit:

  1. Randomly chooses basis (+ or ×)
  2. Randomly chooses bit value (0 or 1)
  3. Sends corresponding photon to Bob

Bob, for each received photon:

  1. Randomly chooses basis (+ or ×)
  2. Measures and records result

Step 2: Sifting (Basis Reconciliation)

Over public channel:

  1. Alice and Bob announce their bases (not results!)
  2. Keep only bits where bases matched
  3. Discard the rest (~50% of bits)

Step 3: Error Estimation

  1. Randomly select and compare some key bits (publicly)
  2. Calculate error rate
  3. If error rate > threshold: abort (eavesdropper detected!)

Step 4: Post-Processing

  1. Error correction: Fix remaining errors
  2. Privacy amplification: Shrink key to remove Eve’s information

Why It’s Secure

If Eve Intercepts and Resends

Eve doesn’t know Alice’s basis. She must guess:

  • Guess correctly (50%): No disturbance
  • Guess wrong (50%): Introduces 25% error in that bit

Overall: Eve’s interception causes ~25% error rate in intercepted bits.

Detection

If Alice and Bob see error rate > 11% (theoretical threshold), they know Eve was present and abort.

Example

Alice's bits:    1    0    1    1    0    0    1    0
Alice's bases:   +    ×    +    ×    ×    +    ×    +
States sent:    |1⟩  |+⟩  |1⟩  |-⟩  |+⟩  |0⟩  |-⟩  |0⟩

Bob's bases:     ×    ×    +    +    ×    +    ×    ×
Bob's results:   ?    0    1    ?    0    0    1    ?

Matching bases:       ✓    ✓         ✓    ✓    ✓
Sifted key:          0    1         0    0    1

Bob’s “?” indicates random result (wrong basis).

Practical Implementations

Photon Sources

  • Weak coherent pulses (attenuated laser)
  • Single-photon sources (better but harder)
  • Decoy states (detect photon-number attacks)

Challenges

  • Photon loss over distance
  • Detector dark counts
  • Timing synchronization
  • Side-channel attacks

Variants

ProtocolImprovement
Decoy-state BB84Defeats photon-number splitting attacks
BBM92Entanglement-based version
SARG04Better for weak coherent pulses

See also: Quantum Key Distribution, E91 Protocol, No-Cloning Theorem, Wiesner State