What effect will quantum computing have on cryptography?
Quantum computers have amazing potential to either revolutionise the ways in which we encrypt and secure data; or to throw the security of our data into jeopardy.
Quantum computers are able to perform certain advanced mathematical tasks with ease. This could vastly improve data security, as they will be able to handle much more complex encryption algorithms than our current computers can take. However, it could also vastly decrease it, as the public-key algorithms that we rely on to encrypt most of our data are not thought to be secure against an attack by a quantum computer, which is extremely worrying.
The most popular public-key algorithm used today to encrypt data is RSA. RSA uses a pair of keys, known as the public key and private key, to secure data. Anyone who has your public key can use it to encrypt a piece of data, but it cannot be decrypted without your private key, which, as the name suggests, is private and should never be shared with anyone. This also works in reverse to create something known as a digital signature – you can use your private key to digitally sign a document, and anyone with your public key can verify that your private key was used to sign the document. However, if the document is modified at all, the signature will become invalid, making them useful to guarantee the integrity of a file after transmission. Public keys can be distributed freely without any risk, whilst private keys should always be kept secret. For example, below is a copy of my public key, which I use to digitally sign my emails:
(This key can also be retrieved from the MIT GPG Public Keyserver: http://pgp.mit.edu/pks/lookup?op=get&search=0x244366CC8EE275F3)
The longer an RSA key is, the harder it is to break into, but the longer it will take to encrypt or decrypt data with it. The largest RSA keys currently in use are 4096 bytes, which is 4KB. Quantum computers are expected to be able to break through keys that are over 1TB in size, which is 1 billion kilobytes, in only days. For a regular computer, this would take longer than the predicted lifespan of the universe. This is very concerning, as it will render our current methods of encrypting data useless. For example, breaking through a key with the same length as the one shown above may take a fraction of a second.