关于MD5状态变量的问题
我正在研究MD5算法。我发现有四个状态变量(我不确定这意味着什么)。这些变量是 0x67452301 、 0xEFCDAB89 、 0x98BADCFE 和 0x10325476 。我将变量转换为小数,分别得到 1732584193、4023233417、2562383102 和 271733878。
我的问题是,为什么是这些数字?它们是特殊数字吗?
I am studying MD5 algorithm. I found out that there are four state variables (I am not sure what that means). Those variables are 0x67452301 , 0xEFCDAB89, 0x98BADCFE, and 0x10325476. I converted variables to decimals and came up with 1732584193, 4023233417, 2562383102, and 271733878 resepectively.
my question is, why those numbers? Are they special numbers?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
请参阅 RFC 1321,第 3.3 节:
他们选择的数字只是按顺序升序和降序的单个十六进制数字(这似乎是一组令人愉快的任意初始值)。
由于他们首先写入低位字节,因此当您在右侧写入最低有效字节时,您会得到0x67452301等。
See RFC 1321, section 3.3:
The numbers they picked are just ascending and descending single hexadecimal digits, in order (which seems to be a delightfully arbitrary set of initial values).
Since they wrote the low-order bytes first, when you write it with the least significant bytes on the right, you get 0x67452301, etc.