我打算对我的帐户进行年度密码更改,并尝试了各种网站(微软、lastpass 等)来尝试假设的密码。有些网站在评估密码强度方面似乎比其他网站更彻底,但这让我想知道是否有任何网站考虑了摩尔定律。也就是说,有人听说“破解 X 密码需要 130,000 年”,但这是否考虑到计算机的速度大约每两年翻一番?
我真的很想知道这些网站是否考虑到这一点,或者是否有人可以建议这样做的任何网站?
我打算对我的帐户进行年度密码更改,并尝试了各种网站(微软、lastpass 等)来尝试假设的密码。有些网站在评估密码强度方面似乎比其他网站更彻底,但这让我想知道是否有任何网站考虑了摩尔定律。也就是说,有人听说“破解 X 密码需要 130,000 年”,但这是否考虑到计算机的速度大约每两年翻一番?
我真的很想知道这些网站是否考虑到这一点,或者是否有人可以建议这样做的任何网站?
这些计算都没有真正考虑到道德法则。但是让我们看看我们是否可以说明为什么我们不必这样做:
摩尔定律指出,处理能力每 18 个月翻一番(不完全,但足以满足我们的目的)。
这意味着今天是 13 万年,18 个月后将是 6.5 万年。在 36 个月内达到 32.5k,依此类推。
我们可以为此提出一个等式!
cost-at-time = cost-today * 0.5 ^ (months / 18)
所以今天插入成本,我们可以看到这个漂亮的图表(x 是年):
y = 130000 * .5 ^ (x / 1.5)
那么,让我们看看 13 万年密码在 50 年后的成本是多少:
y = 130000 * .5 ^ (50 / 1.5)
y = 130000 * .5 ^ 33.3333
y = 0.000012 years (~6.3 minutes)
这是相当快的!
10年怎么样?
y = 130000 * .5 ^ (10 / 1.5)
y = 130000 * .5 ^ 15
y = 1279 years
还是蛮强的。。。
然而。它还忽略了可调整算法的要点,例如 bcrypt 和 scrypt,这些算法旨在能够击败摩尔定律。
因此,如果您使用 bcrypt、scrypt 或 PBKDF2,并不断调整成本以使其在恒定时间内运行,那么您今天需要 13 万年才能破解(估计)的密码,在 50 年内仍然需要 13 万年才能破解。
现在,当然这并不能解决攻击者今天窃取密码哈希并在接下来的 50 年中攻击它的情况......但我不得不问,你的密码是什么来保护加密书呆子将花费下一个50年试图进攻吗?