Suppose I first define some function f(x) where x is some unsigned 256-bit integer, and the function's output is a set of distinct strings of any length so that output set would be 2^256 unique strings, i.e. a bijection for the specified domain of x.
Example f(x) = 0xAA || x || 0xBB
(||
indicates byte concatenation), but it could also be more complex like f(x) = 0xAA || g(x) || 0xBB
.
Then, if I plugged that function into some Hash_256 function, like so: Hash_256(f(x))
, could a quantum computer reveal a matching f(x)
for some known output of the composite function, and that in 2^128 attempts? By treating the composite function as the "black box" function and do a quantum search on x, would that work?
Context: Bitcoin addresses, trying to answer my own question here. It is really a message template search against 160-bit hash that I'm after.