> Replacing the algorithm won't change anything to the problem, and adding a
> salt is not difficult at all. If i have some time i will try to work on it.
I agree. SHA-256 is just as concrete a 1-way hash algo as MD5. Hashing a certain string will still always predictably produce a certain hash result, so hackers can easily work backwards to get the password.
The common practice (for a very long time now) is to salt it. In fact, financial institutions even store the salt somewhere else, somewhere really safe.
> It is critical to protect those hashes from dictionary attacks by attackers
> who obtained those hashes. ... like anyone using the webtool could do.
But wouldn't webtool also yield the salt as well?
But still, I agree that salting the password would make dictionary attacks exponentially arduous. For a certain password, it is stored differently (thanks to random salt) in each instance where it is stored (say 2 or more users happen to like the same password). Therefore, for each hash stored in the database, an attack would have to do additional computation (dictionary attack has to be completely recoded, actually).
For common needs, salting will adequately make dictionary attacks expensive (or impossible).
It is incredibly easy to do dictionary attacks on un-salted password hashes.