$b = ($b + (($a + $f + $k[$i] + $w[$g]) << $r[$i])) % (2**32);
Might not give the right result. "The result of overflowing the range of the integers is undefined" according to the docs. You need to do the proper masking *before* the shift, not after.
In reply to Re^3: MD5 -- not digest::md5
by ikegami
in thread MD5 -- not digest::md5
by Oromis92
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |