生物识别传感器 安全性要求背景

2023-05-16

7.3.10. 生物识别传感器

如需了解衡量生物识别解锁模式的安全性的其他背景,请参阅衡量生物识别的安全性文档。

如果设备实现包含安全锁定屏幕,则:

  • 应包含生物识别传感器

生物识别传感器可基于其欺骗和冒名攻击的接受率以及生物识别管道的安全分类为 3 类(之前的)、2 类(之前的)或 1 类(之前的便利)。此分类确定生物识别传感器所具有的与平台和第三方应用接口的功能。若要将传感器归类为 1 类2 类或 3 类,需要满足下面详述的额外要求。传感器默认归类为 1 类,若要将其归类为 2 类或 3 类,需要满足下面详述的额外要求。2 类和 3 类生物识别都可以获得下面详述的额外功能。

如果设备实现通过 android.hardware.biometrics.BiometricManager、android.hardware.biometrics.BiometricPrompt 和 android.provider.Settings.ACTION_BIOMETRIC_ENROLL 使生物识别传感器可用于第三方应用,则:

  • [C-4-1] 必须满足 3 类或 2 类生物识别的要求,如本文档中所定义。
  • [C-4-2] 必须识别并遵从 Authenticators 类中定义为常量的每个参数名称。反之,不得遵从或识别传递给 canAuthenticate(int) 和 setAllowedAuthenticators(int) 方法的整数常量,在 Authenticators 及其以及任何组合中载述为常量的整数常量除外。
  • [C-4-3] 必须在具有 3 类或 2 类生物识别功能的设备上实现 ACTION_BIOMETRIC_ENROLL 操作。此操作必须只为 3 类或 2 类生物识别提供注册入口点。

如果设备实现支持被动生物识别技术,则:

  • [C-5-1] 必须默认要求执行额外的确认步骤(例如按下按钮)。
  • [C-SR-1] 强烈建议提供一项设置,允许用户替换应用偏好设置,并且始终要求执行附带的确认步骤。
  • [C-SR-2] 强烈建议妥善保护确认操作,使操作系统或内核攻击无法欺骗确认操作。例如,这意味着基于物理按钮的确认操作会通过安全元件(无法由按物理按钮之外的任何其他方式触发)的仅限输入通用输入/输出 (GPIO) 引脚进行路由。
  • [C-5-2] 必须另外实现与 setConfirmationRequired(boolean) 相对应的隐式身份验证流(无需确认步骤);应用可以设置它,以用于登录流程。

如果设备实现具有多个生物识别传感器,则:

  • [C-SR-3] 强烈建议每次身份验证仅要求确认一个生物识别特征(例如,如果设备上有指纹传感器和人脸传感器,应在其中任何一个特征被确认后发送 onAuthenticationSucceeded)。

如果设备实现要允许访问第三方应用的密钥库密钥,则:

  • [C-6-1] 必须满足 3 类生物识别的要求,如本节中所定义。
  • [C-6-2] 当身份验证要求执行 BIOMETRIC_STRONG 或者身份验证流程通过 CryptoObject 调用时,必须只提供 3 类身份验证。

如果设备实现希望将生物识别传感器视为 1 类(之前的便利),则:

  • [C-1-1] 错误接受率必须低于 0.002%。
  • [C-1-2] 必须披露此模式的安全性可能不及安全系数高的 PIN 码、图案或密码,并在欺骗和冒名攻击的接受率高于 7%(此值由 Android 生物识别测试协议衡量得出)时明确枚举启用此模式的风险。
  • [C-1-9] 尝试生物识别验证的失败次数不超过 20 次且退避时间不少于 90 秒后,必须对用户进行建议的主要身份验证(例如 PIN 码、图案、密码),验证失败是指采集的足够有效信息 (BIOMETRIC_ACQUIRED_GOOD) 与已注册的生物识别信息不匹配。
  • [C-SR-4] 强烈建议在欺骗和冒名攻击的接受率高于 7%(此值由 Android 生物识别测试协议衡量得出)时减少 [C-1-9] 中指定的生物识别验证的总失败次数。
  • [C-1-3] 必须限制生物识别验证的尝试次数,验证失败是指采集的足够有效信息 (BIOMETRIC_ACQUIRED_GOOD) 与已注册的生物识别信息不匹配。
  • [C-SR-5] 尝试生物识别验证的失败次数达到 5 次后,强烈建议根据 [C-1-9] 中规定的最大失败次数限制,在至少 30 秒内不能再进行生物识别验证,验证失败是指采集的足够有效信息 (BIOMETRIC_ACQUIRED_GOOD) 与已注册的生物识别信息不匹配。
  • [C-SR-6] 强烈建议在 TEE 中配置所有速率限制逻辑。
  • [C-1-10] 首次触发主要身份验证退避时间后,必须停用生物识别(如第 9.11 节的 [C-0-2] 中所述)。

新要求

  • [C-1-11] 欺骗和冒名攻击的接受率不得高于 30%;并且 (1) 针对 A 级演示攻击手段 (PAI) 类型的欺骗和冒名攻击的接受率不得高于 30%;(2) 针对 B 级 PAI 类型的欺骗和冒名攻击的接受率不得高于 40%(此值由 Android 生物识别测试协议衡量得出)。

新要求结束

  • [C-1-4] 必须通过以下方式防止在没有先建立信任链的情况下添加新的生物识别信息:让用户确认现有设备凭据(PIN 码/图案/密码,受 TEE 保护)或添加新设备凭据;Android 开源项目实现在框架中提供了实现这一点的机制。
  • [C-1-5] 必须在移除用户的帐号(包括恢复出厂设置)时完全删除所有可识别的生物识别数据。
  • [C-1-6] 必须遵从相应生物识别的各个标志(即 DevicePolicyManager.KEYGUARD_DISABLE_FINGERPRINT、DevicePolicymanager.KEYGUARD_DISABLE_FACE 或 DevicePolicymanager.KEYGUARD_DISABLE_IRIS)。
  • [C-1-7] 必须至少每隔 24 小时对用户进行一次建议的主要身份验证(例如 PIN 码、图案、密码)。注意:如果是发布时搭载 Android 9 或更低版本而后升级的设备,必须至少每隔 72 小时对用户进行一次建议的主要身份验证(例如 PIN 码、图案和密码)。
  • [C-1-8] 必须在出现以下任一情况后对用户进行建议的主要身份验证(例如 PIN 码、图案、密码)或第 3 类(强)生物识别:
    • 达到 4 小时空闲超时期限,或
    • 尝试生物识别身份验证失败 3 次。
    • 空闲超时期限和失败的身份验证计数将在每次成功确认设备凭据后重置。注意:发布时搭载 Android 9 或更低版本而后升级的设备可以不遵守 C-1-8 要求。
  • [C-SR-7] 强烈建议使用 Android 开源项目提供的框架中的逻辑,为新设备强制执行 [C-1-7] 和 [C-1-8] 中规定的限制条件。
  • [C-SR-8] 强烈建议确保在设备上测得的错误拒绝率低于 10%。
  • [C-SR-9] 对于每个已注册的生物识别信息,强烈建议确保延迟(即从检测到生物识别信息到屏幕解锁的时间)低于 1 秒。

如果设备实现希望将生物识别传感器视为 2 类(之前的),则:

  • [C-2-1] 必须满足上述 1 类的所有要求。

  • [C-2-2] 欺骗和冒名攻击的接受率不得高于 20%;并且 (1) 针对 A 级演示攻击手段 (PAI) 类型的欺骗和冒名攻击的接受率不得高于 20%;(2) 针对 B 级 PAI 类型的欺骗和冒名攻击的接受率不得高于 30%(此值由 Android 生物识别测试协议衡量得出)。

  • [C-2-3] 必须在 Android 用户或内核空间外部的隔离执行环境(如可信执行环境 [TEE])中或在具有通向隔离执行环境的安全信道的芯片上执行生物识别匹配。

  • [C-2-4] 必须对所有可识别的数据进行加密,并对其采用密码形式的身份验证机制,以确保在隔离执行环境或具有通向隔离执行环境的安全信道的芯片之外无法获取、读取或更改这些数据(如 Android 开源项目网站上的实现准则中所述)。

  • [C-2-5] 对于基于摄像头的生物识别,进行基于生物识别的身份验证或注册时:

    • 必须在防止在隔离执行环境或具有通向隔离执行环境的安全信道的芯片之外读取或更改摄像头帧的模式中操作摄像头。
    • 对于 RGB 单摄像头解决方案,可在隔离执行环境之外读取摄像头帧,以支持注册预览等操作,但仍不得更改。
  • [C-2-6] 不得允许第三方应用区分已注册的生物识别信息。

  • [C-2-7] 不得在 TEE 范围之外允许应用处理器对可识别的生物识别数据及其衍生的任何数据(例如嵌入)进行未加密的访问。发布时搭载 Android 9 或更低版本而后升级的设备无需遵守 C-2-7 要求。

  • [C-2-8] 必须具有安全的处理流水线,使操作系统或内核攻击不能直接注入数据并将攻击者错误验证为用户。注意:如果设备实现已搭载 Android 9 或更低版本,且无法通过系统软件更新来满足 C-2-8 要求,可以不遵守该要求。

  • [C-SR-10] 强烈建议包含所有生物识别模式的活度检测和人脸生物识别的注意力检测。

  • [C-2-9] 必须使生物识别传感器可供第三方应用使用。

如果设备实现希望将生物识别传感器视为 3 类(之前的),则:

  • [C-3-1] 必须满足上述 2 类的所有要求,[C-1-7] 和 [C-1-8] 除外。
  • [C-3-2] 必须具有硬件支持的密钥库实现。
  • [C-3-3] 欺骗和冒名攻击的接受率不得高于 7%;并且 (1) 针对 A 级演示攻击手段 (PAI) 类型的欺骗和冒名攻击的接受率不得高于 7%;(2) 针对 B 级 PAI 类型的欺骗和冒名攻击的接受率不得高于 20%(此值由 Android 生物识别测试协议衡量得出)。

  • [C-3-4] 必须至少每隔 72 小时对用户进行一次建议的主要身份验证(例如 PIN 码、图案、密码)。

  • [C-3-5] 必须为设备上支持的所有 3 类生物识别(如果已重新注册)重新生成身份验证器 ID。

  • [C-3-6] 必须启用第三方应用的支持生物识别的密钥库密钥。

如果设备实现包含显示屏下方指纹传感器 (UDFPS),则:

  • [C-SR-11] 强烈建议阻止 UDFPS 的可触摸区域干扰“三按钮”导航(某些用户可能需要以实现无障碍功能)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

生物识别传感器 安全性要求背景 的相关文章

  • 安装SFTP/FTP插件快速编辑远程服务器文件

    默认的Sublime Text 3 是没有sftp ftp功能的 xff0c 如果编辑器自带ftp势必会提高开发效率 xff0c 虽然Sublime Text 3 默认是没有ftp功能 xff0c 但是安装sftp插件很容易 下面是我安装步
  • Vue指令之v-else篇

    讲完v if篇 xff0c 那么接下里我们就说说v else喽 对比java中的if 条件 条件成立执行的语句 else 条件不成立执行的语句 我相信你的脑瓜子已经转了90度 xff0c 已经完全搞明白Vue的v else该怎么用了 没错
  • Vue指令之v-for篇

    现在接着来扯v for指令 v for顾名思义 xff0c 和java中的for指令一个用法 xff0c 该指令用来循环遍历一个数组 v for 指令需要以 site in sites 形式的特殊语法 xff0c sites 是源数据数组并
  • Vue指令之v-on篇

    说到v on就立马事件 xff0c 最典型的的例子就是按钮的事件我们可以用v on监听事件 xff0c 并对用户的输入进行响应 先举个例子 xff0c 上代码 xff1a lt html gt lt head gt lt meta char
  • Vue指令之v-bind篇

    v bind指令 xff0c bind中文意思是捆绑的意思 xff0c 额 xff0c 捆绑 其绑定的参数在v bind 指令中的maohao xff08 冒号 xff09 后指明 xff0c 没错就是我标红的那个冒号 v bind指令被用
  • 5分钟认识JSON

    JSON JavaScript Object Notation JavaScript 对象表示法 什么是Json Json是java script 对象表示式 json是轻量级的文本数据交换格式 json对立于语言 xff1a json使用
  • JS中的const、var和let的区别

    看项目的时候遇到了const和let不知道什么意思 xff0c 特写此博客给记忆力不好的我 1 const定义的变量不可以修改 xff0c 而且补习初始化 xff08 相当于java中的常量 xff09 const a 61 2 正确 a
  • SpringMVC执行的流程

    先通过一个流程图来介绍请求 响应的完整流程 该图是SpringMVC请求响应的完整流程 工作流程如下 xff1a 1 用户向服务器发送请求 xff0c 请求被前端控制器DispatcherServlet截获 2 DispatcherServ
  • SpringMVC之@Controller注解

    Spring从2 5版开始引入注解 xff0c 本文说的是SpringMVC 4版 64 Controller注解 Controller注解用于指示Spring类的实例是一个控制器 xff0c 相对于实现Controller接口变得更加简单
  • SpringMVC之@RequestMapping注解

    RequestMapping xff1a org springframework web bind annotation RequestMapping RequestMapping注解类型用来指示Spring用哪一个类或方法来处理请求动作
  • Model和ModelAndView

    在 64 RequestMapping注解的方法中 xff0c 可出现和返回的参数类型中 xff0c 最重要的就是Model和ModelAndView了 SpringMVC在内部使用了一个Model接口存储模型数据 xff0c 它的功能类似
  • 解决 GTS GtsPermissionTestCases 模块 testPreloadedAppsTargetSdkVersion fail 问题

    报错报告截图 xff1a 解决办法 xff1a 重新生成 release platform shared media 4对签名文件替换 span class token number 1 span 重新替换release platform
  • @RequestParam注解

    在一些业务场景下 xff0c 前端发送请求的属性名称和后端方法接收参数名不相同 xff0c 这时候就要用到 64 RequestParam注解将后端的参数名重命名为前端对应的参数名称 xff01 org springframework we
  • Photoshop安装包破解安装教程

    详细的Photoshop安装包获取及破解安装过程 xff0c 请看大神的链接 https blog csdn net cssavage article details 81508689 本人亲测 xff0c 着实可靠 xff01 xff01
  • MySQL连接查询—自身连接

    若一个查询同时涉及两个表及以上的表 xff0c 则称之为连接查询 连接查询是关系数据库中最主要的查询 xff0c 包括等值连接查询 自然连接查询 非等值连接查询 自身连接查询 外连接查询和复合条件查询等 1 等值于非等值连接查询 连接查询的
  • CSS选择器

    CSS的选择器包括两种 xff1a Id和Class 1 ID选择器 id选择器可以标有特定ID的HTML元素指定特定的样式 HTML元素以ID属性来设置ID选择器 xff0c CSS中ID选择器以 来定义 以下选择器规则应用于元素属性id
  • CSS的创建

    当读到一个样式表时 xff0c 浏览器会根据样式表来美化HTML页面 本文就对插入样式表的三种方法做介绍 xff1a 首先 xff0c 先说一下三种方法为 xff1a 外部样式表 内部样式表 内联样式 1 外部样式表 应用场景 xff1a
  • CSS列表样式

    CSS列表属性作用如下 设置不同的列表项标记为有序列表设置不同的列表项标记为无序列表设置列表项标记为图像 无序列表 xff1a 用特殊图形标记列表项 有序列表 xff1a 用数字或字母标记列表项 CSS列表属性 属性描述list style
  • java虚拟机内存区域详解

    运行时数据区域 java虚拟机在执行java程序的过程中会把它管理的内存划分为若干个不同的数据区域 这些区域各自为政 xff0c 有的区域随着虚拟机进程的启动而存在 xff0c 而有些区域的生命周期则依赖于用户线程的生命周期 java虚拟机
  • csdn博客如何设置插入代码段的背景色

    最近在写博客的过程中发现自己插入的代码背景色全是米色的 xff0c 看起来很不爽 xff0c 就想要炫酷黑 经过一番研究 xff0c 终于发现如何设置插入代码段的背景颜色 xff1a 大体操作 xff1a 我的博客 gt 管理博客 gt 博

随机推荐

  • Exception in thread "main" java.lang.AbstractMethodError(Spring boot启动报错)

    具体报错 xff1a Exception in thread 34 main 34 java lang AbstractMethodError org springframework boot context config ConfigFi
  • Unregistering JMX-exposed beans on shutdown Disconnected from the target VM(springboot启动报错: )

    具体报错 xff1a Unregistering JMX exposed beans on shutdown Disconnected from the target VM address 39 127 0 0 1 52998 39 tra
  • python排序算法——归并排序(附代码)

    python排序算法 归并排序 文章目录 python排序算法 归并排序一 前言二 算法描述三 代码实现总结 一 前言 相关知识来自 python算法设计与分析 初级排序算法是指几种较为基础且容易理解的排序算法 初级排序算法包括插入排序 选
  • springboot使用fastjson解析json中文乱码问题

    使用fastjson解析json 需要在配置文件application properties中添加 spring http encoding force 61 true 否则 中文会出现乱码
  • springboot访问数据库报 Invalid bound statement (not found)

    如果在使用mapper xml时报了Invalid bound statement not found 的错误 xff0c 并且自己的mapper xml的路径和文件名都没有错误的情况 xff0c 很可能是因为没有在pom xml中配置如下
  • springboot项目创建

    1step xff1a File gt New gt project 2step 在New Project窗口选择Spring Initializer gt 选择default gt Next 3step 命名好项目名等信息点击 Next
  • SpringBoot存入数据库问号问题

    将resources目录下的application properties配置文件中数据库URL配置改为 xff1a spring datasource url 61 jdbc mysql localhost 3306 student use
  • 线程之wait/notify机制

    什么是等待 通知机制 举个栗子 xff1a 餐厅里 xff0c 厨师做好菜之后 xff0c 通知等待中的服务员就是一个简单的等待通知机制 wait xff1a wait方法代码的作用是使当前执行代码的线程进入等待 xff0c wait方法是
  • MySQL常用函数

    开始来熬大骨汤 xff0c 每周一碗大骨汤 xff0c 你也能变成光 于南京 MySQL函数的位置 xff1a 函数可以在select语句及其子句 xff08 例如 where order by having等 xff09 中 xff0c
  • idea的Browse Repositories搜索下载安装插件失败

    我在下载一个插件时 xff0c 刚开始出先下载超时time out xff0c 后来改了一些东西 xff0c 在Browse Repositories界面中 xff0c 直接搜不到插件了 xff08 一个插件都搜不到 xff09 xff0c
  • 安装goole浏览器报错

    1 下载一个谷歌的rpm包 xff0c 配置repo源 root 64 physical cat etc yum repos d google chrome repo google chrome name 61 google chrome
  • 经典编程书籍(C++, 网络, Windows, Linux)

    导读 xff1a 书单中列举的都是相关领域的经典书籍 xff0c 必读之作 此书单的编辑参考了很多网站 xff0c 包括一些名家的推荐 xff0c 例如侯捷 xff0c 孟岩 xff0c 荣耀 xff0c 潘爱民等等 xff0c 在此也向这
  • 域名+解析+GitHub来搭建自己的个人网站

    摘要 文章主要介绍域名解析 xff0c 使用GitHub上的开源项目来搭建一个个人博客 并不需要购买服务器 xff0c 没有数据库访问 xff0c 适合搭建自己的博客或者个人网站 xff0c 不适合大型网站 购买域名 可以在万网上面注册一个
  • Linux服务器批量管理工具 - TeamRemote

    产生背景 xff1a 当前网上流行的一些优秀且功能强大的工具 xff0c 如puppet xff0c dsh xff0c parallel ssh xff0c ansible等 但不得不说 xff0c 他们的上手起来太复杂了 xff0c 导
  • C语言书籍推荐

    C 语言书籍推荐 宗旨 xff1a 技术的学习是有限的 xff0c 分享的精神是无限的 一 基础 1 C语言入门很简单 零起点学通C语言 xff08 多媒体范例教学 xff09 C语言从入门到精通 2 C程序设计语言 第2版 新版 C程序设
  • MATLAB排序函数

    MATLAB排序函数 2011 06 29 13 02 08 源自网络 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61
  • 具有FTP、FTPS和sftp功能的文本编辑器——EditPlus功能介绍

    EditPlus是Windows的文本编辑器 xff0c 具有内置的FTP FTPS和sftp功能 虽然它可以很好地替代记事本 xff0c 但它也为网页作者和程序员提供了许多强大的功能 功能特征 01 语法高亮 EditPlus 默认支持H
  • 《iOS高级编程》中的内存管理基础【MRC】

    文章目录 关于我的仓库前言准备工作内存管理 引用计数 的思考 p 2 p 13 记住一张表格内存管理四大原则注意点疑点 内存管理四兄弟 alloc retain release dealloc p 13 p 20 说明alloc计数GNU实
  • python获取指定路径的文件夹下所有TXT文本内容

    有时候 xff0c 我们需要读取某个指定路径的文件夹下的所有txt的文本内容 xff0c 具体步骤 xff1a 可以使用os listdir 方法先获取文件夹下所有文本的文件名 xff0c 然后循环遍历文件名 xff0c 使用open 方法
  • 生物识别传感器 安全性要求背景

    7 3 10 生物识别传感器 如需了解衡量生物识别解锁模式的安全性的其他背景 xff0c 请参阅衡量生物识别的安全性文档 如果设备实现包含安全锁定屏幕 xff0c 则 xff1a 应包含生物识别传感器 生物识别传感器可基于其欺骗和冒名攻击的