To generate every possible hash would be ... impractical.
To work backwards from any given hash is also incredibly labor intensive.
Of the two, which is less impossible? Why?
To generate every possible hash would be ... impractical.
To work backwards from any given hash is also incredibly labor intensive.
Of the two, which is less impossible? Why?
The latter is the less impossible.
Actually it's not at all mathematically impossible to invert SHA-256. There's no natural law saying we can't, it's just as you rightly point out, a bit hard at the moment. However that current difficulty does not preclude us doing it in the future. A practical quantum computer, an IPhone10 or some breakthrough in analysis might enable us to simply invert the hash. All of MD5, SHA-0 and ~65 rounds of SHA-1 have been compromised, not counting recently published SHA-1 collisions.
As for generating all 10^77 possible SHA-256 outputs, we can perform all sorts of mathematical estimates of the resources required. There's an excellent question along similar lines here. In summary, we can't with our available physical resources. Ever. (There is an interesting issue here in that there may not actually be 10^77 or 2^256 actual outputs, as the hash function may not be surjective. This is discussed here.)
Hence the former is impossible whilst the latter is currently difficult. Your question is very similar to one regarding Impossibility vs implaussiblity.