I had the same question; I don't know the answer yet, but I found a location for the answer <a href="http://www.openbsd.org/papers/bcrypt-paper.ps" rel="nofollow">http://www.openbsd.org/papers/bcrypt-paper.ps</a><p>The documentation for py-bcrypt ( <a href="http://www.mindrot.org/projects/py-bcrypt/" rel="nofollow">http://www.mindrot.org/projects/py-bcrypt/</a>) doesn't explain what happens, but shows use is very very easy.<p>EDIT: current guess is that searching for the salt that was used might be part of what makes it hard.