活体检测:方法、指标与测试 (ZH)
一份关于生物识别活体检测的技术指南:主动与被动方法、演示与注入攻击、PAD指标、测试、部署以及常见的评估错误。.

活体检测是一种生物识别控制,用于评估样本是否来自捕获时在场的活体真人,而不是照片、回放、面具或其他伪造物。在人脸验证中,它有助于在单独的人脸匹配系统回答“这张脸是否与参考匹配?”之前,回答“这是一次活体捕获吗?”
检测呈现给生物识别传感器的伪造物的标准术语是演示攻击检测,或PAD。活体和PAD在产品讨论中经常互换使用,但界限很重要:攻击还可以将合成或回放的媒体注入数据路径,而无需向物理摄像头呈现任何内容。
主要观点
- 活体检测和人脸匹配回答不同的问题。一个活生生的陌生人可以通过活体检测,但仍然是错误的人;一个正确的人的准确图像可以匹配,但可能是一个回放。
- 被动和主动方法带来不同的权衡。被动检查观察正常捕获,而主动检查要求用户完成提示操作。
- PAD和注入防御涵盖不同的攻击路径。强大的捕获流程必须同时考虑传感器及其后的软件管道。
- 单一的准确率不足以说明问题。评估需要攻击错误率、真实用户错误率、测试条件、人口统计和设备切片、延迟和重试行为。
- 测试必须模拟预期的部署。攻击工具、摄像头、压缩、光照、地理位置和用户群体都会影响结果。
活体检测的作用
远程人脸验证流程通常包含几个不同的决策:
- 捕获完整性:样本是否通过预期的摄像头和应用程序路径生成?
- 演示攻击检测:传感器是否似乎正在观察活体生物特征,而不是攻击工具?
- 生物特征质量:样本是否适合分析?
- 人脸匹配:捕获的人脸是否与可信参考足够相似?
- 上下文风险:设备、网络、账户和行为信号是否支持相同的结论?
将这些决策合并为一个“已验证”结果会使弱点难以定位。将它们分开可以使团队调整策略、解释结果,并对低质量、可疑欺骗、身份不匹配和高上下文风险做出不同的响应。
因此,活体检测是身份决策中的一种控制,而不是身份本身的证明。
演示攻击和注入攻击
演示攻击发生在生物识别传感器处。攻击者呈现旨在被捕获的物体,就好像它是目标人物一样。例如:
- 打印或显示的人脸图像;
- 在另一个屏幕上回放的视频;
- 剪纸或部分伪造物;
- 二维或三维面具;
- 化妆、假肢或其他外观修改。
注入攻击改变捕获路径。预先录制、修改或生成的媒体可以插入到虚拟摄像头、应用程序、操作系统界面、模拟器或网络请求中。物理摄像头可能永远看不到伪造的样本。
这种区别改变了防御方式。PAD可以检测与所呈现伪造物相关的视觉或行为证据,但注入流可能避免PAD方法预期的物理条件。因此,防御措施除了生物识别分析外,还可以包括应用程序完整性、可信捕获、回放抵抗、会话绑定、负载认证、虚拟摄像头检测和服务器端一致性检查。
被动、主动和混合活体检测
被动活体检测
被动活体检测在不要求用户执行明显挑战的情况下分析捕获。根据实现方式,它可能会检查纹理、深度线索、反射、运动、图像形成、时间一致性或其他信号。
主要优点是交互成本低:检查可以在普通自拍或短时捕获期间进行。权衡是其安全性严重依赖于测试的攻击集、捕获通道、模型和阈值。“被动”描述的是用户体验,而不是普遍的保证水平。
主动活体检测
主动活体检测要求用户响应提示,例如改变头部姿势或遵循随机序列。响应可以增加挑战-响应证据,并使固定回放的用处降低。
权衡是增加了时间、可访问性要求、本地化需求和用户错误。可预测或可重复使用的挑战也可能失去价值,因此挑战设计和会话绑定与可见手势同样重要。
混合活体检测
混合流程将被动分析与主动挑战相结合,通常只在被动结果不确定或周围风险较高时才升级。这可以为大多数真实用户保留一条短路径,同时在特定情况下收集更多证据。
| 方法 | 用户交互 | 主要优势 | 主要限制 | 有用模式 |
|---|---|---|---|---|
| 被动 | 正常捕获 | 低摩擦 | 取决于捕获条件和测试的攻击 | 默认筛选 |
| 主动 | 提示操作 | 增加挑战-响应证据 | 更多放弃和可访问性工作 | 高风险或不确定情况 |
| 混合 | 有条件 | 可平衡证据和摩擦 | 更复杂的策略和编排 | 基于风险的升级 |
正确的选择取决于受保护的操作。账户恢复、高价值转账、年龄检查、员工访问和初始客户入职不一定需要相同的阈值或交互。
活体检测决策是如何产生的
尽管实现方式不同,但结构良好的流程通常遵循以下阶段:
- 启动绑定会话。后端创建一个与预期用户、操作、设备和策略相关的短期尝试。
- 引导捕获。界面检查构图、可见性、光照和运动,同时提供可访问的说明。
- 保护输入路径。应用程序限制回放和替换机会,并将样本绑定到当前会话。
- 检查样本质量。不可用的输入与可疑攻击分开;要求更好的捕获不同于拒绝欺诈。
- 运行PAD或活体分析。系统根据配置的方法生成分数或分类证据。
- 需要时匹配身份。单独的生物识别比较将活体捕获与可信参考关联起来。
- 结合风险信号。设备、IP、尝试历史、速度和账户上下文可能会改变所需的行动。
- 应用策略。结果可能是通过、重试、升级、人工审核或拒绝。
- 记录决策。审计数据应识别版本、阈值、证据、时间安排和结果原因。
重试需要明确的规则。无限次尝试会给攻击者更多机会,并可能掩盖操作问题。然而,过于严格的限制可能会惩罚拥有旧摄像头、残障、连接不良或光线不佳的真实用户。
重要的指标
ISO/IEC 30107将涉及攻击演示的错误与涉及真实用户的错误分开。常见的PAD术语包括:
- APCER — 攻击演示分类错误率:特定类型的攻击演示被错误分类为真实的比例。
- BPCER — 真实演示分类错误率:真实演示被错误分类为攻击的比例。
这些值必须在给定的操作点上一起解释。降低阈值可能会拒绝更多攻击,同时也会拒绝更多真实用户。将所有攻击聚合为一个平均值可能会掩盖对特定工具(例如回放或面具)的弱点。
其他操作措施也是必要的:
- 获取或完成失败;
- 重试和放弃率;
- 决策延迟;
- 按设备、操作系统、摄像头和网络条件划分的结果;
- 跨相关人口统计群体的结果;
- 人工审核率和审核员一致性;
- 部署后确认的欺诈和误报结果。
人脸匹配引入了其自身的误匹配和未匹配测量。这些不应作为活体检测指标呈现。完整的报告应为每个比率指定子系统、人群、阈值、测试集和分母。
独立PAD测试证明了什么——以及没有证明什么
独立评估很有价值,因为它提供了一个可重复的测试计划、记录在案的攻击工具以及由供应商自身演示之外产生的结果。ISO/IEC 30107-3规定了PAD测试和报告的原则。
认证或实验室测试并不能证明每次部署都会表现相同。阅读范围:
- 测试了哪个产品和版本?
- 模式是主动、被动还是两者兼有?
- 包括了哪些攻击种类和呈现级别?
- 使用了哪些设备、摄像头和环境条件?
- 适用了哪些阈值和重试规则?
- 测试是否只涵盖了演示攻击,还是也涵盖了注入攻击?
部署可能因不同的摄像头、压缩、SDK集成、阈值、捕获指导或策略而偏离实验室结果。将报告视为关于已定义配置的证据,然后为实际环境添加测试。
如何评估活体检测系统
1. 定义受保护的操作
说明通过后会发生什么,以及误接受或误拒绝造成的损害。开立低风险账户的后果可能与授权账户恢复或大额转账不同。
2. 构建攻击模型
列出相关的演示工具和注入路径。在只关注复杂的合成媒体之前,包括普通的回放和打印。考虑攻击者是否拥有高质量图像、视频、身份证明文件、账户凭据或设备控制权。
3. 要求范围明确的证据
要求在建议的操作阈值下,提供每次攻击的结果,而不是未标记的“99%”数据。除了攻击性能外,还要审查真实用户错误、完成率、延迟、设备覆盖范围、可访问性和独立测试范围。
4. 测试实际集成
在用户实际使用的设备、浏览器、带宽和光照条件下运行生产SDK或捕获组件。测试中断、权限拒绝、后台运行、重试、模拟器、虚拟摄像头和重复使用的会话。
5. 评估整个决策
测试人脸匹配、文档或数据库证据、会话绑定、设备和网络信号、升级逻辑、审查工具、审计记录和恢复路径。活体检测结果不能弥补薄弱的注册参考或不安全的备用方案。
6. 发布后监控
按产品版本、设备细分、地理位置、获取渠道和策略跟踪结果变化。变化可能表明新的攻击、模型退化、摄像头特定问题或流量构成变化。保留版本化的证据,以便历史决策仍可解释。
常见的评估错误
将活体检测视为身份证明
活体真人可以使用他人的证件或合成身份。将存在证据与可信参考和其他客户尽职调查控制措施配对。
用一个标题数字比较供应商
没有分母、攻击类型、阈值和真实用户错误的数据百分比是不可比较的。要求提供操作曲线或您打算使用的阈值下的结果。
忽略注入路径
面向摄像头的PAD和应用程序完整性解决的是相关但不同的问题。测试预先录制或生成的媒体是否可以绕过预期的传感器路径。
将质量差与欺诈混淆
模糊、眩光、遮挡、可访问性需求和低带宽可能导致不确定性。质量重试应使用与可疑攻击不同的消息和策略。
阻止所有不确定的尝试
二元策略可能会增加误报并排除真实用户。基于风险的重试、主动升级、另一个因素和经过训练的审查通常比强制一个检测器决定一切更安全。
使恢复比注册更弱
攻击者会瞄准最简单的路径。如果账户恢复或因素重置绕过了原始保证,那么强大的入职活体检测就无法保护账户生命周期。
部署清单
发布前,请确认:
- 受保护操作和所需保证已记录在案;
- 演示和注入威胁已单独建模;
- 测试结果识别版本、阈值、设备、攻击工具和分母;
- 活体检测、质量和人脸匹配结果保持独立;
- 会话和捕获是短期的、绑定的,并且能抵抗回放;
- 重试、升级、审查和恢复策略具有明确的限制;
- 已测试可访问性和低端设备的用户旅程;
- 日志保留每个决策的原因、证据、配置和版本;
- 监控可以检测按攻击类型和用户细分的变化;
- 隐私保留和访问控制与生物识别数据的敏感性相匹配。
在身份工作流中使用Didit进行活体检测
Didit提供被动活体检测,每次检查收费0.10美元,以及主动活体检测,每次检查收费0.15美元。其认证包括iBeta Level 1 PAD。团队可以将活体检测与身份验证、人脸匹配以及设备和IP分析结合到工作流中,然后选择何时重试、升级、审查或停止。
完整的KYC捆绑包定价为0.33美元,结合了身份验证、被动活体检测、人脸匹配和IP分析。当前模块价格发布在定价页面。这些产品事实描述了可用的控制措施;组织仍必须根据自身风险、用户和监管义务设置阈值和审查规则。
常见问题
活体检测与人脸识别相同吗?
不。活体检测评估生物识别样本是否来自活体、在场的人。人脸匹配将该样本与参考进行比较,以评估它们是否描绘了同一个人。许多流程需要两者。
什么是演示攻击检测?
PAD是对通过呈现伪造物或改变的特征来干扰生物识别系统传感器的尝试进行的自动化检测。它是通常与活体检测控制相关的面向标准的术语。
被动活体检测和主动活体检测哪个更好?
没有哪个是普遍更好的。被动方法通常减少交互,而主动方法以摩擦和可访问性工作为代价增加挑战-响应证据。应针对相同的攻击模型、用户群体、设备和操作策略评估两者。
活体检测能阻止深度伪造吗?
它可以作为对抗某些合成媒体攻击的一个层面,但它不是一个完整的深度伪造防御。注入控制、可信捕获、取证和来源信号、人脸匹配、上下文风险和安全恢复仍然是必要的。
APCER和BPCER是什么意思?
APCER衡量被错误分类为真实的攻击演示;BPCER衡量被错误分类为攻击的真实演示。两者都取决于测试的攻击类型和操作阈值。
PAD认证是否涵盖注入攻击?
并非自动涵盖。必须仔细阅读认证范围。PAD测试侧重于定义条件下的演示攻击;注入和应用程序路径防御可能需要单独评估。
应该多久使用一次活体检测?
使用频率应根据操作风险而定。它可能适用于注册、恢复、高风险身份验证或敏感交易,但重复的生物识别捕获也会带来隐私和用户体验成本。
主要参考文献
- NIST词汇表:演示攻击检测
- ISO/IEC 30107-1:2023 生物识别演示攻击检测框架
- ISO/IEC 30107-3:2023 PAD测试和报告
- NIST FATE 第10部分:基于被动软件的PAD性能
- NIST SP 800-63B-4:认证和认证器管理
- FIDO联盟人脸验证认证计划
活体检测在声明狭窄且可测试时效果最佳:它增加了生物识别样本来自捕获时的活体真人的证据。身份、授权和持续风险决策必须围绕该证据构建,而不是从中推断。