tags:

views:

92

answers:

3

I'm developing a network API to interact with a legacy server, and I need a little help figuring out which hashing function they're using. The original developers are not particularly responsive to my queries, so I thought that SO might help me out.

This is a low-security, internal corporate network, so the hash isn't complicated. So far, I have determined that plaintext "ashafer" is hashed into 0xfd1873ca

So, I'm trying to identify a simple hash function that turns strings into 32-bit hex numbers. Any ideas?

A: 

Do you know what language the legacy server was written in? For example, it could be "the default .NET hash code implementation" (or ditto for Java). Let's hope not, as you're really not meant to use them like that, but it's a possibility...

Jon Skeet
+1  A: 

Crc32 do it. Obviously it is not md5 or shaX (all of them are 128)

Oops, just checked.. crc32 "ashafer"=0x6074acb4

Dewfy
No, it's 0xfd1873ca.
+3  A: 

If I put "ashafer" into http://boldizsar.palotas.eu/crypto.php , it returns 4246238154 for the crc-32, which is 0xfd1873ca in hex, so they're using plain old crc-32.

David
That's it - thanks!
Drew Shafer