Cryptography problem: make an invertible, easy-in-both-directions function from [0...2^256 - 1] to [0...2^256 - 2] (or more generally, -k for small k) where the exceptions to the invertibility are computationally infeasible to find.
Has there been any work on this?