Since I was asked a couple times, here are my references.
Brown, Julian - "Minds, Machines, and the Multivers: The Quest for the Quantum Computer"
Williams, Colin P. and Clearwater Scott H. - "Explorations in Quantum Computing"
Simon Singh, - "The Code Book"
I also have a computational physics degree and would reference the text books if I currently had access to them (so yes, I'm also referencing my ass that sat through 4 years of physics classes).
There's also the obligatory wiki references.
Quantum cryptography does not use cubits. The photon used to exchange keys are specifically polarized. They are not in a superposition of polarizations. The "quantum" part comes in because, when a polarized photon hits a polarization screen that is at a 45 degree angle to the photon's polarization, there is exactly a 50% chance that the photon will go through due to quantum mechanics.
It is possible to use a photon as a qubit but it is very limiting. You have to have qubits that will interact with eachother. That is difficult with photons. You also have to have some way of storing them. A photon is very difficult to trap.
Some other methods of qubits are Heteropolymer (plastic), Ion Trap, Cavity QED and NMR.
Heteropolymer uses a laser pulse at specific energies to excite the outer electrons in plastic atoms to either an excited state or superposition of excited and ground states. We have these. The problem again is getting them to interact as needed.
Ion Traps use electromagnetic fields to trap a single ionized atom. The ions can in a grounded state or excited state. Ion trap qubits provide a method for interaction but they can only interact with their neighboring qubit. This method has been used to create an 8 qubit quantum computer.
Cavity QED (Quantum Electrodynamics) uses the polarization of photons for the qubits. We've got an XOR gate for this, but, as stated before, it's hard to store a photon.
NMR (Nuclear Magnetic Resonance) uses a sample of some liquid. Each atom in the liquid ends up being a qubit by using the spin of nucleus of one of the atoms in the molecules. It uses current technology (similar to MRI) and just about any liquid can be used. However, it's not an isolated system so it decoheres extremely fast (it naturally exits it's state of superposition).
According to D-wave systems (a company that sells quantum computers), superconductors can also be used for qubits. Using supercooled aluminum and niobium to cause the electrons to form Cooper pairs (bosons) which can be used as qubits. I don't know a lot about that method but you can read about it at D-wave QC hardware and Wiki: Superconducting QC
Heisenberg was driving down the road and got pulled over. The cop asks him, "Do you have any idea how fast you were going?" Heisenberg replies, "No, but I know exactly where I am!"