Use the new password hashing APIs in DataProtection.

/cc @HaoK
I don't think this PR has been rebased after pranav's change yet, so this will probably go away as a merge conflict