Every time you log in to a website, your password is not stored in plain text — it is run through a function whose output reveals nothing useful about its input. Every time you send an encrypted message, a key is derived using operations that your adversary cannot feasibly undo. The invisible foundation of all of this is the idea of a one-way function.
A one-way function is a function f that is:
- Easy to compute: given any input x, you can calculate f(x) in polynomial time.
- Hard to invert: given only f(x), recovering any pre-image x' such that f(x') = f(x) is computationally infeasible — it would take more time than the age of the universe for realistic input sizes.
The striking thing about one-way functions is that we do not know whether they exist. Their existence has never been proven. The best candidates — squaring modulo a large composite, evaluating a cryptographic hash, multiplying large primes — are widely believed to be one-way, but no proof is in sight.
This is not a minor technicality. If one-way functions do not exist, then P = NP, and modern cryptography collapses entirely. Their existence would imply P ≠ NP, one of the deepest open problems in mathematics. In other words, the security of the internet rests on a conjecture we cannot prove.
See P vs NP for why separating these two complexity classes is so profound.
Comments
Loading comments...