密码并没有消亡
去年,互联网上充斥着新闻报道,称大型科技公司联合起来要消除密码。一些创业公司甚至宣布密码已经过时和过时。
去年,互联网上充斥着新闻报道,称大型科技公司联合起来要消除密码。一些创业公司甚至宣布密码已经过时和过时。
去年,在网络上充斥着新闻报道说,像苹果,谷歌和微软这样的大型科技公司正在联合起来消除密码。一些创业公司甚至宣布密码已经过时和陈旧。当我深入研究身份管理领域几个月后,我开始质疑这些声明的有效性和实用性。
乍看之下,答案似乎显而易见:密码被用于登录和验证身份。然而,如果我们考虑到密码不能真正第验证你是谁,我对此的看法就有所不同了:
实际上,密码的目的是匿名地证明某物的所有权:用户账号,设备或门的接入权限。
前面提到的公司提出了各种“密码杀手”。很多人声称,他们提出比在身份验证过程中记住复杂、静态密码更安全的替代方案。然而,这些替代方案大多数并不完全实用,无法完全移除密码。
FIDO (快速身份线上认证),在其官方文档中解释的身份验证方法,利用公钥加密技术进行注册和登录 (值得注意的是,WebAuthn 是 FIDO2 规范的核心组成部分)。表面上看,这个过程似乎很吸引人:
简单,对吗?可惜,现在还有一个大问题在阻碍我们:兼容性。相比传统的"标识符和密码"组合,FIDO 身份认证需要:
一旦无法满足其中的任何要求,FIDO 身份认证就无法使用,只能fallback到其他的方法。
此外,即使所有的条件都满足了,什么才算是设备上的"用户友好的校验机制"呢?目前,这可能包括指纹或面部识别等生物识别方法,并配备如 PIN 码(也就是密码)这样的备选选项,最终我们又回到了原点。
从技术上讲,它不是一个"密码杀手",更象是一个通过密码装备的更安全和更用户友好的身份验证或验证流程。
尽管名字包含了“密码”这个词,但一次性密码 (OTP)并不是传统的密码,因为它们是动态的。OTP主要有两种类型:
TOTP 可能并不被大多数人知晓。例如,当一个网站提示让你设置MFA,并让你使用像 Google Authenticator 或 Duo 这样的应用通过扫描一个QR码时,你很可能就是在使用 TOTP。你可能也会注意到,通常网站会显示一个长长的"恢复代码",并建议你提前保存,因为它只会被显示一次。有的网站甚至鼓励用户将其打印出来。本质上,这个恢复码的功能就如同一个长密码。
至于短信/电子邮件 OTP,他们通常是昂贵且不稳定:
"生物识别"这个词指的是仅通过生物识别方法进行在线验证。实际上,和其他方式相比有一个基本的区别:生物识别将原本的"证明你拥有某物"的任务转变为"证明你是谁"。由于隐私问题,生物识别方法主要被用于本地身份验证。
如我们所见,"密码杀手"基本上指的是隐藏密码或者以密码作为后备选项。基于我们的讨论,这里是一些密码优点的总结:
但是每一面都有两个面,密码尽管有优点,但是仅依赖密码进行认证存在着显著的脆弱之处。它们对于终端用户来说难以管理,如果网站所有者没有遵循适当的安全实践,密码将会很容易被破解。危险的安全实践包括但不限于:
我的目的不是贬低上述的任何一种身份验证的方法。相反,当我在构建 Logto 的时候,我对这些杰出的身份验证方法和他们背后的人们产生了深深的敬意。
然而,实现100%的安全是一个无法达到的目标。我们可以奋斗的是降低攻击的可能性。一种有效的办法是结合基于密码的认证和基于当前设备或环境的一次性密码,这种方式多了一层额外的验证,获得了广泛的应用。通过利用不同认证技术的优势,我们可以创建一个层次化的方法,提供更强的保护。
总的来说,当密码实际上并没有被消除,更多聚焦于"密码杀手"这种热词,不如将更多注意力放在在安全与用户体验之间达到平衡问题。这需要理解各种认证的方法的优点和局限性,并以确保用户数据安全和无缝的用户体验的方式来实现它们。