我需要了解Md5哈希算法.我正在阅读文件,并说明
"消息被"填充"(扩展),使得它的长度(以位为单位)与448一致,模512.也就是说,消息被扩展,使得它只是64位,是512位长的倍数.即使消息的长度已经达到448,模512,也始终执行填充."
我需要理解这简单来说意味着什么,特别是448模512. MODULO这个词就是问题.我会很感激这个简单的例子.有趣的是,这是MD5哈希的第一步!:)
谢谢
小智 10
Modulo或mod,是一个函数,当两个数字相互分开时,它会告诉您余数.
例如:
5模3:
5/3 = 1,剩余2个.所以5 mod 3是2.
10模16 = 10,因为16不能.
15模5 = 0,因为15进5正好3次.15是5的倍数.
回到学校你会得到这个"剩余"或"遗留",模数只是一种奇特的说法.
这里的意思是,当你使用MD5时,首先发生的事情之一就是你填充你的信息,这样就够了.在MD5的情况下,您的消息必须是n位,其中n =(512*z)+448,z是任意数字.
例如,如果你有一个1472位长的文件,那么你就可以将它用作MD5哈希,因为1472模512 = 448.如果文件是1400位长,那么你需要填入在运行MD5算法的其余部分之前,额外的72位.