mirror of
https://github.com/phpseclib/phpseclib.git
synced 2024-11-14 17:34:07 +00:00
parent
c5a9ee5234
commit
2026b0c0db
@ -575,10 +575,10 @@ class Hash
|
|||||||
// For the last chunk: pad to 32-byte boundary, endian-adjust,
|
// For the last chunk: pad to 32-byte boundary, endian-adjust,
|
||||||
// NH hash and add bit-length. Concatenate the result to Y.
|
// NH hash and add bit-length. Concatenate the result to Y.
|
||||||
//
|
//
|
||||||
$length = strlen($m[$i]);
|
$length = count($m) ? strlen($m[$i]) : 0;
|
||||||
$pad = 32 - ($length % 32);
|
$pad = 32 - ($length % 32);
|
||||||
$pad = max(32, $length + $pad % 32);
|
$pad = max(32, $length + $pad % 32);
|
||||||
$m[$i] = str_pad($m[$i], $pad, "\0"); // zeropad
|
$m[$i] = str_pad(isset($m[$i]) ? $m[$i] : '', $pad, "\0"); // zeropad
|
||||||
$m[$i] = pack('N*', ...unpack('V*', $m[$i])); // ENDIAN-SWAP
|
$m[$i] = pack('N*', ...unpack('V*', $m[$i])); // ENDIAN-SWAP
|
||||||
|
|
||||||
$y .= static::nh($k, $m[$i], new BigInteger($length * 8));
|
$y .= static::nh($k, $m[$i], new BigInteger($length * 8));
|
||||||
|
Loading…
Reference in New Issue
Block a user