FIDO 是啥

搬个砖,侵删。
2018年4月,FIDO和W3C在基于Web的“强身份认证”(Stronger Authentication)上取得了重要突破。通过标准Web API——WebAuthn,Web应用开发者可以轻松调用FIDO基于生物特征、安全、快速的在线身份认证服务。11月27日,FIDO联盟和W3C在京联合举办技术研讨会,公开了其技术理念和细节。
这个世界正深受口令所带来的隐患和困扰。这些可能的危害已经显而易见。——FIDO联盟执行理事 Brett McDowell
先再简单介绍一下FIDO。
拒绝共享生物特征 聚焦身份认证传统的身份认证方式,无论是使用口令还是指纹等生物特征,几乎都要通过用户和服务器两侧的凭证匹配来完成。但是,随着数据泄漏的频发,全球的个人用户已经意识到,即使诸如雅虎、脸书这样规模,依赖互联网和用户信任的企业,也难以做到杜绝数据泄漏。邮箱、重要的业务系统出现异常登陆,我们还可以通过更换口令补救,但生物特征则无法如此随意。
摆在我们面前的有两条路可选,要么停止使用方便且天然具备唯一性的指纹、虹膜等生物特征,要么使用另一种认证方式,个人的生物特征在本地安全存储且任何应用无法获取这些数据。显然,前者并不可取,至少不适应目前技术发展的大趋势。
FIDO联盟是全球性的行业协作,致力于不依赖“共享秘密”解决传统口令(password)给身份认证所带来的弊端。随着移动互联网在中国的迅猛发展,FIDO生态在中国也在不断壮大。目前,联盟在中国的董事会成员包括:阿里巴巴、联想、飞天诚信、以及中国台湾的神盾股份(Egis)。
基于公私钥对的非对称加密体系,只在本地的可信执行环境(TEE)中存储用户的生物特征信息,是FIDO相较于传统身份认证方式的两个重要不同点。
在FIDO2正式发布前,FIDO支持两种认证协议,UAF和U2F。
用我们常见的简单场景举例,UAF类似通过手机上指纹模组完成的app登陆或支付操作,方便快捷,他人也无法偷窥获得你的登陆凭证,几乎不再需要任何口令字符串,无论是强口令还是弱口令;U2F则类似常见的口令+短信验证码的双因子认证场景,例如Google和Steam平台所使用的,在手机端安装的身份认证app,登陆应用时不只需要输入用户名和口令,还需要及时输入身份认证app动态变化的认证码。U2F的一个典型优势是,即使你用于登陆某Web站点的口令不幸泄漏,比如误入了钓鱼网站,你也不需要担心攻击者能够成功冒充你,只要他没有得到能够提供动态认证码的设备。
今天,无论是FIDO 1.0时代的UAF、U2F,还是包含WebAuthn和CTAP的FIDO2,都已经突破了FIDO这一业界联盟内部规范,上升成为了相关国际标准制定机构(ITU国际电信联盟/W3C万维网联盟)的正式标准。同时,在适配层面,FIDO也近乎完成对底层硬件(安全芯片,生物特征鉴证器),操作系统(安卓和Win 10),以及最新版本主流浏览器(Chrome、Edge、Firefox提供原生接口)的支持。这些成果不仅体现了FIDO的安全、便捷、对隐私保护的重视,还包括了和易用性(开发者角度)的平衡。不夸张地说,FIDO已经初步实现了“无处不在”的身份认证体验。那么,FIDO2正式发布后,增加了哪些技术场景?
FIDO2的与众不同如果说FIDO UAF适用典型B2C(企业-个人)场景,U2F更适用典型B2E(企业-雇员)场景的话,那么包含WebAuthn API和CTAP协议两部分内容的FIDO2多场景的普适支持。
FIDO 是啥

FIDO2分为WebAuthn和CTAP协议两部分。先说说和W3C合作的WebAuthn。
如上文所介绍的,Web Authentication(https://www.w3.org/TR/webauthn/)由W3C和FIDO联盟一起完成的标准制定,目前仅在Win10和安卓系统下,有三款主流浏览器Chrome、Edge、Firefox提供原生支持,可使用平台认证器(即内置在PC上)或漫游认证器(如手机,平板,智能手表等),通过WebAuthn接口调用FIDO服务,完成Web应用的强身份认证。


推荐阅读