衡量生物识别解锁模式的安全性

设备实现必须满足 Android 兼容性定义文档 (CDD) 中列出的要求,才会被视为与 Android 兼容。 Android 10 CDD 根据架构安全性欺骗性来评估生物识别实现的安全性。

  • 架构安全性:生物识别管道抵御内核或平台入侵的弹性。如果攻击者在入侵内核和平台后既无法读取原始生物识别数据,也无法将合成数据注入管道以影响身份验证决策,则认为该管道是安全的。
  • 生物识别安全性效果:生物识别安全性的效果通过生物识别的欺骗接受率 (SAR)、错误接受率 (FAR)(如果适用)和冒名接受率 (IAR) 来衡量。SAR 是 Android 9 中引入的一项指标,旨在衡量生物识别技术抵御实际演示攻击的弹性。在衡量生物识别技术的弹性时,您需要遵循下述协议。

Android 使用三类指标来衡量生物识别安全性的效果。

  • 欺骗接受率 (SAR):其定义的指标用于衡量生物识别模型接受事先记录的已知良好样本的概率。例如,对于语音解锁,该指标会衡量使用已录制的用户语音样本“Ok, Google”成功解锁用户手机的概率。我们将此类攻击称为欺骗攻击(又称为冒名攻击演示匹配率 (IAPMR))。
  • 冒名接受率 (IAR):其定义的指标用于衡量生物识别模型接受意图模仿已知良好样本的输入的概率。例如,在 Smart Lock 可信声音(语音解锁)机制中,该指标会衡量攻击者尝试模仿用户声音(使用相似的音调和口音)成功解锁设备的概率。我们将此类攻击称为冒名攻击
  • 错误接受率 (FAR):其定义的指标用于衡量模型错误地接受随机选择的有误输入的概率。尽管它是非常实用的衡量指标,但它无法提供足够信息来评估模型抵御定向攻击的效果。

注意:IAR 衡量并非对所有生物识别模式都适用,但 SAR 适用于各种生物识别模式。
Android 生物识别安全性合作伙伴包括生物识别硬件和软件供应商,以及创建和测试 Android 设备中使用的生物识别安全系统的生物识别安全性测试实验室。这些合作伙伴可以获得 Android 的详细指导,还可以向 Android 提供反馈和意见。如果您的组织想要成为 Android 生物识别安全性合作伙伴,请提交此表单

生物识别类别

生物识别安全性根据架构安全性和欺骗性测试的结果进行分类。生物识别实现可以分类为 3 类(之前的强)2 类(之前的弱)或 1 类(之前的便利)。下表介绍了适用于搭载 Android 11 的新设备的各个类别。

生物识别类别指标生物识别管道约束条件
3 类
(之前的“强”)
SAR:0-7%
FAR:1/50k
FRR:10%
安全
  • 72 小时之后再回退到主要身份验证(例如,PIN 码、解锁图案或密码)
  • 可以向应用公开 API(例如,通过与 BiometricPrompt 或 FIDO2 API 集成)
  • 必须提交 BCR
2 类
(之前的“弱”)
SAR:7-20%
FAR:1/50k
FRR:10%
安全
  • 24 小时之后再回退到主要身份验证
  • 在 4 小时闲置超时期限或 3 次错误尝试之后,再回退到主要身份验证
  • 可以与 BiometricPrompt 集成,但无法与密钥库集成(例如,发布应用身份验证绑定密钥)
  • 必须提交 BCR
1 类
(之前的“便利”)
SAR:>20%
FAR:1/50k
FRR:10%
不安全/安全
  • 24 小时之后再回退到主要身份验证
  • 在 4 小时闲置超时期限或 3 次错误尝试之后,再回退到主要身份验证
  • 无法向应用公开 API
  • 从 Android 11 开始,必须提交 BCR(SAR 测试并不是强制性的,但我们强烈建议您进行此测试)
  • 临时类将来可能会被停用

注意:升级设备必须强制执行与最初发布设备时安装在设备上的 Android 版本相关联的 CDD 中指定的生物识别约束条件(如果有)。例如,对于从 Q 版本升级的 1-2 类(之前的“便利”和“弱”)模式的设备,必须满足下述约束条件:(1) 24 小时之后再回退到主要身份验证以及 (2) 在 4 小时闲置超时期限或 3 次错误尝试之后,再回退到主要身份验证;对于从 P 和更早版本升级的 1-2 类(之前的“便利”和“弱”)模式的设备,我们强烈建议执行上述约束条件。

3 类、2 类和 1 类模式

系统会根据安全管道的情况以及三个接受率(FAR、IAR 和 SAR)分配生物识别安全性类别。在不存在冒名攻击的情况下,我们只考虑 FAR 和 SAR。

如需了解所有解锁模式的应对措施,请参阅 Android 兼容性定义文档 (CDD)。

指纹身份验证

在 Android 9 中,该指标被设置为对于 PAI 的弹性最低,因为经衡量其欺骗接受率 (SAR) 小于或等于 7%。

评估流程

评估流程由两个阶段组成。校准阶段为指定的指纹识别身份验证解决方案(即校准后的位置)确定最佳演示攻击。测试阶段使用校准后的位置执行多次攻击并评估攻击成功的次数。Android 设备和生物识别系统的制造商应提交此表单,以便与 Android 联系获取最新的测试指导。

校准阶段

目标

校准阶段用于寻找参数的最佳值,以最大限度提升欺骗身份验证解决方案的概率。

为了确保测试阶段获得最佳值,需要对指纹身份验证的三个参数进行优化:演示攻击手段 (PAI)、演示格式和跨主体多样性的效果

  • PAI 是欺骗行为的实际媒介,例如打印的指纹或模塑副本都是演示媒介的示例。我们强烈建议您使用以下欺骗材料
    • 光学指纹传感器 (FPS)
      • 使用不导电油墨的复印纸/透明胶片
      • 诺克斯明胶
      • 乳胶漆
      • 埃尔默牛头安全万用胶水
    • 电容式 FPS
      • 诺克斯明胶
      • 埃尔默牛头木匠室内木胶
      • 埃尔默牛头安全万用胶水
      • 乳胶漆
    • 超声波 FPS
      • 诺克斯明胶
      • 埃尔默牛头木匠室内木胶
      • 埃尔默牛头安全万用胶水
      • 乳胶漆
  • 演示格式涉及到对 PAI 或环境的进一步操纵,在某种程度上有助于进行欺骗。例如,在创建 3D 副本之前,修复或编辑具有高分辨率的指纹图片。
  • 跨主体多样性的效果与优化算法息息相关。通过测试跨主体性别、年龄段和种族的校准流程,通常会发现该流程对全球人口各个群体的效果显著下降,而这是此阶段需要校准的重要参数。

注意:如果优化这些参数的实验经历过多次失败尝试及通过 PIN 码/解锁图案/密码进行过重新验证,您也无需担心。此阶段与实际攻击不一样,而是类似于攻击者在尝试解锁目标设备之前对自己的测试设备执行类似的校准。

测试多样性

指纹读取器在不同性别、年龄段和种族之间的效果可能会有所不同。一小部分人群的指纹难以识别,因此应使用多种指纹来确定用于识别和欺骗测试的最佳参数。

测试阶段

测试阶段是指衡量生物识别安全性的效果。测试至少应以非合作的方式进行,也就是说,任何指纹的收集都是通过从其他表面上提取指纹来完成的,而不是让目标主动参与指纹的采集(例如,以合作的方式制作主体的手指模具)。后一种方式是允许的,但并非必须。

计算测试阶段的尝试次数

从向传感器提供指纹(真实或假冒)开始,到接收到来自手机的反馈(解锁事件或用户可见的消息),这一过程计为一次尝试。

当手机无法获取足够的数据来尝试匹配时,任何尝试都不应计入用于计算 SAR 的总尝试次数。

评估协议

注册

在开始指纹识别身份验证的校准阶段之前,请转至设备设置并移除所有的现有生物识别个人资料。移除所有的现有配置文件后,请使用目标指纹注册一份新的个人资料,以用于校准和测试。请按照屏幕上的所有说明进行操作,直到成功注册个人资料。

校准阶段

光学 FPS

这与超声波和电容性材料的校准阶段类似,但同时包含 2D 和 2.5D PAI 类型的目标用户指纹。

  • 从表面提取一份隐藏的指纹。
  • 使用 2D PAI 类型进行测试
    • 将提取的指纹放在传感器上
  • 使用 2.5D PAI 类型进行测试。
    • 创建指纹 PAI
    • 将 PAI 放在传感器上

超声波 FPS

对超声波材料进行校准涉及提取一份隐藏的目标指纹。例如,这可以使用通过指纹粉末提取的指纹或指纹的打印件完成,并且可能包含手动重新触摸指纹图片以实现更加出色的欺骗效果。

获得一份隐藏的目标指纹之后,还会制成一个 PAI。

电容式 FPS

电容性材料的校准包含与上述超声波校准相同的步骤。

注意:对指纹 PAI 加温可以提高欺骗成功率。此外,还可在模具中加入石墨等添加剂,以提高导电性。

测试阶段

  • 使用计算 FRR/FAR 时所用的相同参数,让至少 10 个唯一用户进行注册
  • 为每个人创建 PAI
  • 然后,可以根据以下公式衡量 SAR:

 

为获取统计学上有效的错误率样本所需的迭代次数:假设以下所有样本的置信度均为 95%,采用大样本进行测试

误差范围每个主体所需的测试迭代次数
1%9595
2%2401
3%1067
5%385
10%97

所需时间(每次尝试 30 秒,共 10 个主体)

误差范围总时间
1%799.6 小时
2%200.1 小时
3%88.9 小时
5%32.1 小时
10%8.1 小时

我们建议将误差范围设为 5%,从而确定总体的真实误差率为 2% 到 12%。

范围

此流程主要是针对目标用户指纹的复制品测试指纹身份验证的弹性。测试方法基于当前的材料成本、可用性和相关技术。 我们将对本协议进行修订,使其包括在新材料和技术变得切实可行时衡量其弹性。

常见注意事项

尽管不同模式需要不同的测试设置,但有一些常见的注意事项适用于所有这些模式。

测试实际硬件

如果生物识别模型是在理想条件下测试的,并且测试硬件与实际所用的移动设备不同,则采集的 SAR/IAR 指标可能会不准确。例如,使用多个麦克风在无回音室中校准的语音解锁模型,当在嘈杂环境中使用单个麦克风时,行为会明显不同。为了获得准确的指标值,应在安装了相关硬件的实际设备上进行测试,或至少使用相同硬件并以其在设备上的实际应用方式进行测试。

使用已知的攻击

目前采用的大多数生物识别模式都被成功欺骗过,并且相应的攻击方法也已公开。下面简要介绍出现已知攻击的模式对应的测试设置。建议尽可能使用此处列出的设置。

预测新的攻击

对于进行了新的重大改进的模式,测试设置文档可能不包含合适的设置,并且可能不存在已知的公开攻击。在发现新攻击后,现有模式还可能需要调整测试设置。在这两种情况下,您都需要配置合理的测试设置。请使用此页面底部的网站反馈链接告诉我们您是否已设置可添加的合理机制。

针对不同模式的设置

指纹

IAR不需要。
SAR
  • 使用目标指纹的模具创建 2.5D PAI。
  • 衡量结果的精确度与指纹模具的质量密切相关。牙科硅胶是一个不错的选择。
  • 测试设置应衡量通过模具创建的虚假指纹成功解锁设备的概率。

文章详情,参考衡量生物识别解锁模式的安全性  |  Android 开源项目  |  Android Open Source Project

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值