MFA认证

465 阅读1分钟

MFA,全称 Multi-Factor Authentication(多因子认证)

MFA ,又名多因子认证,即多个因子结合所形成的认证

每个因子为一个认证因素,如:

  • 用户名 + 密码
  • 手机验证码
  • 新老设备
  • 动态验证码
  • 人脸
  • 声纹
  • 微信好友辅助认证

由上可理解为每一个认证因素都为一个因子,可通过多个结合方式形成多因子认证。

举例:用户名 + 密码 -> 新老设备验证 -> 手机验证码 -> 人脸

上述流程可理解为 四因子认证。

需要注意的是不同行业对 MFA 的因子都有不同的组合方式,没有固定实现方式,需要看场景组合使用

如阿里云、腾讯云等云服务,MFA认证均为 用户名 + 密码 -> 小程序动态验证码,且有时限限制。

美团等app的方式为 用户名 + 密码 -> 新老设备验证 -> 手机验证码,且无时限限制,这种三因子认证方式使用最为广泛。

steam 若绑定了手机号,则会使用 用户名 + 密码 -> 动态验证码 的方式。 若没绑定手机号,则会使用 用户名 + 密码 -> 邮箱验证码 的方式。

银行等金融app的方式为 用户名 + 密码 -> 手机验证码 -> 人脸 等,且有时限限制。

最后提供一个基于 google 验证器实现的简单 demo

github.com/S126gj/goog…