- Timestamp:
- 11/01/08 16:01:10 (2 months ago)
- Files:
-
- 1 modified
-
ext/MD5-Digest/md5.perl5 (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
ext/MD5-Digest/md5.perl5
r22845 r22846 14 14 = (0x01234567, 0x89ABCDEF, 0xFEDCBA98, 0x76543210); 15 15 16 my $original_string = "";16 my $original_string = ''; 17 17 18 18 my @bits = split '', unpack 'B*', $original_string; … … 20 20 push @bits, 1; 21 21 push @bits, 0 until @bits % 512 == 448; 22 push @bits, split "", sprintf "%064b", $unpadded_message_bit_length; 22 push @bits, split "", 23 scalar reverse sprintf "%064b", 24 $unpadded_message_bit_length; 23 25 24 26 my @chunks; … … 29 31 my @chunk = @{$chunkref}; 30 32 my @w; 31 push @w, oct(join '', '0b', splice(@chunk, 0, 32)) while @chunk; 33 push @w, oct(join '', '0b', reverse splice(@chunk, 0, 32)) 34 while @chunk; 32 35 33 36 my ($a, $b, $c, $d) = ($h0, $h1, $h2, $h3); … … 55 58 } 56 59 57 my $digest = sprintf "%08x"x4, $h0, $h1, $h2, $h3; 60 my $digest 61 = join '', map { scalar reverse sprintf "%08x", $_ } $h0, $h1, $h2, $h3; 58 62 print $digest, "\n"; 59 63
