Get your free and exclusive 80-page Banking Passkey Report
finom passkeys

Finom 通行密钥:革新银行业安全

探索 Finom 推出的通行密钥如何为银行/金融科技安全、用户体验和金融服务中的隐私保护树立新标准。

Vincent Delitz

Vincent

Created: July 15, 2025

Updated: July 16, 2025


See the original blog version in English here.

WhitepaperBanking Icon

Want to learn how top banks deploy passkeys? Get our 80-page Banking Passkeys Report (incl. ROI insights). Trusted by JPMC, UBS & QNB.

Get Report

1. Finom 通行密钥简介#

现代银行业既需要顶级的安全性,也需要让客户的生活更轻松。正因如此,总部位于阿姆斯特丹的金融科技先驱 Finom 迈出了重要一步,在其网页应用中引入通行密钥作为新的主要身份验证方法。Finom 对通行密钥的实施不仅挑战了传统的密码模式(以及通过短信 OTP 的传统多因素认证),也顺应了用户对更安全、便捷和注重隐私的体验日益增长的需求,这正是其创新精神的体现。这篇博文将深入探讨 Finom 通行密钥实施的技术设置和最终用户优势,并分析为何这种方法可能预示着通行密钥在银行和金融服务领域开启一个新时代。

2. Finom 通行密钥的技术洞察#

通行密钥代表了身份验证领域的一场范式转变,它摒弃了脆弱的密码系统,转向更安全、能抵御网络钓鱼的身份验证方式。Finom 的网页应用采用了这项技术,允许用户通过各种设备进行身份验证——无论是电脑、智能手机还是硬件安全密钥(例如 YubiKeys),从而也支持跨平台/漫游验证器

Finom-logo

Finom has introduced passkeys

Join them

2.1 浏览器和操作系统兼容性#

Finom 通过遵循浏览器和操作系统的行业标准,确保了广泛的可访问性。根据 Finom 通行密钥官方常见问题解答,以下浏览器版本支持通行密钥:

  • Chrome (v105+)
  • Safari (v16+)
  • Edge (v105+)

Finom 通行密钥官方常见问题解答中的说明不同,我们在测试中发现,在 Windows 11 23H2 和 macOS Sonoma 14.2.1 系统上,最新版本的 Firefox (v122) 也能成功进行通行密钥身份验证

关于操作系统的总体支持,我们成功在 Windows 11 和 macOS Sonoma 上测试了桌面设备的通行密钥身份验证(常见问题解答中未说明官方最低操作系统版本)。

移动设备用户必须确保其系统更新至 iOS 16+ 或 Android 9+ 才能获得完整的通行密钥支持。好消息是,绝大多数移动设备(超过 94%)已经支持通行密钥。

2.2 Finom 的 WebAuthn 服务器选项#

Finom 的通行密钥创建过程支持通行密钥的全部功能,采用了包括 USB、NFC、BLE、混合模式和内部选项在内的多种传输模式。这种灵活性确保用户有多种身份验证选项,以适应个人偏好或不同场景的需求。

2.2.1 PublicKeyCredential-CreationOptions 分析#

从 WebAuthn 服务器设置和对 PublicKeyCredentialCreationOptions 的深入分析中,有几个方面值得注意:

{ "attestation": "direct", "authenticatorSelection": { "residentKey": "discouraged", "userVerification": "required" }, "challenge": "JWi0v7X1X-O1UvXB_I5q2A", "excludeCredentials": [ { "id": "ARt1Ba2haVHZNrw8FhKLc_V1LFMVdrsHbezmQ8jMP59lXscBnkTLxABNNR9dd499EG5PWY0VYSFtbui_XmYeJtM", "transports": ["usb", "nfc", "ble", "hybrid", "internal"], "type": "public-key" }, { "id": "CaRVt041w10I948-OS6TBtAyVOUdak03b6BUyev3S3e7xOH99pS9GLgTURasdNH4HgKkazUmT0ejDbVpuDhAtQ", "transports": ["usb", "nfc", "ble", "hybrid", "internal"], "type": "public-key" }, { "id": "3nOhnTkXXdyiBAfC60K7E_-OgKwwk57uewpwGCgJe44", "transports": ["usb", "nfc", "ble", "hybrid", "internal"], "type": "public-key" } ], "pubKeyCredParams": [ { "alg": -7, "type": "public-key" }, { "alg": -257, "type": "public-key" }, { "alg": -37, "type": "public-key" }, { "alg": -35, "type": "public-key" }, { "alg": -258, "type": "public-key" }, { "alg": -38, "type": "public-key" }, { "alg": -36, "type": "public-key" }, { "alg": -259, "type": "public-key" }, { "alg": -39, "type": "public-key" }, { "alg": -8, "type": "public-key" } ], "rp": { "id": "app.finom.co", "name": "app.finom.co" }, "user": { "displayName": "Vincent Delitz", "id": "dmluY2RlbGl0aaBhb2wuY29t", "name": "vincent@corbado.com" } }
  • 使用 excludeCredentials 参数,避免在已有通行密钥的设备上重复创建。
  • Relying Party ID 设置为 app.finom.co,以确保安全的、特定于域名的身份验证。
  • 直接证明 (direct attestation) 要求设备提供证明声明,从而证实身份验证凭据的真实性。
  • userVerification 设置为 required,确保只有合法用户才能发起身份验证过程。
  • 不鼓励使用 residentKeys,因为 Conditional UI 尚未推出。然而,通行密钥的创建行为在很大程度上取决于验证器是否会考虑 residentKeys 的值(详见这篇文章)。此外,为了未来支持 Conditional UI,Finom 实际上可以从现在就开始创建 resident keys 中获益。但从另一方面看,这个决定节省了硬件安全密钥(如 YubiKeys)的存储空间,因为这些密钥的 resident keys 存储容量通常有限。

2.2.2 PublicKeyCredential-RequestOptions 分析#

PublicKeyCredentialRequestOptions 同样重要,它通过确保灵活性和安全性的配置来简化身份验证过程:

PublicKeyCredentialRequestOptions.json
{ "allowCredentials": [ { "id": "ARt1Ba2haVHZNrw8FhKLc_V1LFMVdrsHbezmQ8jMP59lXscBnkTLxABNNR9dd499EG5PWY0VYSFtbui_XmYeJtM", "transports": ["usb", "nfc", "ble", "hybrid", "internal"], "type": "public-key" }, { "id": "CaRVt041w10I948-OS6TBtAyVOUdak03b6BUyev3S3e7xOH99pS9GLgTURasdNH4HgKkazUmT0ejDbVpuDhAtQ", "transports": ["usb", "nfc", "ble", "hybrid", "internal"], "type": "public-key" }, { "id": "3nOhnTkXXdyiBAfC60K7E_-OgKwwk57uewpwGCgJe44", "transports": ["usb", "nfc", "ble", "hybrid", "internal"], "type": "public-key" } ], "challenge": "s4R8Fsy7iSxxWIgUr7iTLA", "rpId": "app.finom.co", "userVerification": "discouraged" }
  • 设置了 allowCredentials(所有凭据都独立于用户使用的客户端设备进行设置),以确保只有已注册的通行密钥才能使用。
  • userVerification 在登录流程中被设置为 discouraged,这一点很有趣,因为在通行密钥创建流程中它是 required 的。

2.2.3 集成跨设备通行密钥#

Finom 通行密钥实施的一个前瞻性方面是其跨设备通行密钥共享的潜力。通过分析 Finom 为 Android 提供的关联文件 https://app.finom.co/.well-known/assetlinks.json 和为 iOS 提供的 https://app.finom.co/.well-known/apple-app-site-association,我们可以清楚地看到,Finom 正在为其网页和原生移动应用之间的无缝通行密钥集成奠定基础。增加对跨设备共享的支持可以很快实现,例如,通过 iCloud Keychain 同步,在原生 iOS 应用中使用来自网页应用的 macOS 通行密钥。这一举措有望通过实现跨不同平台和设备的轻松身份验证,进一步提升用户体验。

3. 安全、简单且增强隐私的用户体验#

Finom 通行密钥实施的核心是坚守三大基本原则:无与伦比的安全性、极致的简洁性和毫不妥协的数据隐私性。

  • 安全性: Finom 的通行密钥系统旨在构建一道抵御网络威胁的屏障。与传统密码不同,通行密钥与用户的设备和 Finom 的已验证域名安全地绑定在一起,几乎消除了网络钓鱼和欺诈访问的风险。
  • 简洁性: Finom 通行密钥身份验证的简洁性体现在其即时登录过程中。通过使用面容 ID、触控 ID 或 Windows Hello,用户可以在几秒钟内访问自己的账户,无需费力输入复杂的密码。这种简化的身份验证流程不仅提升了用户便利性,还显著缩短了登录时间,为银行业的便捷访问树立了新标准。
  • 数据隐私: Finom 将用户数据的隐私和安全放在首位。通过采用通行密钥与用户设备绑定的系统,Finom 确保包括生物识别数据在内的个人信息始终在用户的掌控之中,绝不会与服务器共享。这种方法不仅保护了用户的隐私,还让他们确信自己的个人和财务信息得到了保护,免受未经授权的访问和泄露。

3.1 在新设备上确认通行密钥创建#

在新设备上,用户需要通过 Finom 的原生 iOS / Android 应用中的推送通知或使用电子邮件魔法链接来确认通行密钥的创建。在确认之前,用户无法创建通行密钥

通过电子邮件确认通行密钥创建请求:

或者,您也可以通过推送通知确认通行密钥创建请求(此处为原生 Android 应用):

成功创建通行密钥后,您将看到此弹出窗口:

3.2 通行密钥优先的登录流程#

Finom 通过将通行密钥设为默认身份验证方法(通行密钥优先),简化了登录体验。用户输入电子邮件地址并点击“继续”后,系统会直接启动通行密钥验证(默认不显示密码字段)。这种直接的方法通过减少不必要的选择和降低密码的优先级,提升了用户体验。然而,缺少 Conditional UI 是未来可以改进的一个方面。

3.3 取消通行密钥登录流程#

在通行密钥弹出窗口中取消通行密钥登录流程时,用户会收到以下警告:

如果用户点击“重试”,通行密钥登录流程将重新开始,通行密钥弹出窗口(例如面容 ID、触控 ID、Windows Hello)会再次出现,允许用户重新扫描生物识别信息

如果用户点击“尝试其他方式”,他们将被引导至旧的登录页面,需要输入电子邮件地址和密码:

3.4 不建议在非私人设备上使用#

Finom 强烈建议不要在非私人或公共设备(例如公共图书馆的电脑)上使用通行密钥进行身份验证。这类设备固有的风险在于其可访问性;任何能够解锁该设备的人(无论是通过密码、屏幕锁还是设备上注册的指纹或面部识别等生物识别数据)都有可能冒充您进行身份验证并访问您的账户。

3.5 跨设备身份验证(通过二维码和蓝牙)#

为了适应当今用户拥有多台设备的现实,Finom 支持使用二维码扫描和蓝牙邻近检查进行跨设备身份验证(混合传输)。此功能允许用户在不同设备之间获得流畅的身份验证体验,例如在桌面环境访问 Finom 时,可以无缝地使用存储在移动设备上的通行密钥进行登录(关于使用通行密钥进行跨设备身份验证的更多详情,请参阅这篇文章)。

3.6 通行密钥管理(重命名和移除通行密钥)#

Finom 引入了直观的通行密钥管理功能,使用户能够自定义和控制他们的身份验证方法。这些功能,包括重命名和移除通行密钥的能力,反映了 Finom 对数字访问管理中灵活性和安全性必要性的深刻理解。

  • 为不同设备设置多个通行密钥: Finom 建议用户在他们的各个设备上创建多个通行密钥。这种方法保证了用户可以通过通行密钥不间断地访问 Finom 的服务,从而提供无缝的多设备体验。
  • 智能防重功能: Finom 利用 PublicKeyCredentialCreationOptions 中的 excludeCredentials 参数,防止在同一设备上创建重复的通行密钥。这一措施不仅增强了安全性,还通过确保每个设备拥有唯一的通行密钥,简化了用户体验。
  • 删除通行密钥需再次验证: 在移除通行密钥之前,用户需要使用一个通行密钥来验证该操作。这一额外的安全层强调了 Finom 对保护用户访问权限的重视,并确保只有合法所有者才能进行此类重大更改。

请注意,图标检测逻辑并不像初看起来那么智能。我将通行密钥存储在我的 Android 设备上的 Google 密码管理器中,但它却显示为 Windows 图标。同样的情况也适用于像 YubiKeys 这样的跨平台/漫游验证器,它们本身并不与特定的操作系统绑定。

3.7 通行密钥创建通知#

成功创建通行密钥后,用户将收到一封电子邮件通知:

3.8 重置密码时删除所有通行密钥#

如果用户需要重置密码,不仅原生 iOS / Android 的设备绑定会被删除,您所有的通行密钥也会被删除。更准确地说,通行密钥的公钥会在服务器端被删除,使得使用通行密钥登录变得不可能(即使您恢复了设备绑定)。通行密钥的私钥仍保留在设备上,但对于后续的登录尝试已无用处。

4. Finom 的通行密钥策略与改进#

Finom 的通行密钥实施不仅是为了增强安全性和用户体验,更是一项战略举措,旨在节省传统短信 OTP 系统的成本,并将其定位为一个现代化的、数字优先的金融科技公司,有信心与传统银行和金融机构竞争。该系统目前的设计前景广阔,并有扩展空间,例如支持原生应用、推出 Conditional UI 以及通过通行密钥进行交易确认。

4.1 节省短信 OTP 成本#

通过摒弃在安全性上历来存在漏洞的短信 OTP 方法,Finom 为其身份验证和 MFA 策略带来了重大利好。这一转变不仅降低了与短信 OTP 相关的风险,也符合 Finom 利用尖端技术保护用户数据、提升银行用户体验以及大幅节省短信 OTP 多因素认证成本的使命。

4.2 改进路线图#

在我们的测试过程中,我们发现了一些主要的改进空间:

  • 将通行密钥支持扩展至原生应用: 认识到移动银行的普及性,我们希望 Finom 能尽快在其原生 iOS 和 Android 应用中推出通行密钥支持,这也将符合其移动优先的策略。作为用户,特别是从 macOS 桌面设备切换过来的用户,如果能使用连接到同一个 iCloud Keychain 的 iPhone 上的 iOS 应用登录,体验将比现在大大简化。
  • 仅使用通行密钥进行身份验证: 随着时间的推移,我们还期望 Finom 在支持通行密钥的设备上,将通行密钥推广为首选且唯一的验证因素。这也包括创建新账户时仅使用通行密钥作为唯一的身份验证方式(并提供一些备用方案)。
  • 实施 Conditional UI 引入 Conditional UI 将是用户体验的又一次重大优化,其他公司已经证明这对于通行密钥的普及非常成功。
  • 使用通行密钥进行支付确认: 在测试中,我们还进行了一次测试支付,以检查支付确认是否也支持通行密钥。然而,Finom 仍然使用原生应用推送通知和短信 OTP 进行确认(后者是一个主要的成本驱动因素)。这可能是出于监管原因,但我们希望未来这里也能使用通行密钥。
Slack Icon

Become part of our Passkeys Community for updates & support.

Join

4.3 通行密钥的 PSD2 合规性#

在 Finom 的通行密钥策略中,有一个问题仍未得到解答:Finom 对通行密钥的 PSD2 和 SCA 合规性持何种立场?这个问题普遍尚未得到充分解决,但了解 Finom 对此事的看法会很有趣。有关通行密钥的 PSD2 合规性的更多见解和思考,请参阅这篇博文

5. 总结#

Finom 的通行密钥推出是银行和金融服务行业的一个典范,展示了金融科技公司如何引领采用先进安全措施以满足现代用户需求。通过对 Finom 通行密钥系统进行详细分析,本博文旨在帮助其他软件开发人员、产品经理和安全专家了解在金融和银行业中实施通行密钥的方法。

Next Step: Ready to implement passkeys at your bank? Our 80-page Banking Passkeys Report is available. Book a 15-minute briefing and get the report for free.

Get the Report

Share this article


LinkedInTwitterFacebook

Enjoyed this read?

🤝 Join our Passkeys Community

Share passkeys implementation tips and get support to free the world from passwords.

🚀 Subscribe to Substack

Get the latest news, strategies, and insights about passkeys sent straight to your inbox.

Related Articles