【问题标题】:How to use android biometrics with firebase email authentication?如何将 android 生物识别技术与 Firebase 电子邮件身份验证结合使用?
【发布时间】:2021-08-03 00:39:37
【问题描述】:

我正在尝试使用 firebase 电子邮件身份验证并启用生物识别。

我能想到的解决方案是:

  1. 启用生物识别并获取指纹令牌
  2. 用这个令牌加密用户的username+password
  3. 将加密的username+password 存储在应用存储中
  4. 当用户使用生物识别进行身份验证时,应用会解密存储的 username+password 并登录 firebase。

问题当然是在本地存储加密的username+password 的困难选择。

有没有更好的选择,比如

  • 保存加密的 Firebase 令牌而不是 username+password?
  • 将令牌保存在服务器中?

专业应用如何使用 firebase 来做到这一点?

【问题讨论】:

    标签: android firebase authentication firebase-authentication android-biometric-prompt


    【解决方案1】:

    在 Android 密钥库中使用对称和非对称密钥概念

    在使用 Android 密钥库时遵循 Salesforce 移动 SDK 策略 (更多细节在这里:https://developer.salesforce.com/docs/atlas.en-us.mobile_sdk.meta/mobile_sdk/auth_secure_key_storage_android.htm

    总结一下步骤:

    1. 应用程序在安装和首次运行时会创建一个非对称密钥对和一个对称密钥
    2. 应用程序存储不对称。 Android Key Store 中的密钥。仅当用户解锁手机时才授予密钥存储访问权限(例如,使用 PIN 码或生物识别。此步骤是可选的。您可以不执行此步骤)
    3. 应用程序使用不对称密钥对的公共部分加密对称密钥并将其存储在共享首选项中
    4. 它是用于加密/解密 Firebase 令牌或用户名 + 密码的对称密钥
    5. 要访问加密的对称密钥,应用必须先从 Android Key Store 获取私钥,解密对称密钥然后使用它。

    【讨论】:

    猜你喜欢
    • 2020-05-11
    • 2018-09-09
    • 2023-03-18
    • 2018-02-10
    • 2021-11-21
    • 2016-10-13
    • 1970-01-01
    • 2021-03-26
    • 1970-01-01
    相关资源
    最近更新 更多