I'm trying to learn about SHA-1, I was looking at the C implementation that was included in the specification (RFC 31741) and this part confuses me:
context->Intermediate_Hash[0] = 0x67452301; context->Intermediate_Hash[1] = 0xEFCDAB89; context->Intermediate_Hash[2] = 0x98BADCFE; context->Intermediate_Hash[3] = 0x10325476; context->Intermediate_Hash[4] = 0xC3D2E1F0;
What are the significance of those hard coded hex values, are they just special sauce that makes the algorithm work, or do they represent some mathematical constants?
You can view the full code here: http://www.faqs.org/rfcs/rfc3174.html