资讯详情

资讯详情

OPRF应用之OPAQUE增强型口令认证密钥交换协议【5】

摘要本文是对RFC 9807所描述的增强型口令认证密钥交换协议OPAQUE的学习与梳理包括1协议整体执行流程、2注册方案和在线认证方案、3关键模块OPRF与3DH。文章保留了原标准的章节对应关系方便对照RFC原文阅读。关键词口令认证、OPAQUE、OPRF、aPAKE、3DH、密钥交换本文导读这是啥——这是RFC 9807 OPAQUE协议的配套学习笔记先总览、再分模块、最后看流程适合对照原文阅读也适合想快速搞懂原理的读者通读一遍。哪个读——密码协议研究者、安全开发工程师以及正在学习PAKE、OPRF的童鞋。阅读前建议先了解OPRF不经意伪随机函数可参考RFC 9497和DH密钥交换。啷个读——建议先看第2章的架构总览建立两个阶段和三条消息的整体印象再按兴趣深入第3、4章的两个关键模块第6、7章是完整的注册和登录流程完整详情可以随时配套阅读RFC原文。结算——OPAQUE用OPRF把口令隐蔽起来让服务器在看不到口令的情况下仍能和客户端完成双向认证并协商出会话密钥即使服务器数据库泄露攻击者也无法用彩虹表等手段批量破解口令。8. RFC9807其余章节速览本章概要介绍RFC 9807中前面没有展开的章节细节请回查原文。标准配置原文第7章标准给出三套推荐配置安全级别均为128位。一是ristretto255-SHA512OPRF用ristretto255群、杂凑用SHA-512、KSF推荐Argon2id二是P256-SHA256OPRF用NIST P-256、杂凑SHA-256、KSF推荐Argon2id三是P256-SHA256搭配scrypt用于兼容旧环境。应用考虑原文第8章凭证标识符credential_identifier是客户端凭证的唯一句柄可绑定用户名或邮箱简化时可直接取client_identity配置上下文参数可防止跨协议攻击变更口令只能重新走注册还可以通过门限OPRF实现分布式服务器增强抗泄露能力。实现注意事项原文第9章所有私钥和中间值要及时从内存清除密码运算采用恒时实现以防时序侧信道对未注册用户的伪造响应要保持时序一致可配合速率限制抵御在线口令猜测。安全特性与设计考量原文第10章协议保证口令对服务器不可见、抗离线字典攻击、无PKI依赖、双向认证、前向安全和防用户枚举。相比学术原型JKX18工程版做了多项改进信封改为由客户端构造、增加掩码密钥防枚举、用3DH替代HMQV以简化实现、完善了wire格式与测试向量以支持互操作。附录A备选密钥恢复机制介绍除标准方法外的其他密钥恢复路径详情见原文。附录B备选AKE实例给出HMQV和SIGMA-I两种可替换的AKE实例概要详情见原文。附录C测试向量提供完整的真实测试向量和伪造测试向量可用于校验实现是否正确详情见原文。学习总结与建议OPAQUE设计思想用OPRF把口令变成只有客户端能还原以及服务器能参与计算的盲值再把这个盲值作为长期密钥执行标准的3DH密钥交换从而同时实现口令不落地和双向认证/前向安全。两个阶段注册阶段把口令经OPRF、KSF、Extract加工成randomized_password再派生出信封、掩码密钥和客户端长期密钥登录阶段重复同样的派生路径恢复这些材料再用它们完成3DH密钥派生3DH的三个共享秘密拼成ikm经Extract得到prk会话密钥直接从prk派生握手秘密也从prk派生两个MAC密钥再挂在握手秘密下面。工程实现私钥与中间值及时清内存、密码运算恒时、对未注册用户返回时序一致的伪造响应、用慢哈希抬高离线猜测成本。推荐的学习路线先看第2章总览建立整体印象再学第3章OPRF理解口令如何被盲化接着看第6.3节信封理解凭证及其保护最后是第4章3DH把密钥协商和双向认证串起来。延伸阅读RFC 9497OPRF、RFC 9380Hash-to-Curve、OPAQUE原始学术论文JKX18以及其他aPAKE方案的对比帮助理解OPAQUE在设计上的取舍。
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →