why there's a three-bit shift when padding initial length in md5 algorithm

Viewed 51
// append the len in bits at the end of the buffer.
to_bytes(initial_len*8, msg + new_len);
// initial_len>>29 == initial_len*8>>32, but avoids overflow.
to_bytes(initial_len>>29, msg + new_len + 4);

the code is from https://github.com/pod32g/MD5/blob/master/md5.c

0 Answers
Related