Everything that is done on the internet in today’s world is secured, either by a simple password or a complex encryption algorithm. This makes the data secure and gives privacy and security to people and their data. These passwords or encryption algorithms work because they depend on factoring very large numbers that can take millions of years to crack on traditional computers, and the more secure ones could possibly not even be cracked by them within the life of the universe itself. With the rise of hype in the field of quantum computing, with more and more companies and countries investing in this new technology, it is predicted that when these computers are built efficiently enough, they will easily be able to crack almost any encryption thrown at them.
Computers today store and process all of their information in binary number format; ie; 1s and Os. This is because they work on electricity, and that can have only two states, whether a current is present (1) or not present (0). Each of these 1s and Os are called bits. Whenever any function is run on a computer, all the information is broken down into binary, and are manipulated using boolean logic, after which the output is converted back from binary into something we can understand. Thus, a computer has only 2 possible states, 0 and 1, and the speed of operations depends on how fast these states can be manipulated.
On the other hand, the fundamental unit of a quantum computer is a quantum bit, or a qubit in short. What makes qubits different from a normal bit is that they can exist either in the state of 0, a state of 1, or a state or quantum superposition of both. The workings of this are really complex, but a way of saying it is that the bits exist in our universe as well as other universes. When an operation is performed from one bit to another, the operation is performed in all universes at the same time, thus greatly increasing the efficiency and power of quantum computers as compared to traditional computers. Furthermore, when we have a quantum computer of x bits, the number of states it can be, as determined by quantum mechanics, is 2* states.
Popular methods on encryption and security in place today:
- Hashing: More specifically, one way hashing – this is when the data is taken in and a hash of a specific length is generated. This type of hashing is irreversible and the data can in no way be obtained back from the hash. This function gives a different hash for every single different file, so no two files (even if they have a single bit different) will have the same hash. The only method to try and get the data is to brute force every possible combination (works in case of text usually short), hash it and compare to the original. Would take up to hundreds of years to crack simple phrases or words. Example – MD5 hashing.
- Public-key encryption – The client and server both have different private and public keys. The data is encrypted using the private key and then the private key is encrypted using the public key. Thus only the party intended can decrypt the information making it secure. One of the first and most practical implementations of this is RSA, which is one of world’s most used encryption on the internet. A regular computer would take upto millions of years to be able to crack well secured RSA encryption.
While traditional computers are limited to being able to perform only one computation at any given instant, quantum computers can perform multiple computations at the same instant. This is because a qubit consists of different superpositions of the states, and under the multiple worlds interpretation of quantum physics, these states all exist in different universes. Hence, when a computation is to be done, it happens on every single state in the different universes at the same time. This is what makes quantum computers much faster.
It is an algorithm for finding factors of very large numbers, designed to be run on a quantum computer. The complexity of an algorithm to factor a number on a traditional computer is O(n), whereas on a quantum computer running Shor’s algorithm it is O((log N)3), which means that it is much, much faster than your traditional computer. It is said that Shor’s algorithm could factor a number with a billion digits faster than a traditional computer could factor a number with a thousand digits. This gives us a scope of the potential of quantum computers.