There's a simple cryptography scheme that no amount of computer power can ever crack: one-time pad encryption.
How it works: add a random sequence of numbers to 2 pads of paper, each sheet having a number printed on it, and send one copy to the recipient ahead of time. To use, combine the random number in sequence with a number representing a character to encode. Then destroy that sheet of paper. Decryption is the reverse. As long as the pad is truly random, is never reused, and only the recipient has a copy, then the encryption can never ever be cracked using any method.
Yeah that's real practical when I do my online banking, thanks for that.
It is only partly true the one-pad encryption is unbreakable. The real impact is there is no second message to decrypt if the first one is broken. The big problem is the transmission of the number to the recipient. Now we are back into the world of couriers, stealing the pad(s), moles, spies, etc. So the system is not really feasible in today's high speed world of information. For single transactions with time to get the number securely to the recipient, yes. To handle the millions of banking or security transactions a day, no.
That is true, but the problem is getting the recipient the one-time pad with high probability that noone else gets it.
There are actually encryptions schemes that are not crackable no matter how much computing power you have. Plus even for many of the ones that are crackable it takes vastly more computing power to crack it than it does to use it practically.
The operation you're doing is an exclusive or, XOR. If you XOR x with y to get z, then XOR z with y again, you get x back. The problems with one-time pads are the distribution system, the security of the pads, and synching-up the key usage in a secure manner.
Also, one-time-pads are not usually used to authenticate, which is also an important part of online banking. But I guess your system could say to the bank "I'm user X and I'm about to use pad ID #19782356" and then send some known data, like the user account name, and then authentication passes if what you send comes out when decrypted at the other end.