Quantum computing is quickly changing our perspective on technology and cryptography. In this video, you’ll learn the basics of quantum computing and how our cryptography changes when using quantum computing.

<<** Previous Video:** Steganography **Next:** Stream and Block Ciphers >>

An emerging technology in computing is quantum computing. This is computing based on quantum physics rather than being based on classical physics that uses 1s and 0s. This is not an upgrade to your existing computing system, but a type of computing that’s used alongside of our existing computers. This is an entirely new way of performing calculations.

With our traditional computers, we use classical mechanics, which uses bits. Those bits are 0s and 1s, and we can apply algorithms towards those 1s and 0s to come up with a solution to a particular problem. With quantum computing, we no longer have bits.

We have something called quantum bits, or qubits. These bits are not 1s, and they’re not 0s, but instead, they exist somewhere in the middle between 1 and 0. They are effectively a 0 and a 1 at the same time, and therein lies some of the complexities surrounding quantum mechanics.

Let’s compare classical computing to quantum computing. In our classical computing, we might want to perform a binary calculation with four separate bits, and we can take any combination of those four bits to come up with a value. For example, we can combine all of the different permutations of those four bits, and we can look at every combination of those four bits to come up with 16 separate unique values.

With quantum computing, we can represent all 16 of those individual classic bits as four individual qubits because all of those are both 0 and 1 simultaneously. So if it only takes four individual qubits to represent 16 values, we can start to scale this up very quickly. For example, if we had eight different qubits, that would represent 256 values. If we had 16 qubits, that represents 65,536 values. And if we look at 32 qubits, we now have over 4 billion values that are represented by a relatively small number of qubits.

It’s the scalability that provides some of the biggest potential advantages for quantum computing. This could, for example, allow us to search through enormous amounts of data in a very short period of time. This would change medical technology, it might allow us to change the way we’re able to predict the weather, this could have an impact in astrophysics, and so much more.

One place that quantum computing has a direct effect on technology with this scaling is cryptography. Today, we use very large prime numbers to be able to create the complexity required to keep all of our data encrypted. But what if you had a quantum computer that was able to perform these very large calculations in a very short period of time? This would effectively render all of our existing cryptography useless because our quantum computers would be able to brute force all of our encrypted data very, very quickly.

A description of how this could be done with quantum computing was created by Peter Shor. He created what’s called Shor’s algorithm in 1994, where he looked at how we were using prime numbers and came up with a way that you could greatly shorten the process of being able to factor this information. This could take processes that would effectively take longer than the lifetime of the universe and make them something very feasible to use with quantum computing.

Fortunately, researchers are already looking at new ways to provide cryptography in this new world of quantum computing. One of the ways to do this is with NTRU. This is a new way of performing encryption with quantum computing that instead of using very large prime numbers uses a closest vector problem. This is a problem that is still difficult for quantum computing to calculate and would be a very viable way to provide encryption. Researchers are also putting together other ideas that will help us maintain the privacy and encryption technologies we need, even in this newer generation of quantum computing.

One interesting characteristic of quantum computing is that if you examine the quantum bits, you will effectively be changing those quantum bits. This means that we can send information over a quantum network, and on the other side, we’re able to tell if anyone was monitoring that conversation. This is especially useful if you want to distribute encryption keys.

You might want to use Quantum Key Distribution, or QKD. This allows us to send our encryption keys across the network to the other side without the worry of someone being able to intercept that key somewhere in the middle. We would send that random string of qubits, which was effectively our encryption key, across that quantum network channel.

Once the key is received, both sides can verify that key, and if it’s identical, then no one viewed that key during the transmission process. However, if someone was to monitor that conversation, it would change the keys that were received on the other side, and those two keys would not verify. This greatly changes the processes and procedures we use for encryption, and we’ll want to keep a close eye on quantum computing as this technology matures.