加载中...
密钥派生函数是一类从口令或初始密钥材料生成一个或多个密码学密钥的算法。常见如PBKDF2、scrypt、Argon2,通过加盐和多次迭代提升对暴力破解的抵抗力,广泛用于密码存储。

| 中文名 | 密钥派生函数 |
| 外文名 | Key Derivation Function |
| 简称 | KDF |
| 常见算法 | PBKDF2、scrypt、Argon2 |
| 关键机制 | 加盐、迭代、内存开销 |
| 主要用途 | 口令存储、密钥推导 |
密钥派生函数(Key Derivation Function,简称KDF)是一类密码学函数,用于从口令、主密钥或其他初始密钥材料中推导出一个或多个符合要求的密码学密钥。它在口令存储和密钥管理中扮演关键角色。
用户设置的口令往往长度不足、熵值偏低,不能直接作为加密密钥。KDF通过引入盐值(salt)、迭代次数或内存开销等参数,把弱口令转化为强度更高的密钥,同时大幅提升攻击者暴力破解的成本。用于存储密码时,系统保存的是KDF输出而非明文口令。
常见的密钥派生函数包括PBKDF2、bcrypt、scrypt以及2015年密码哈希竞赛的优胜者Argon2,后者被视为目前口令哈希的推荐选择。
KDF被广泛用于用户密码的安全存储、磁盘加密(由口令派生主密钥)、密码管理器主密码保护,以及从共享密钥中派生多个会话子密钥的协议设计中。
问:KDF和普通哈希函数有什么区别?答:普通哈希追求速度,而口令KDF刻意放慢并消耗资源,以抵抗暴力破解。用SHA-256直接存密码不安全,必须使用专门的KDF。
问:迭代次数越高越好吗?答:迭代越多,破解越慢,但也会增加正常登录的服务器开销。应在安全性与性能之间权衡,并随硬件进步逐步提高参数。

| 中文名 | 密钥派生函数 |
| 外文名 | Key Derivation Function |
| 简称 | KDF |
| 常见算法 | PBKDF2、scrypt、Argon2 |
| 关键机制 | 加盐、迭代、内存开销 |
| 主要用途 | 口令存储、密钥推导 |
登录 后参与讨论
暂无讨论,来发表第一条评论吧