Quantum computers can break many of today’s modern public key cryptosystems. Hence there are lots of three and four letter agencies in governments around the world who are very interested in getting a quantum computer built. (If we put our paranoid hats on, we can ask: are there any countries that are pursuing a secret project for quantum computing? Is it beyond possibility that China, for example, has a secret quantum computing project, and that they will beat the rest of the world to building a quantum computer? Could this be the next Sputnik? OK, enough paranoid mode!) What will the sensitive nature of quantum computers current killer application, breaking public key cryptosystems, mean for researchers in quantum computation? Will it mean that the first large scale quantum computers, when they are built, will have restricted access? Will all hell break loose once quantum computers which can break today’s public key cryptosystems? I’m not just thinking about spy versus spy schemes, but instead, I’m thinking about financial transactions, online use of credit cards, and the whole of the electronic economy. Sometimes it feels like it is a shame that the main attention grabbing algorithm for quantum computers is factoring. Other times, I think about the above line of reasoning, as it scares the bejesus out of me.
How will we make the transition from a world where public key cryptosystems are no longer secure? Will we use the unbroken cryptosystems (lattice based, and linear decoding based?) which have drawbacks which are fairly severe? Will we install quantum key distribution into our networks? And will this transition be gradual, or will it hit like a shockwave, as serious size quantum computers get built over a short span of time?
Interestingly, I don’t think the quantum computing community has had a serious dialogue about these issues. At least not that I know of. Sure we talk about these things over lunches in quantum groups around the world, but is there any consensus over how the public quantum computing community should deal with these issues?