First working version. pbkdf2 is RFC compliant, perhaps a bit slower