Quantum computing uses quantum bits (qubits) that can exist in superpositions of states rather than just 1s and 0s. This allows quantum computers to perform exponentially more calculations in parallel than classical computers. Some of the main challenges to building quantum computers are preventing qubit decoherence from environmental interference, developing effective error correction methods, and observing outputs without corrupting data. Quantum computers may one day be able to break current encryption methods and solve optimization problems much faster than classical computers.