[论文解读] General Framework for Evaluating Password Complexity and Strength
本文提出了一套形式化框架,通过建模攻击者行为(包括计算资源、先验知识以及如摩尔定律所示的演化能力),以区分并计算密码的复杂度与强度。该框架引入了FAT-strength,一种基于假设检验的方法,通过存储函数、攻击者计算能力及用户定义的时间限制来估算破解时间,从而提供比传统熵或启发式方法更准确、更现实的度量方式。
Although it is common for users to select bad passwords that can be easily cracked by attackers, password-based authentication remains the most widely-used method. To encourage users to select good passwords, enterprises often enforce policies. Such policies have been proven to be ineffectual in practice. Accurate assessment of a password's resistance to cracking attacks is still an unsolved problem, and our work addresses this challenge. Although the best way to determine how difficult it may be to crack a user-selected password is to check its resistance to cracking attacks employed by attackers in the wild, implementing such a strategy at an enterprise would be infeasible in practice. We first formalize the concepts of password complexity and strength with concrete definitions emphasizing their differences. Our framework captures human biases and many known techniques attackers use to recover stolen credentials in real life, such as brute-force attacks. Building on our definitions, we develop a general framework for calculating password complexity and strength that could be used in practice. Our approach is based on the key insight that an attacker's success at cracking a password must be defined by its available computational resources, time, function used to store that password, as well as the topology that bounds that attacker's search space based on that attacker's available inputs, transformations it can use to tweak and explore its inputs, and the path of exploration which can be based on the attacker's perceived probability of success. We also provide a general framework for assessing the accuracy of password complexity and strength estimators that can be used to compare other tools available in the wild.
研究动机与目标
- 正式区分并定义密码复杂度与强度,解决文献中长期存在的混淆问题。
- 解决准确估算密码在真实世界破解攻击中抵抗能力的持续挑战。
- 开发一个实用框架,整合攻击者能力、先验知识及演化技术(如摩尔定律)。
- 通过标准化的评估机制,实现对现有密码强度估算器的客观比较。
- 通过评估密码保护系统的强度,支持安全存储与认证。
提出的方法
- 明确定义密码复杂度与强度,明确建模攻击者约束:计算能力、时间、先验知识以及密码存储函数。
- 引入基于拓扑的模型以表示攻击者搜索空间,受先验知识与转换规则的限制。
- 采用基于链式法则的复杂度计算方法,结合规则排列,以估算密码熵的下限与上限。
- 通过假设检验开发FAT-strength:H₁(FAT-strong)与H₀(非FAT-strong),基于破解时间、攻击者计算能力s(t)及用户定义的T。
- 将摩尔定律融入s(t),以建模随时间推移的计算能力增长,实现动态强度估算。
- 将框架泛化以支持各种密码保护方法(如单向哈希)及认证系统。
实验结果
研究问题
- RQ1如何以一种反映真实世界攻击者行为的方式,正式区分并定义密码复杂度与强度?
- RQ2人类偏见及已知的攻击技术(如变形词典、马尔可夫模型)对密码破解抵抗能力有何影响?
- RQ3在计算能力持续演化的背景下(如摩尔定律所预测),如何准确估算破解时间?
- RQ4能否构建一个统一框架,以评估和比较现有的密码强度估算工具?
- RQ5该框架如何应用于评估存储密码保护信息的系统安全性?
主要发现
- 该框架正式区分了复杂度(基于字符集、长度、对称性)与强度(包含攻击者能力与存储方法),解决了长期存在的概念混淆问题。
- 通过基于规则与转换的拓扑结构建模攻击者搜索空间,该框架提供了考虑人类偏见的复杂度下限估计。
- FAT-strength度量基于公式(7)的假设检验,结合攻击者计算能力s(t)、用户定义的破解时间T及存储函数F,以判断密码是否具有密码学强度。
- 模型预测,到2045年,攻击者计算能力可能比2015年高出32,768倍,除非使用更强的密码,否则破解时间将显著缩短。
- 该框架通过提供标准化、以攻击者为中心的评估机制,实现了对现有密码强度计的比较。
- 该方法通过允许将用户特定数据(如社交媒体信息)整合到规则集Ξ中,提升了强度估算的现实性,支持实际部署。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。