Själv har jag löst det genom att saltet är ett slumpmässigt antal bytes som läggs på och som inte behöver sparas separat. Antalet salt-bytes kan räknas fram "baklänges" vid verifieringen om lösenordet som ska testas bara är av rätt längd.
Vill inte posta min kod här men något liknande finns
här (.NET).