密码终结者:FIDO身份验证标准来袭

简介:

很多在线服务无法保护用户密码免受攻击者的攻击威胁,同时,密码作为身份验证方式存在固有弱点,这正迫使政府和IT行业构建可行的长期的替代方案。

美国增强国家网络安全委员会希望看到“到2021年,能够消除因身份作为攻击主要方式(特别是使用密码)的重大数据泄露事故”。这是一个雄心勃勃的目标,因为根据Verizon公司2016年数据泄露事故调查报告显示,在所有成功的数据泄露事故中,63%都可追溯到使用不当的密码。对于使用密码作为身份验证的固有问题,这将需要我们开发和广泛部署更好的身份验证技术,但IT行业一直无法开发替代密码的技术,而现在FIDO身份验证标准等新发展已经开始改变这一局面。

密码的可用性和可部署性优势是它被长期使用的主要原因,但要求用户记住更长更复杂的密码不现实。根据英国信贷参考机构Experian plc研究显示,在2012年,平均每个英国人拥有25个在线账户,25-34岁的人拥有超过40个账户。另一方面,尽管强大的身份验证产品已经存在多年,成本、缺乏互操作性、供应商锁定以及用户使用不便等问题使它们没有得到广泛部署。同时,使用图像识别(用户识别图片而不是输入密码)的做法提供的优势没有比密码好很多,而虹膜识别等可提供显著安全优势的解决方案通常太昂贵或者使用不方便。

为了解决强验证技术之间缺乏互操作性的问题,在2012年7月,Paypal、联想和Nok Nok实验室等公司成立了线上快速身份验证(FIDO)联盟,其目的是定义一组开放标准和规范,以帮助多因素身份验证应该平衡安全性与可用性、隐私和互操作性。在2013年,谷歌、Yubico和NXP为强有力第二因素设备制定的开放标准并入FIDO联盟,在2014年年底,1.0版FIDO标准发布。那么,什么是FIDO,它的工作原理是什么,它能否取代密码?

FIDO是设备为中心的模型,但它不是为任何特定身份验证技术而设计。它将身份验证服务器与特定验证模型分离,这意味着我们可更改身份验证方法或提供商,而不会影响应用性能。它提供两种方式来验证用户身份:Passwordless UX--使用通用验证框架(UAF)协议以及Second Factor UX--使用通用第二因素(U2F)协议(UX代表用户体验)。在未来版本中,FIDO希望这两个标准可进一步发展和协调。

通过Passwordless UX,用户通过选择本地身份验证机制向在线服务注册其设备。这可以是生物特征,例如刷指纹、自拍或者对麦克风说话。在注册后,用户可在对服务进行身份验证时重复上述过程,而不需要密码。在线服务也可要求多因素身份验证机制,例如生物特征(例如指纹或语音扫描)以及知识(例如密码或PIN)。现在很多设备都有高像素相机、麦克风和指纹读取器,这比以往任何时候都更容易通过生物身份验证来在两方之间建立信任。

Second Factor UX涉及使用密码或PIN以及符合FIDO的硬件设备来支持双因素身份验证:PIN或密码作为第一因素,而设备的所有权是第二因素。在登录时,系统会提示用户插入并触摸其个人U2F设备,用户的FIDO设备会创建新的密钥对,公钥与在线服务共享并与用户账户相关联。随后,该服务可要求注册设备通过密钥来验证用户身份。目前可移动USB令牌非常流行,还有很多其他选项,包括受信平台模块、嵌入式安全元件、智能卡、蓝牙低功耗和近场通信(NFC)芯片等。这意味着攻击者将需要窃取用户的登录凭证以及其U2F设备才能获取账户或者应用登录。

FIDO UAF身份验证凭证从不与在线服务提供商共享,仅提供与用户设备配对的公钥。这可避免当服务提供商受攻击时用户账户或个人数据泄露的情况。同时,FIDO身份验证中使用的生物识别信息也不会离开用户设备,设备也不会发出任何信息可被其他在线服务使用来协作以及追踪用户,即使相同设备可用于登录很多服务。

FIDO正迅速成为全球公认的认证标志。FIDO联盟现在拥有来自世界各地250多名成员,其中包括技术公司、设备制造商、银行和医疗保健公司、所有主流支付卡网络,还有政府以及安全及生物识别供应商。奥巴马总统在增强国家网络安全委员会报告中特别指出FIDO联盟将帮助该委员会发挥重要作用。英国政府新的国家网络安全战略也旨在投资于FIDO身份验证。

谷歌Chrome是第一个部署Second Factor UX的Web浏览器,但估计到2017年年初,所有主要浏览器都将提供支持。对于用户来说,这意味着不再需要输入通过短信接收的六位数密码来登录在线服务,用户只需要将符合FIDO标准的USB密钥插入计算机,并在按照浏览器提示操作即可。谷歌分析了其已部署两年的U2F安全密钥,并报告称现在支持成本已经下载。该公司使用这种密钥取代了一次性密码(OTP)作为验证其员工的方法,谷歌估计这每年将为其节省数千小时时间。同时,基于OTP的身份验证存在3%失败率,而新方法为0%。

FIDO为用户和企业带来巨大利益,这也是其得到迅速部署而其他举措未能取代密码的原因。随着越来越多的用户FIDO身份验证的安全优势,在线服务会逐渐不再依靠密码来验证。如果FIDO减少因为账户登录困难而放弃的在线和移动购物车数量,零售商很快会收回升级其网站使其符合FIDO标准所花费的成本。Paypal、阿里巴巴和支付宝都提供基于FIDO身份验证的安全支付,Dropbox、GitHub、Dashlane和Salesforce.com等主要云服务现在都支持U2F。

即将推出的FIDO 2.0提供本地平台支持以及利用FIDO公钥加密技术的设备到设备身份验证,这将提高很多IoT设备的安全性。客户端到身份验证器协议(CTAP)协议也将在2017年发布,这将使浏览器和操作系统可与外部身份验证器(例如USB密钥卡、NFC和蓝牙功能设备)通信,而不需要用户在他们使用的每台设备重新注册。同时,他们还在为移动钱包提供商和支付应用开发者开发标准以支持消费者设备持卡人验证方法(CDCVM),以便当用户在商店或者应用内进行移动支付时,可通过设备上FIDO认证的身份验证器(例如指纹或自拍生物认证)验证用户身份。

多年来,由于基于密码身份验证的缺陷,攻击者已经获得巨大的利润。而FIDO身份验证让身份盗窃变得更加困难和昂贵,同时又不会牺牲安全的便利性。希望FIDO最终将终止密码作为主要身份验证因素的方式。


作者:Michael Cobb

来源:51CTO

相关文章
|
C++ 索引
vscode clangd c++开发常见问题和解决方案
vscode clangd c++开发常见问题和解决方案
4489 0
|
IDE Java 开发工具
java编译通过,运行却提示找不到或无法加载主类的解决方案
java编译通过,运行却提示找不到或无法加载主类的解决方案
3020 0
|
7月前
|
人工智能 自然语言处理 数据可视化
【深度建议】打破设备壁垒:关于通义千问实现“全平台智能语音交互”与“知识闭环”的五大核心建议
作为通义千问深度用户,本文基于跨端真实体验,提出五大优化建议:①全平台语音输入引擎(补PC端短板);②沉浸式声音陪伴系统;③智能笔记与待办管理;④语义级长对话检索与跳转;⑤紧急修复移动端搜索点击失效Bug。聚焦效率与温度,助力千问成为更懂你的AI伙伴。(239字)
1143 1
|
前端开发 JavaScript BI
如何开发车辆管理系统中的车务管理板块(附架构图+流程图+代码参考)
本文介绍了中小企业如何通过车务管理模块提升车辆管理效率。许多企业在管理车辆时仍依赖人工流程,导致违章处理延误、年检过期、维修费用虚高等问题频发。将这些流程数字化,可显著降低合规风险、提升维修追溯性、优化调度与资产利用率。文章详细介绍了车务管理模块的功能清单、数据模型、系统架构、API与前端设计、开发技巧与落地建议,以及实现效果与验收标准。同时提供了数据库建表SQL、后端Node.js/TypeScript代码示例与前端React表单设计参考,帮助企业快速搭建并上线系统,实现合规与成本控制的双重优化。
|
安全 搜索推荐 Android开发
揭秘iOS与安卓系统的差异:一场技术与哲学的较量
在智能手机的世界里,iOS和Android无疑是两大巨头,它们不仅定义了操作系统的标准,也深刻影响了全球数亿用户的日常生活。本文旨在探讨这两个平台在设计理念、用户体验、生态系统及安全性等方面的本质区别,揭示它们背后的技术哲学和市场策略。通过对比分析,我们将发现,选择iOS或Android,不仅仅是选择一个操作系统,更是选择了一种生活方式和技术信仰。
|
消息中间件 运维 Prometheus
小红书消息中间件的运维实践与治理之路
近年来,消息领域的全面云原生化逐渐走向深入,比如 RocketMQ 5.0 版本的存算分离设计和 raft 模式,再比如 Kafka3.0 引入了分层设计的方式(tiered storage)和 raft 模式,以及近年来新崛起的 Pulsar 也开始采用云原生架构,在未来都可以针对具体业务需求引入进行功能迭代,发挥组件的最大价值。
1757 125
小红书消息中间件的运维实践与治理之路
|
JavaScript Java 测试技术
基于SpringBoot+Vue的网上商城系统的详细设计和实现
基于SpringBoot+Vue的网上商城系统的详细设计和实现
594 13
|
Oracle 关系型数据库 Apache
一键实现 Oracle 数据整库同步至 Apache Doris
极大降低数据同步门槛,使数据同步变得更加简单高效
1491 0
一键实现 Oracle 数据整库同步至 Apache Doris
|
Shell 开发工具 git
使用openwrt搭建编译环境,编译一个demo
使用openwrt搭建编译环境,编译一个demo
1279 1
|
算法
【SPSS】列联表分析详细操作教程(附案例实战)
【SPSS】列联表分析详细操作教程(附案例实战)
3853 0