More hacking, broke pbkdf2, and now fixed it again