tags:

views:

220

answers:

2

I have a list of passwords in mySQL that are generated using

$hash = '{SHA}' . base64_encode(sha1('some string here', true));

I need to convert these into what would be the equivalent of

$hash = sha1('some string here');

As these are password that our mail system uses, and we want to convert to another mail system (but requires that it be the 40 char hex hash :(

How would I convert from one format to the other (I'm pretty sure I've done this before, but the other way, though I can't find the code!)

As a note, I mentioned that the data is in mySQL - this is irrelevant - I know how to get the data, just not to convert it.

The hash is the same - I am only trying to convert the way the information is packed (I think this just needs to be converted from base64 to base16, but that's just a guess!)

A: 

Well base64_decode() can be found in the base64_encode manual entry.
And I am sure they have a way to convert raw format in the sha1 manual entry comments, if it's too hard for you to write it yourself

Col. Shrapnel
I'm not converting hashes, just the way the hashes are packed.
Mez
yeah, I was reading too fast
Col. Shrapnel
+7  A: 
$binary = base64_decode(substr($hash, 5));
$hex = bin2hex($binary);
ZZ Coder
Stack overflow - the place for answers when you have a brain fart! - cheers... will accept when it lets me
Mez