口令与密钥派生
更多
口令是由用户记忆或输入的秘密文本;密钥派生函数将口令和其他参数转换为固定长度的密钥材料。口令验证、数据加密与密钥派生是相关但不同的用途。口令本身通常不直接具备随机密钥的熵。
PBKDF2 的组成
PBKDF2 以口令、盐值、迭代次数、伪随机函数和输出长度为参数。盐值使相同口令在不同记录中产生不同输出;迭代次数增加每次猜测的计算成本。盐值不必保密,但应随验证记录保存。参数变化会改变派生结果。
| 参数 | 作用 |
|---|---|
| 口令 | 提供秘密输入。 |
| 盐值 | 区分不同记录或用途。 |
| 迭代次数 | 规定重复计算次数。 |
| 输出长度 | 规定派生材料的字节数。 |
普通快速散列函数与专用口令处理方法不能互换。MD5 或 SHA 摘要直接作用于口令时,缺少专门口令派生方案的成本参数;加密密钥和口令验证值也不应混作相同用途。