如何将 android 生物识别与 firebase 电子邮件身份验证结合使用?
How to use android biometrics with firebase email authentication?
我正在尝试使用 firebase 电子邮件身份验证并启用生物识别。
我能得出的解决方案是:
- 启用生物识别并获取指纹令牌
- 使用此令牌
加密用户的username+password
- 将加密的
username+password
存储在应用存储中
- 当用户使用生物识别技术进行身份验证时,应用会解密存储的
username+password
并登录 firebase。
问题当然是在本地存储加密 username+password
的困难选择。
有没有更好的选择比如
- 保存加密的 Firebase 令牌而不是
username+password
?
- 将令牌保存在服务器中?
专业应用如何使用 firebase?
将对称和非对称密钥概念与 Android 密钥库一起使用
在使用 Android 密钥库时遵循 Salesforce 移动 SDK 策略
(更多详情:https://developer.salesforce.com/docs/atlas.en-us.mobile_sdk.meta/mobile_sdk/auth_secure_key_storage_android.htm)
步骤总结:
- 应用程序在安装时首先运行创建一个非对称密钥对和一个对称密钥
- 应用程序存储不对称。 Android 密钥库中的密钥。仅当用户解锁时才授予密钥库访问权限 phone(例如,使用个人识别码或生物识别技术。此步骤是可选的。您可以不执行此步骤)
- 应用程序使用非对称密钥对的 public 部分加密对称密钥并将其存储在共享首选项中
- 它是用于 encrypt/decrypt Firebase 令牌或用户名 + 密码的对称密钥,无论您要使用哪个
- 要访问加密的对称密钥,应用程序必须首先从Android密钥库中获取私钥,解密对称密钥然后使用它。
我正在尝试使用 firebase 电子邮件身份验证并启用生物识别。
我能得出的解决方案是:
- 启用生物识别并获取指纹令牌
- 使用此令牌 加密用户的
- 将加密的
username+password
存储在应用存储中 - 当用户使用生物识别技术进行身份验证时,应用会解密存储的
username+password
并登录 firebase。
username+password
问题当然是在本地存储加密 username+password
的困难选择。
有没有更好的选择比如
- 保存加密的 Firebase 令牌而不是
username+password
? - 将令牌保存在服务器中?
专业应用如何使用 firebase?
将对称和非对称密钥概念与 Android 密钥库一起使用
在使用 Android 密钥库时遵循 Salesforce 移动 SDK 策略 (更多详情:https://developer.salesforce.com/docs/atlas.en-us.mobile_sdk.meta/mobile_sdk/auth_secure_key_storage_android.htm)
步骤总结:
- 应用程序在安装时首先运行创建一个非对称密钥对和一个对称密钥
- 应用程序存储不对称。 Android 密钥库中的密钥。仅当用户解锁时才授予密钥库访问权限 phone(例如,使用个人识别码或生物识别技术。此步骤是可选的。您可以不执行此步骤)
- 应用程序使用非对称密钥对的 public 部分加密对称密钥并将其存储在共享首选项中
- 它是用于 encrypt/decrypt Firebase 令牌或用户名 + 密码的对称密钥,无论您要使用哪个
- 要访问加密的对称密钥,应用程序必须首先从Android密钥库中获取私钥,解密对称密钥然后使用它。