5 ms·
You send a photon with the polarization giving the bit: Basis +: | = 0, — = 1, Basis x: / = 0, \ = 1 You randomly choose a basis for each photon, but don't t
by programjames 3y ago
You send a photon with the polarization giving the bit:
Basis +: | = 0, — = 1,
Basis x: / = 0, \ = 1
You randomly choose a basis for each photon, but don't tell the receiver which basis it is until they receive the photon. They randomly choose a basis to decode on, and once learning the correct one discard the bit if they mismatch.
The key thing is an eavesdropper wouldn't know the correct basis either. If they try to "pass along the photon" they'll re-encode it in the wrong basis half the time, so the receiver will end up with the wrong bit when it should be correct (25% of the time). The sender can share some of the correct bits, and if the receiver has too many errors it's likely someone is eavesdropping.
Now, what bits do you actually send? Probably something like a "Learning With Errors" (LWE) cryptography key (as quantum computers kill RSA). Then you can transfer your actually data over classical communications. The quantum part is just the handshake at the beginning. If you detect eavesdropping you just send a new key over.
The current limitations are:
1. It's really slow. It can take seconds to send a 1,000 bit key just 1km (figure 4, 10.1109/PHOTONICS49561.2019.00010).
2. You need a single photon source so the eavesdropper cannot pass along photons while reading the message. It also has to be "heralded", i.e. you need to know when that photon gets sent. Right now these are pretty slow to generate.
3. The error rate has to be really low, otherwise you can't detect eavesdropping.
4. Your detection system can't have backscattering/other side-channel attacks. To detect single photons, people usually use "avalanche detectors", where the photon excites an electron, which goes on to excite many more due to a potential difference in a p-n junction. However this also creates small flashes every time a photon hits it.
- staunton 3y agoJust to drop the name, we're talking about quantum key distribution (QKD). > Now, what bits do you actually send? You just send random bits and get a key. Then use the key however you want (AES, one-time-pad if you're crazy...). I guess that's actually the same as what you were saying... > It can take seconds to send a 1,000 bit key just 1km Toshiba marketing claims "13.7 Mb/s over a fiber distance of 10 km" [1]. I'm sure they also have a paper somewhere. > You need a single photon source No, people use "Decoy States", which allows you to use a "normal" weak pulsed laser. There is also continuous variable QKD which does not need single photons. You can use single photons (and some implementations do) but it's not mandatory. [1]: https://www.global.toshiba/ww/products-solutions/security-ict/qkd/why.html https://www.global.toshiba/ww/products-solutions/security-ic...
- programjames 3y agoThanks for the corrections