【发布时间】:2011-01-28 18:30:27
【问题描述】:
要为 WPA2 网络生成有效的成对主密钥,路由器使用 PBKDF2-HMAC-SHA1 算法。我知道 sha1 函数执行了 4096 次来导出 PMK,但是我对这个过程有两个问题。
请原谅伪代码。
1) SHA1 函数的第一个实例的输入是如何格式化的? SHA1("network_name"+"network_name_length"+"network_password")
它是按那个顺序格式化的,是网络名称、长度和密码的十六进制值还是直接的 ASCII?
然后根据我收集到的 160 位摘要,直接将其送入另一轮散列,而无需任何额外的加盐。像这样:SHA1("160bit digest from last round of hashing") 上升并重复。
2) 一旦发生这种情况,输出的 4096 乘以 256 位将用作成对主密钥。我不明白的是,如果 SHA1 产生 160 位输出,那么算法如何达到密钥所需的 256 位?
感谢您的帮助。
【问题讨论】: