X 是一款社交媒体应用,旨在帮助全球近 5 亿用户获取完整的新闻报道,并提供实时评论,内容涵盖突发新闻、娱乐、体育和政治等。最近,X 开发者改进了 Android 应用的登录流程,让用户不会错过自己感兴趣的对话。该团队使用 Credential Manager API 实现了新的 通行密钥 身份验证,以便用户更快、更轻松、更安全地访问该应用。
使用通行密钥简化登录流程
如今,传统的基于密码的身份验证系统安全性较低,更容易受到网络攻击。许多用户经常选择容易猜到的密码,而不良行为者可以轻松使用暴力破解攻击来破解这些密码。他们还会在多个账号中使用相同的密码,这意味着如果一个密码被破解,所有账号都会受到威胁。
通行密钥解决了因密码强度低和网络钓鱼攻击而日益受到关注的账号安全问题,因为它完全消除了对密码的需求。该功能提供了更安全、更顺畅的登录体验,让用户不必记住用户名或密码。
“通行密钥是一种更简单、更安全的登录方式,它使用 PIN 码或生物识别数据(例如指纹或人脸识别)来代替密码。”X 的安全主管 Kylie McRoberts 说道。“我们探索了使用通行密钥,以便让用户更轻松、更安全地登录,帮助他们保护账号,而无需记住密码。”
自实现通行密钥以来,X 团队发现登录时间大幅缩短,并且登录流程有所改进。与仅依赖密码时相比,该应用的登录成功率翻了一番 。该团队还发现,启用通行密钥的用户发出的重设密码请求有所减少。
据 X 开发者称,采用通行密钥不仅可以提高安全性并简化登录体验,还可以降低成本并改善用户体验。
“通行密钥让我们能够减少与基于短信的双重身份验证相关的费用,因为它们提供了强大的固有身份验证功能。”Kylie 说道。“而且,由于登录非常简单,用户更有可能与我们的平台互动,因为他们无需记住或重置密码,减少了摩擦。”
通行密钥依赖于公钥加密来验证用户身份并向用户提供私钥。这意味着网站和应用可以查看并存储公钥,但绝不会看到和存储私钥,私钥由用户的凭据提供程序加密和存储。由于密钥是唯一的且与网站或应用相关联,因此无法被网络钓鱼,从而进一步提高了安全性。
使用 Credential Manager API 实现无缝集成
为了集成通行密钥,X 开发者使用了 Android 的 Credential Manager API,Kylie 表示,该过程“非常顺利”。该 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 开发者简化了集成过程,减少了潜在的错误,并提高了安全性,同时提高了开发速度,并改善了用户体验。
“对于考虑集成通行密钥的开发者,我们的建议是利用 Credential Manager API。”Saurabh 说道。“它确实简化了流程,减少了您需要编写和维护的代码,从而让开发者能够更好地实现。”
展望未来,X 计划进一步提升用户体验,允许仅使用通行密钥进行注册,并提供专用的通行密钥管理界面。
开始使用
了解如何使用 通行密钥 和 Credential Manager API 改善应用的登录用户体验。
继续阅读
-
成功案例
Uber 利用 Android Restore Credentials API 简化了新设备的登录流程,预计每年可减少 400 万次手动登录,并提高用户留存率。
Niharika Arora • 阅读时间:5 分钟
-
成功案例
Zoho 是一套全面的云端软件套件,专注于安全性和顺畅的体验。通过在 OneAuth Android 应用中采用通行密钥,Zoho 取得了显著的改进。
Niharika Arora, Joseph Lewis • 阅读时间:10 分钟
-
成功案例
Monzo 是一家英国数字银行,拥有 1500 万客户,并且客户数量还在不断增长。随着应用的规模扩大,工程团队发现应用启动时间是一个需要改进的关键领域,但担心这需要对代码库进行重大更改。
Ben Weiss • 阅读时间:2 分钟
随时了解最新动态
每周通过电子邮件接收最新的 Android 开发洞见 每周。