bcrypt via cemerick/friend