在不存储用户生物特征的情况下使用 Touch ID 或 Face ID

pub*_*dge 5 android ios touch-id face-id

如果这个话题不适合 Stackoverflow,我提前道歉(我要求版主在适当的地方移动它)。谢谢。

我想知道应用程序如何使用 Touch ID 或 Face ID 来验证身份而不将生物识别数据存储到他们的服务器中。

没有 Touch/Face ID 的身份验证(此处过于简化)

  1. 用户登录他们的银行应用程序。
  2. 用户名和密码发送到服务器进行验证。
  3. 根据存储在银行服务器中的信息检查用户名和密码。
  4. 在有效的用户名和密码组合上,会发出一个令牌以用于当前会话。

在用户允许应用使用他们的 Touch/Face ID 之后...

使用 Touch/Face ID 进行身份验证

  1. 用户登录他们的银行应用程序。
  2. 他们使用 Touch/Face ID 进行验证

……这里发生了什么?发送到服务器要验证的内容是什么?

我读到生物识别数据存储在手机上的安全芯片中,而不存储在任何服务器上。

对于 iOS,除了 Touch/Face ID 包之外,我们还需要使用钥匙串访问。为什么?这里存储了什么?

谢谢你。

Pau*_*w11 7

典型流程为:

首次登录:

  • 用户使用用户名/密码进行身份验证
  • 如果身份验证成功,系统会询问他们是否要使用 TouchID/FaceID
  • 如果这样做,用户名和密码将存储在钥匙串中,并需要生物识别身份验证才能访问数据

后续登录时:

  • 应用程序尝试检索存储的用户名/密码触发生物识别身份验证
  • 应用程序使用存储的用户名和密码向服务器进行身份验证。