Im Notfall dem gespeicherten Hash ein Prefix/Kennung mitgeben, womit gehasht wurde, da kannst du dann mehrere Verfahren parallel laufen lassen und auch "alte" Hashs unterstützen.
Bei MD5/SHA1 bin ich zum Schluß dazu übergegangen die
API der crypt32.dll zu kapseln/nutzen.