RFC 1321 中 MD5 轮定义中括号的含义?
Meaning of Brackets in MD5 round definition in RFC 1321?
我正在尝试编写一个执行 MD5 散列算法的程序。我主要使用 RFC 1321 作为编写程序的参考。在回合中,它给出了一系列计算,每个计算都使用不同的格式。 (这可能不是最好的解释,但我不认为很好地解释这一点对我的问题特别重要。) 我已经以第 1 轮的格式为例:
a = b + ((a + F(b,c,d) + X[k] + T[i]) <<< s)
我不太确定如何解释等式中的方括号。 (这就是 X[k]。) 在前面的术语和符号部分中,它说 XY 表示 X 和 Y 的按位与;那是什么意思?
或者,它是否类似于数组索引,意味着从数字中获取 1 或 0?
或者,它是否表示其他含义?
任何澄清将不胜感激。
在该公式上方一点,您会发现这个定义
Let T[i]
denote the i-th
element of the table
因此,为了保持一致性,可以安全地假设 X[k]
表示 X
的 k-th
元素
我正在尝试编写一个执行 MD5 散列算法的程序。我主要使用 RFC 1321 作为编写程序的参考。在回合中,它给出了一系列计算,每个计算都使用不同的格式。 (这可能不是最好的解释,但我不认为很好地解释这一点对我的问题特别重要。) 我已经以第 1 轮的格式为例:
a = b + ((a + F(b,c,d) + X[k] + T[i]) <<< s)
我不太确定如何解释等式中的方括号。 (这就是 X[k]。) 在前面的术语和符号部分中,它说 XY 表示 X 和 Y 的按位与;那是什么意思?
或者,它是否类似于数组索引,意味着从数字中获取 1 或 0?
或者,它是否表示其他含义?
任何澄清将不胜感激。
在该公式上方一点,您会发现这个定义
Let
T[i]
denote thei-th
element of the table
因此,为了保持一致性,可以安全地假设 X[k]
表示 X
k-th
元素