I'm using MySql 5.5.32 and trying to reproduce some code in a stored procedure that we have in the business layer so I can set passwords for people using sql
. It appears that there is something wrong with the SHA2 function though, but maybe I'm missing something:
SELECT length(SHA2("bob", 512))
Returns 128. Shouldn't it be 64?
SELECT length(SHA2("bob", 256))
Which returns 64, so it appears that either I missing something, or there is a bug in SHA2. Any ideas?
Comment was correct, even though the docs say that it returns binary string, it returns hex encoded string. To get the correct length use:
SELECT length(unhex(SHA2("bob", 512)));