Although hash functions should not be able to go from hash to original (they should not be able to be reversed, and they should be one way), it is not possible to know with certainty that a particular hash function is, in fact one-way. In the past, encryption algorithms that were thought to be unbreakable have been broken by cryptographers.
maybe im misunderstanding something.
if i hash a 1 megabyte (or 8 megabits) text document and hash down to a 128 bit hash, how can that be reversed? ie more bits in the original than in the hash. information is thrown away, yes?