具有虹膜和面部识别的生物识别技术

Hoa*_*ran 7 android face-recognition iris-recognition

Android P博客Better Biometrics中,他们说:"为了保证用户安全,大多数应用和设备都有认证机制,或者证明你是你的方式.这些机制分为三类:知识因素,占有因素和生物识别因素.知识因素要求你知道的东西(如PIN或密码),占有因素要求你拥有的东西(如代币生成器或安全密钥),生物识别因素要求你的东西(如你的指纹,虹膜) ,或面对)".

但是当我在BiometricPrompt API中读取时,我看不到虹膜或面部的文档,仅验证对指纹的支持:"此调用使指纹硬件变暖,显示系统提供的对话框,并开始扫描指纹.它终止当BiometricPrompt.AuthenticationCallback.onAuthenticationError(int,CharSequence)被调用时......"我如何使用生物识别技术创建虹膜和面部或任何其他解决方案的身份验证登录?

Dav*_*uel 11

安卓6

  • 引入该类FingerprintManager以提供对指纹传感器的支持。
  • 开发人员需要构建自己的指纹 UI。

安卓9

  • 弃用该类FingerprintManager
  • 引入了新的生物识别 API,用于访问 OEM 设备上提供的各种生物识别硬件。
  • 引入标准化指纹 UI 策略。OEM 现在可以自定义 UI。应用程序开发人员失去了创建自定义 UI 的能力。
  • 它包括仅适用于班级的指纹BiometricPrompt集成。 指纹生物识别提示

安卓10

  • 生物识别 API 现在是AndroidX 生物识别库的一部分,这使得运行 Android 6.0(API 级别 23)或更高版本的所有设备都可以使用 Android 10 中的所有生物识别行为。
  • 包括指纹和面部身份验证集成BiometricPrompt指纹和面部认证 BiometricPrompt
  • 引入了BiometricManager开发人员可以用来查询生物特征认证 可用性的类
    • 如果设备支持多种生物识别技术,用户可以在操作系统设置中指定默认/首选方法。
    • BiometricManager不会向您提供有关可用方法的信息,它只是返回是否至少有一种可用方法。
    • BiometricManager不允许您知道正在使用哪种生物识别方法。
    • BiometricManager如果设备支持多种方法,则不允许您选择首选方法。
    • 如果没有生物识别传感器,API 现在允许开发人员指定是否要使用设备凭据(PIN、模式或密码)。
  • 该框架现在为 OEM 提供友好、标准化的 API,以集成对其设备上所有类型生物识别传感器的支持。
  • 该框架现在在 Android 10 中内置了对面部身份验证的支持,因此供应商无需创建自定义实现。
  • 生物识别图书馆架构生物识别图书馆架构

关于虹膜扫描仪,一些 OEM(例如三星)已经将其虹膜传感器的实现与生物识别 API 集成。然而,Android 还没有为 OEM 提供与虹膜传感器交互的标准 API(据我所知),这阻止了基于 AOSP 的 ROM 访问虹膜传感器。

在 AOSP 问题跟踪器中,有一个“添加生物识别虹膜 HAL 接口”的公开票证,旨在创建一个 HAL 接口来标准化 Android 框架与虹膜扫描仪的通信方式。不幸的是,票证最后取得进展是在 2018 年 3 月。

更新:安卓11

  • Android 11 引入了BiometricManager.Authenticators接口。该接口定义了生物识别硬件元素的可能优势:
    • BIOMETRIC_STRONG:设备上满足或超过 Android CDD 定义的强要求的任何生物识别(例如指纹、虹膜或面部)。
    • BIOMETRIC_WEAK:设备上满足或超过 Android CDD 定义的弱要求的任何生物识别(例如指纹、虹膜或面部)。
    • DEVICE_CREDENTIAL:用于保护设备安全的非生物识别凭据(即 PIN、图案或密码)。
  • 意图ACTION_BIOMETRIC_ENROLL操作调用系统设置并请求用户注册生物识别硬件元素。您可以额外提供强度级别。
  • AuthenticationResult API 有一个新方法getAuthenticationType(),允许您检查用户是否使用生物识别或设备凭据进行身份验证。

参考

  • `BiometricManager` 不会为您提供有关可用方法的信息,它只是返回是否至少有一种可用方法。 (2认同)

Rag*_*ood 6

Android 9仅支持生物特征认证的指纹方面。虹膜和面部识别功能将得到全面支持。请注意,这会导致在为Android P编写应用程序时弃用以前的FingerprintManager API。

Android 9仅包括BiometricPrompt的指纹集成。但是,即将提供对其他生物特征形式的集成支持。

资源