从重大新闻和娱乐到体育和政治,X 是一款社交媒体应用,旨在帮助全球近 5 亿用户了解完整故事,并提供所有实时评论。最近,X 开发者改进了 Android 应用的登录流程,让用户不会错过自己感兴趣的对话。该团队使用 Credential Manager API 实现了新的通行密钥身份验证,让用户能够更快速、更轻松、更安全地访问应用。
使用通行密钥简化登录流程
如今,传统的基于密码的身份验证系统安全性较低,更容易受到网络攻击。许多用户经常选择易于猜测的密码,不法分子可以通过暴力破解轻松破解这些密码。他们还会在多个账号中重复使用相同的密码,这意味着如果一个密码被黑客窃取,所有账号都会遭到入侵。
通行密钥完全不需要密码,从而解决了因安全系数低的密码和钓鱼式攻击而日益严重的账号安全问题。该功能可提供更安全、更顺畅的登录体验,让用户不必记住用户名或密码。
X 的安全主管 Kylie McRoberts 表示:“通行密钥是一种更简单、更安全的登录方式,它用 PIN 码或生物识别数据(例如指纹或人脸识别)取代了密码。”“我们探索了如何使用通行密钥让用户更轻松、更安全地登录,从而帮助他们保护账号,免去记住密码的麻烦。”
自实现通行密钥以来,X 团队发现登录时间大幅缩短,各项指标也表明登录流程得到了改进。与仅依赖密码时相比,该应用的成功登录率翻了一番。该团队还发现,已启用通行密钥的用户提出的重设密码请求有所减少。
据 X 开发者称,采用通行密钥不仅能提高安全性和简化登录体验,还能带来其他好处,例如降低成本和改善用户体验。
Kylie 表示:“通行密钥提供了强大的内置身份验证功能,让我们能够减少与基于短信的双重身份验证相关的费用。”“由于登录变得简单,用户无需费心记住或重置密码,因此他们更有可能与我们的平台互动。”
通行密钥依靠公钥加密技术来验证用户身份并向用户提供私钥。这意味着,网站和应用可以查看并存储公钥,但绝不会看到和存储私钥,私钥由用户的凭证提供方加密并存储。由于密钥是唯一的,并且与网站或应用相关联,因此无法被仿冒,这可以进一步提高安全性。
使用 Credential Manager API 实现无缝集成
Kylie 表示,为了集成通行密钥,X 开发者使用了 Android 的 Credential Manager API,这让整个过程“非常顺畅”。该 API 将 Smart Lock、一键登录和 Google 登录整合到一个简化的工作流中。这还使开发者能够移除数百行代码,从而提高实现效率并减少维护开销。
最终,X 位开发者仅用两周时间就完成了向 Credential Manager 的迁移,随后又用了两周时间来全面支持通行密钥。X 的工程师 Saurabh Arora 表示,这是一次“非常快速的迁移”,团队“没想到会如此简单直接”。得益于 Credential Manager 简单、由协程驱动的 API,处理多种身份验证选项的复杂性基本上被消除了,从而减少了代码、出现 bug 的可能性以及开发者的整体工作量。
X 位开发者通过集成 Credential Manager API,显著提升了开发速度。通过 Credential Manager API 改用通行密钥后,他们实现了:
- 身份验证模块中的代码减少了 80%
- 90% 的旧版极端情况 bug 得到解决
- GIS、一键快捷登录和 Smart Lock 处理代码减少了 85%
使用 Credential Manager API 的顶级方法(例如 createCredential 和 getCredential),可以消除围绕各个协议的自定义逻辑复杂性,从而简化集成。这种统一的方法还意味着 X 开发者可以使用一个一致的界面来处理各种身份验证类型,例如通行密钥、密码和联合登录(如“使用 Google 账号登录”)。
“借助 Credential Manager 的简单 API 方法,我们只需调用一次即可检索通行密钥、密码和联合令牌,从而减少了分支逻辑,并使响应处理更加简洁,”Saurabh 说道。“使用不同的 API 方法(例如 createCredential() 和 getCredential())还简化了凭证存储,让我们能够在一个位置处理密码和通行密钥。”
X 开发者在使用 Credential Manager API 采用“使用 Google 账号登录”功能时,并未遇到太多挑战。将 X 之前的 Google 登录、一键登录和 Smart Lock 代码替换为更简单的 Credential Manager 实现,这意味着开发者不再需要处理连接或断开连接状态以及 activity 结果,从而降低了出错率。
通行密钥的未来
X 对通行密钥的集成表明,实现更安全、更人性化的身份验证体验是可行的。通过利用 Credential Manager API,X 开发者简化了集成流程,减少了潜在 bug,提高了安全性和开发速度,同时还提升了用户体验。
“对于考虑集成通行密钥的开发者,我们的建议是充分利用 Credential Manager API,”Saurabh 说道。“它确实简化了流程,减少了需要编写和维护的代码,让开发者能够更轻松地实现功能。”
展望未来,X 计划进一步提升用户体验,允许用户仅使用通行密钥进行注册,并提供专门的通行密钥管理界面。
开始使用
了解如何使用通行密钥和 Credential Manager API 改善应用的登录用户体验。
-
案例研究WhatsApp 是全球最大的即时通讯平台,为全球数十亿用户提供服务。它是不同地区用户的默认通讯工具,通过私密、可靠且安全的即时通讯服务连接用户。
Niharika Arora, Tracy Agyemang, Mayank Jain • 阅读用时:8 分钟 -
案例研究Uber 利用 Android Restore Credentials API 简化了新设备登录流程,预计每年可减少 400 万次手动登录,并提高用户留存率。
Niharika Arora, Tracy Agyemang • 阅读用时:5 分钟 -
案例研究Grab 是东南亚领先的超级应用,通过单一应用为八个国家/地区的数百万用户提供配送、出行和金融服务。
Ajesh Pai, Nguyen Van Minh, Tracy Agyemang • 阅读用时:5 分钟
每周通过电子邮件接收最新的 Android 开发洞见。