gpt4 book ai didi

android - 为什么Android指纹认证需要加密对象?

转载 作者:可可西里 更新时间:2023-11-01 18:45:50 26 4
gpt4 key购买 nike

我已经查看了 Google 提供的 android 指纹示例。

https://github.com/googlesamples/android-FingerprintDialog

由于我是安全标准的新手,我无法理解以下内容。

  1. 为什么我们需要使用 Keystore、 key 、CryptoObject 等?很简单 就像要求指纹管理器对用户进行身份验证,它可以简单地返回状态(成功/失败)
  2. 我是否需要在每次身份验证时都生成新 key ?

最佳答案

Why we need to use Keystore, key, CryptoObject... etc? Simply It could be like, ask finger print manager to authenticate the user and it can simply return the status(success/failed)

你不必。您可以在没有 CryptoObject 的情况下进行指纹验证,只需传递一个 null 值。然后就不必搞乱 keystore 和其他东西。

唯一在指纹身份验证上下文中使用 CryptoObject 是为了知道自上次用户通过指纹身份验证以来是否添加了新指纹。

Do I need to generate new key every time on each authentication?

如果添加了新的指纹,您将不得不提示输入密码来验证用户的身份,然后生成新的 key (因为添加新指纹后它们就失效了)。

同样,如果您传递一个 null CryptoObject

,您就不必弄乱这些了

观点问题

指纹认证不需要 CryptoObject,事实上恰恰相反。

当您在 Android 上进行加密操作时,您可以使用以下对象之一:Cipher , Signature , Mac (和别的)。这三个之一可用于构建 CryptoObject .

当您为这些对象生成 key 时,有一个名为 setUserAuthenticationRequired(boolean) 的方法,如果用户之前通过指纹进行身份验证,它可以获取 key 有效.

因此,例如在客户端/服务器通信的情况下,如果客户端可以使用 key ,则意味着他通过指纹进行了身份验证并且他的身份是已知的。

也就是说,您可能想查看我的库,这会让整个事情变得容易得多:

https://github.com/OmarAflak/Fingerprint

关于android - 为什么Android指纹认证需要加密对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39470098/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com