必须满足设备的实现Android 兼容性定义文档 (CDD)中列出的要求将被视为和 Android 兼容。Android 10 CDD 根据和评估生物识别的安全性。
- :生物识别管在抵抗核心或平台入侵时有多灵活。如果攻击者在入侵核心和平台后无法读取原始生物识别数据,也无法将合成数据注入管道,以影响身份验证决策,则认为管道是安全的。
- :欺骗性是生物识别的欺骗接受率 (SAR)衡量。SAR 是 Android 9 其中一个指标旨在衡量生物识别技术对专业攻击者的弹性。您需要遵循以下协议来衡量生物识别技术的弹性。
Android 用三种指标来衡量生物识别的强度。
- :定义的指标用于衡量生物识别模型接受事先记录的已知良好样本的可能性。例如,对于语音解锁,该指标将测量已记录的用户语音样本。Ok, Google成功解锁用户手机的概率。我们称这种攻击为。
- :用于衡量生物识别模型接受意图模仿已知样本的输入概率。例如,在Smart Lock在可信声音(语音解锁)机制中,该指标将衡量攻击者模仿用户声音(使用相似的音调、口音等)成功解锁设备的可能性。我们称这种攻击为。
- :定义的指标用于测量模型错误接受随机选择的错误输入概率。虽然它是一个非常实用的测量指标,但它不能提供足够的信息来评估模型抵抗定向攻击的效果。
可信代理
Android 10 改变了可信代理的行为方式。可信代理不能解锁设备,只能延长解锁设备的解锁时间。可信的脸 Android 10 中已弃用。
分层身份验证
根据结构安全性和欺骗性测试结果对生物识别安全性进行分类。生物识别实现可分为、或。下表介绍了各个层次。
生物识别水平 | 指标 | 生物识别管道 | 约束 |
---|---|---|---|
第 3 类 - 强 | SAR:0-7% FAR:1/50k FRR:10% | 安全 |
|
第 2 类 - 弱 (新设备) | SAR:7-20% FAR:1/50k FRR:10% | 安全 |
|
第 2 类 - 弱 (升级设备) | SAR:7-20% FAR:1/50k FRR:10% | 不安全/安全 |
|
第 1 类 - 方便(新设备) | SAR:>20% FAR:1/50k FRR:10% | 不安全/安全 |
|
第 1 类 - 便利 (用于升级设备) | SAR:>20% FAR:1/50k FRR:10% | 不安全/安全 |
|
对比强弱方便的模式
解锁模式的评级标准将同时考虑三种接受率,即 FAR、IAR 和 SAR。没有冒名攻击,我们只考虑 FAR 和 SAR。 如需了解所有解锁模式的对策,请参考Android 兼容性定义文档(CDD)。
人脸识别和虹膜识别身份验证
:人脸生物识别身份验证与虹膜生物识别身份验证的评估过程相同。两者之间唯一的区别是不同的测试实际演示媒介。人脸识别身份验证使用目标人脸的照片或面具,虹膜识别身份验证使用目标眼睛的照片或假体。
评估流程
评估过程由两个阶段组成。确定指定的身份验证解决方案(即校准后的位置)的最佳演示攻击。使用校准后的位置执行多次攻击,并评估攻击成功的次数。
首先,请确定校准后的位置,因为您只能通过攻击系统中最大的弱点来衡量 SAR。
校准流程
:校准阶段用于寻找参数的最佳值,以最大限度地提高欺骗身份验证解决方案的概率。
有三个参数需要优化人脸识别和虹膜识别身份验证,以确保测试阶段的最佳值。
面孔虹膜
- 是欺骗行为的实际输出媒介。以下媒介目前在考虑范围内:
- 2D
- 打印照片
- 显示器或手机屏幕上的照片
- 手机屏幕上的显示器或视频
- 3D
- 3D 打印面具
- 2D
- 涉及进一步操纵媒体或环境,在一定程度上有助于欺骗。以下是一些尝试操作的例子:
- 稍微折叠打印照片,在脸颊上形成曲线(稍微模仿深度),有时有助于破解 2D 人脸识别身份验证解决方案。
- 改变光照条件是通过改变环境来帮助欺骗攻击的一个例子
- 弄脏或稍微弄脏镜头
- 使手机屏幕方向在竖屏模式和横屏模式之间进行切换,看看这是否会影响欺骗性
- 它与基于机器学习的身份验证解决方案密切相关。通过对跨主体性别和种族的校准过程的测试,通常会发现该过程对全球人口群体的影响显著下降,这是本阶段需要校准的重要参数。
欺骗测试旨在测试系统是否接受有效的重放或演示攻击。如果反欺诈或演示攻击检测 (PAD) 通过生物识别验证过程,演示媒体必须足以作为有效的生物识别声明。没有反欺骗或者 PAD 在功能条件下,如果演示媒体不能通过生物识别验证过程,则将被视为无效欺骗,使用该媒体的所有测试也将被视为无效。欺骗性测试的执行者应证明测试中使用的演示媒体或人工产品符合本标准。
:目前还没有考虑硅胶或陶瓷面具。
:如果优化这些参数的实验经历了许多失败的尝试和尝试 PIN 代码/解锁图案/密码已经重新验证,您不必担心。这一阶段不同于实际攻击,但类似于攻击者在试图解锁目标设备之前对自己的测试设备行类似的校准。
测试阶段
测试阶段是实际衡量解决方案弹性的阶段,方法是使用前一阶段经过优化的演示攻击来衡量。
计算测试阶段的尝试次数
从呈现人脸(真实或假冒)开始,到接收到来自手机的反馈(解锁事件或用户可见的消息),这一过程被计为一次尝试。当手机无法获取足够的数据来尝试匹配时,任何尝试都不应计入用于计算 SAR 的总尝试次数。
评估协议
注册
在开始人脸识别或虹膜识别身份验证的校准阶段之前,请转至设备设置并移除所有现有的生物识别个人资料。移除所有现有的个人资料后,请使用目标人脸或虹膜注册一份新的个人资料,以用于校准和测试。在添加新的人脸或虹膜个人资料时,请务必处于明亮的环境中,并将设备正确地放置在目标人脸正前方 20 厘米至 80 厘米处。
校准阶段
准备演示媒介。
面孔虹膜
- 在与注册流程相同的光照条件、角度和距离下,为注册人脸拍摄高品质的照片或视频。
- 对于实际打印件:
- 沿着脸部轮廓进行裁剪,制作各种各样的纸面具。
- 在两侧脸颊处弯曲面具,以模仿目标人脸的弧线
- 在“面具”上切开眼孔,以便露出测试人员的眼睛 - 这对于将眨眼作为活体检测方法的解决方案十分有用。
- 尝试建议的演示格式操作,看看它们是否会影响校准阶段的成功机率
执行校准阶段
参考位置
- :参考位置是通过以下方式确定的:将演示媒介放置在设备前方的适当距离(20-80 厘米)处,这样可以使媒介在设备视野内清晰可见,但所有其他正在使用的物体(例如,媒介的支架)不可见。
- :当媒介位于参考位置时,设备和媒介之间的水平面为水平参考面。
- :当媒介位于参考位置时,设备与媒介之间的垂直面为垂直参考面。
:参考面
垂直弧线
确定参考位置,然后沿垂直弧线测试媒介,确保媒介与设备之间的距离和参考位置与设备之间的距离相同。在同一垂直面内提升媒介的位置,使设备和水平参考面之间呈 10 度角,然后测试人脸解锁。
继续以 10 度为增量提升媒介的位置并进行测试,直到媒介在设备视野范围内不再可见。记录所有成功解锁设备的位置。重复这一过程,但要沿着向下弧线将媒介移动到水平参考面下方。有关弧线测试的示例,请参阅下面的图 3。
水平弧线
将媒介返回参考位置,然后沿水平面移动,使其与垂直参考面呈 10 度角。使用位于此新位置的媒介执行垂直弧线测试。以 10 度为增量沿水平面移动媒介,并在每个新位置执行垂直弧线测试。
弧线测试需要在设备的左侧和右侧以及设备的上方和下方以 10 度为增量重复进行。
最可能实现解锁的位置是用于进行 2D 欺骗的。
3D 校准阶段
除了使用 3D 打印媒介(例如,面具)之外,3D 媒介的校准阶段与 2D 媒介的校准阶段相同。按照 2D 媒介校准的说明执行 3D 媒介校准,并确定校准后的位置。
测试多样性
人脸和虹膜模型在不同性别和种族之间的效果可能会有所不同。针对各种不同的人脸校准演示攻击,以尽可能提高发现性能差异的机率。
测试阶段
在校准阶段结束时,应该有两个校准后的位置(2D 和 3D 测试通用)可用于测试 2D 和 3D 欺骗性。如果无法确定校准后的位置,则应使用参考位置。该测试方法对于 2D 和 3D 测试来说十分常见,并且非常简单。
- 涵盖所有已注册的人脸(其中 E >= 10),且包含至少 5 个独一无二的人脸(这意味着应针对这 5 个独一无二的人脸中的每个人脸至少重复进行两次测试)。
- 注册人脸/虹膜
- 使用上一阶段的执行 U 次解锁尝试,并按照上一部分中的说明计算尝试次数,其中 U >= 10。记录成功解锁的次数 S。
- 然后,您可以根据以下公式衡量 SAR(分别用于 2D 和 3D 测试):
其中:
- E = 注册数量
- U = 每次注册的解锁尝试次数
- Si = 针对注册 i 的成功解锁次数
为获取统计学上有效的错误率样本所需的迭代次数:假设以下所有样本的置信度均为 95%,采用大样本进行测试
误差范围 | 每个主体所需的测试迭代次数 |
---|---|
1% | 9595 |
2% | 2401 |
3% | 1067 |
5% | 385 |
10% | 97 |
所需时间(每次尝试 30 秒,共 5 个主体)
误差范围 | 总时间 |
---|---|
1% | 399 个小时 |
2% | 100 个小时 |
3% | 44.5 个小时 |
5% | 16.4 个小时 |
10% | 4.0 个小时 |
我们建议将误差范围设为 5%,从而确定总体的真实误差率为 2% 到 12%。
范围
此流程主要是针对目标用户人脸的复制品测试人脸识别身份验证的弹性。它并不涉及基于非复制品的攻击,例如使用 LED 或充当主要打印件的解锁图案。尽管这些方法尚未被证明可有效抵御基于深度的人脸识别身份验证系统,但从概念上来说,这点毋庸置疑。未来的研究可能会证明情况确实如此。在这一点上,我们将对本协议进行修订,使其包括针对抵御这些攻击的弹性的衡量方法。
指纹身份验证
在 Android 10 中,该指标被设置为对于虚假指纹的弹性最低,因为经衡量其欺骗接受率 (SAR) 小于或等于 7%。此博文中专门简要说明了欺骗接受率为 7% 的原因。
评估流程
评估流程由两个阶段组成。为指定的指纹识别身份验证解决方案(即校准后的位置)确定最佳演示攻击。使用校准后的位置执行多次攻击并评估攻击成功的次数。
校准流程
:校准阶段用于寻找参数的最佳值,以最大限度提升欺骗身份验证解决方案的概率。
对于指纹识别身份验证,有三个参数需要进行优化,以确保测试阶段获得最佳值。
- 是欺骗行为的实际输出媒介,例如打印的指纹或模塑副本均为演示媒介的示例。我们强烈建议您使用以下欺骗材料。
- 光学材料
- 使用不导电油墨的复印纸/透明胶片
- 诺克斯明胶
- 乳胶漆
- 埃尔默牛头安全万用胶水
- 电容性材料
- 使用导电油墨的复印纸/透明胶片
- 诺克斯明胶
- 埃尔默牛头木匠室内木胶
- 埃尔默牛头安全万用胶水
- 乳胶漆
- 超声波材料
- 使用不导电油墨的复印纸/透明胶片
- 诺克斯明胶
- 埃尔默牛头木匠室内木胶
- 埃尔默牛头安全万用胶水
- 乳胶漆
- 光学材料
- 涉及到对媒介或环境的进一步操纵,在某种程度上有助于进行欺骗。例如,在创建 3D 副本之前,修复或编辑具有高分辨率的指纹图片。
- 与优化算法息息相关。通过测试跨主体性别和种族的校准流程,通常会发现该流程对全球人口各个群体的效果显著下降,而这是此阶段需要校准的重要参数。
:如果优化这些参数的实验经历过多次失败尝试及通过 PIN 码/解锁图案/密码进行过重新验证,您也无需担心。此阶段与实际攻击不一样,而是类似于攻击者在尝试解锁目标设备之前对自己的测试设备执行类似的校准。
测试多样性
指纹读取器在不同性别和种族之间的效果可能会有所不同。一小部分人群的指纹难以识别,因此应使用多种指纹来确定用于识别和欺骗测试的最佳参数。
测试流程
测试阶段是实际衡量解决方案弹性的阶段。测试应以非合作的方式进行。也就是说,任何指纹的收集都是通过从其他表面上提取指纹来完成的,而不是让目标主动参与指纹的采集(例如,制作模具)。
计算测试阶段的尝试次数
从向传感器提供指纹(真实或假冒)开始,到接收到来自手机的反馈(解锁事件或用户可见的消息),这一过程计为一次尝试。
当手机无法获取足够的数据来尝试匹配时,任何尝试都不应计入用于计算 SAR 的总尝试次数。
评估协议
注册
在开始指纹识别身份验证的校准阶段之前,请转至设备设置并移除所有的现有生物识别个人资料。移除所有的现有配置文件后,请使用目标指纹注册一份新的个人资料,以用于校准和测试。请按照屏幕上的所有说明进行操作,直到成功注册个人资料。
校准阶段
超声波材料
这与光学材料和电容性材料的校准阶段类似,但同时包含目标用户指纹的打印件和 3D 模具。
- 从表面提取一份隐藏的指纹。
- 使用打印件等演示媒介进行测试
- 将提取的指纹放在传感器上
- 使用 3D 模具进行测试。必须为每个人使用至少 4 种不同的材料(例如,明胶、硅胶、木胶)来创建仿冒指纹。
- 创建指纹模具
- 将模塑指纹放在传感器上
光学材料
对光学材料进行校准涉及提取一份隐藏的目标指纹。例如,这可以使用通过指纹粉末提取的指纹或指纹的打印件完成,并且可能包含手动重新触摸指纹图片以实现更加出色的欺骗效果。
电容性材料
电容性材料的校准包含与上述光学材料校准相同的步骤,但在隐藏的目标指纹制作完成之后,还会制成一个指纹模具。
:对指纹模具加温可以提高欺骗成功率。此外,还可在模具中加入石墨等添加剂,以提高导电性。
测试阶段
- 使用计算 FRR/FAR 时所用的相同参数,让至少 10 个唯一用户注册一个指纹
- 通过上述方法,使用至少 4 种不同的欺骗材料为每个人创建至少 4 个虚假指纹
- 在每人 5 次的解锁尝试中,尝试各种不同的欺骗方式
为获取统计学上有效的错误率样本所需的迭代次数:假设以下所有样本的置信度均为 95%,采用大样本进行测试
误差范围 | 每个主体所需的测试迭代次数 |
---|---|
1% | 9595 |
2% | 2401 |
3% | 1067 |
5% | 385 |
10% | 97 |
所需时间(每次尝试 30 秒,共 5 个主体)
误差范围 | 总时间 |
---|---|
1% | 399 个小时 |
2% | 100 个小时 |
3% | 44.5 个小时 |
5% | 16.4 个小时 |
10% | 4.0 个小时 |
我们建议将误差范围设为 5%,从而确定总体的真实误差率为 2% 到 12%。
范围
此流程主要是针对目标用户指纹的复制品测试指纹身份验证的弹性。测试方法基于当前的材料成本、可用性和模具制作技术。我们将对本协议进行修订,使其包括在新材料和技术变得切实可行时衡量其弹性。
常见注意事项
尽管不同模式需要不同的测试设置,但有一些常见的注意事项适用于所有这些模式。
测试实际硬件
如果生物识别模型是在理想条件下测试的,并且测试硬件与实际所用的移动设备不同,则采集的 SAR/IAR 指标可能会不准确。例如,使用多个麦克风在无回音室中校准的语音解锁模型,当在嘈杂环境中使用单个麦克风时,行为会明显不同。为了获得准确的指标值,应在安装了相关硬件的实际设备上进行测试,或至少使用相同硬件并以其在设备上的实际应用方式进行测试。
使用已知的攻击
目前采用的大多数生物识别模式都被成功欺骗过,并且相应的攻击方法也已公开。下面简要介绍出现已知攻击的模式对应的测试设置。建议尽可能使用此处列出的设置。
预测新的攻击
对于进行了新的重大改进的模式,测试设置文档可能不包含合适的设置,并且可能不存在已知的公开攻击。在发现新攻击后,现有模式还可能需要调整测试设置。在这两种情况下,您都需要配置合理的测试设置。请使用此页面底部的网站反馈链接告诉我们您是否已设置可添加的合理机制。
针对不同模式的设置
指纹
IAR | 不需要。 |
---|---|
SAR |
|
人脸和虹膜
IAR | 下限将由 SAR 捕获,因此不需要单独衡量该指标。 |
---|---|
SAR |
|
语音
IAR |
|
---|---|
SAR |
|
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2021-02-25 UTC.