I need to extract SHA1 Passwords from a Microsoft SQL Server database in order to use them in an external system.
When I do a simple select query for a known password, I get this result (password is "password"):
SHA1 hashing is done on bytes, not on characters, therefore it's important to make sure that the conversion from characters to bytes is done with an agreed upon encoding.
5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8 is the SHA1 hash of
password encoded in ASCII/UTF-8.
5b9febc2d7429c8f2002721484a71a84c12730c7 is the SHA1 hash of
password encoded in UTF-16-BE.
To fix this, pick one encoding, and change whatever code is using the other encoding to match.