1

Mangler 函数将 32 位作为输入,并将其扩展为 48 位。它打破了 8 个 4 位块中的 32 位,并将左右位连接到每个块。我的问题是这个。前四位块从哪里获得左侧位?它会从最后一块的最后一点开始吗?或者它会简单地连接一个 0。这也适用于最后 4 位块,除非它们需要获得不存在的正确位。

谢谢

4

1 回答 1

4

扩展函数从最后一个“块”中获取最后一位并将其添加到第一个“块”中,最后一个“块”从第一个“块”中的最左边获取其最右边的位。

   32 位 => 48 位
--------------------------------
 1 2 3 4 => 32   1 2 3 4   5 
 5 6 7 8 =>   4   5   6 7 8   9 
 9 10 11 12 =>   8   9 10 11 12  13 
13 14 15 16 => 12 13 14 15 16  17 
17 18 19 20 => 16 17 18 19 20  21 
21 22 23 24 => 20 21 22 23 24  25 
25 26 27 28 => 24 25 26 27 28  29 
29 30 31 32 => 28 29 30 31 32   1

这张图很清楚地表明了这一点:

在此处输入图像描述

于 2013-03-15T23:30:16.303 回答