前言
周一到周三搞 CaField 的复现,学信号处理,太难了,傅里叶变换的返回值都不知道怎么用。要恶补基础了。
每周为了周报搞阅读报告成功成为周更博主。
本篇的思路是把手机当成雷达,发送超声波观察用户发声姿势(舌头,下颚,嘴唇等的动作和位置)。然后由于不同用户的发声器官形状与发声习惯不同,就可以完成分类(扬声器由于使用膜的震动发声,可以很好的区分)。
1 基本信息
1.1 论文来源
L. Zhang, S. Tan, and J. Yang, “Hearing Your Voice is Not Enough: An Articulatory Gesture Based Liveness Detection for Voice Authentication,” in Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security, Dallas, Texas, USA, 2017, pp. 57–71, doi: 10.1145/3133956.3133962.
1.2 概述
本篇提出了 VoiceGesture,一个用于智能手机上的重放攻击检测的活体检测系统。得力于当今智能手机先进的音频硬件,VoiceGesture 利用用户发声时发声姿势的独特性来检测活体用户。具体来讲,方案将手机当做一个 Doppler Radar,在用户说出 passphrase 时,使用扬声器发出超声波并使用麦克风检测反射。不同用户的发声姿势会造成不同的多普勒偏移(Doppler shift),系统通过分析偏移来检测活体用户。VoiceGesture 不需要繁杂的操作或者额外的设备,只需要智能手机上的扬声器和麦克风即可*。 实验邀请了 21 个受试者,并且使用了不同的手机信号进行评估,结果发现可以达到超过 99 % 的检测准确率和大约 1 %的 EER。此外结果还显示方案对于不同的手机位置*和不同的采样频率具有鲁棒性。
注:
- Voice Gesture 需要手机操作系统能够处理较高采样率的数据(Android 6 之后即可,目前大部分手机满足)。此外手机的声卡需要能够支持较高采样率的播放与录制,这一点目前较为困难,大部分手机的采样率是 48 kHz,而方案的实验大部分是在 192kHz的采样率下实现(作者讨论了低采样率的情况)。最后,考虑到 20 kHz 附近的音频的播放和录制可能会因为物理设备的非线性性而出现问题( Dolphin Attack 的原理),本文与 Dolphin Attack 中使用的设备一样,都使用了天然支持较高采样率的三星(Galaxy S5, Galaxy Note3, and Galaxy Note5)。
- 实验只评估了 3cm 以内的位置变化,当位移达到 3cm 时,平均的 EER 会从1%上下提高到 7.38%。作者表示,因为手机会离嘴部一般比较近,所以位置晃动通常不会太大。
2 论文要点
2.1 背景
- 本文主要利用了多普勒效应,即当信号的信源与信宿发生相对运动时,信宿可以观察到接收到的波频发生变化。
- 当使用手机向发声器官发送超声波时,不同的人由于发声器官差异与发声习惯差异,反射回来的超声波会发生不同的频谱偏移。具体来讲,运动的角度的余弦值、运动速度和信号的频率都与频谱偏移成正相关。
- 扬声器的发声原理与人类完全不同,其通过不同的电信号使得音圈发生不同程度的震动进而带动振膜发声。从最直接的角度理解,人类的发声涉及到空间中不同位置的器官发生不同
角度和速度的运动,而扬声器的震动是单向的。(当然也有不同发声机理的扬声器,这里只讨论了最通用的)
2.2 价值
- 作者发现可以利用手机声学硬件的进步来感知用户的发声姿势,进一步研究发现我们甚至可以感知不同人发声时发声姿势的细微差别并进而区分他们(甚至是使用一样的 Passphrase 时)。
- 作者开发了 VoiceGesture,一个从 不同用户发声姿势带来的多普勒偏移变化 提取用户特征的语音活体检测系统。VoiceGesture 是实用的,因为无需繁杂的操作和额外的设备。
- 作者做了 高强度 的实验,发现 VoiceGesture 可以达到超过 99% 的检测准确率和大约 1% 的 EER,同时在不同手机和不同采样频率下也能正常工作。
2.3 问题陈述
本文主要解决语音认证场景下的重放攻击,考虑了两类攻击场景。
- playback attack:敌手通过高质量的录音设备和播放设备,录制并重放用户的声音。
- mimicry attack:敌手录制了用户的声音,使用 Far-Field 扬声器播放,并在播放时模仿用户的说话姿势。
第二类攻击并非传统意义的 mimicry attack,是针对 VoiceGesture 的攻击,攻击者本人无需发声,只需要配合口型骗过 VoiceGesture 即可。
2.4 方法
整体上,手机的扬声器会在语音认证系统被触发时开始播放 20kHz 的声音。当用户说出 passphrase 时,用户的声音和超声波的反射都会被录制。录制完成后,用户语音会被分离(通常小于10 kHz),留下 20 kHz 附近的频段用于多普勒频移的分析。具体来说系统会对多普勒偏移的频率偏移分布和能量分布进行分析来提取特征。最后提取出的特征会和用户最初录入的特征最对比以得到一个用于判别的分数。
2.5 结果
对于 playback attack,选择了 10 个参与者,每个人的 10 条 passphrase,使用不同播放设备播放共 10 次,故一共 1000 条攻击尝试。对于攻击,招募 4 个攻击者攻击 6 个用户,每个用户对 5 条 passphrase 攻击 5 次,一共 4 * 6 * 5 * 5 = 600 次攻击尝试。
对于两类攻击整体来说,在 1% 的 FAR 时,可以达到 98% 的检测率。对于重放攻击,系统达到了 99.3% 的准确度和 1.26% 的 EER。使用笔记本电脑作为服务器时,验证用时 0.5s。对于模仿攻击,可以达到 99.3% 的准确度和 1.21% 的 EER。
当手机放在耳边时,效果会差于放在面前,EER 会从 1.2% 提高到 2.24%。
使用较低采样率时的效果如下表:
采样率(kHz) | Accuracy(%) | EER(%) |
---|---|---|
192 | 99.3 | 1.26 |
96 | 98.72 | 1.63 |
48 | 98.69 | 2.01 |
使用三台不同手机录入和验证,平均准确率约 96.5%。
不同距离的影响如下(测试了不同方向,这里的距离是不同方向相同距离的平均):
距离(cm) | Accuracy(%) | EER(%) |
---|---|---|
1 | 99.25 | 1.89 |
2 | 96.91 | 5.99 |
3 | 94.05 | 7.38 |
3 评论
3.1 局限性
- 评估的参与者过少,且集中与年轻受教育的个体。系统仅评估了数月,长期的跟踪实验可以更好展示系统的效果。(如个体生病或者年龄增长带来的变化)
- 需要用户将手机麦克风离用户嘴部尽可能进来更好捕捉发声姿势,这限制了方案的应用场景。(暗示智能家居场景)从评估部分可以看到如果位置偏移达到 3 cm 就会对 EER 带来 7 倍的增长,按照规律,可以猜测偏移在 10 cm 以上就会失去效果。
补充:
- 没有对电量消耗做详细评估,使用高采样率进行录制和播放是高耗能操作。
- 用户唤醒设备之后再发出超声波的时间差是否对评估有影响?
- 要求手机支持高采样率,且声学器件在 20kHz 附近的非线性性不存在或较弱。
3.2 启示
本文采取了一个很有趣的思路,也是最近别的方向的论文上看到一个思路,利用超声波和回声对周围环境进行分析。由于本文还要达到区分不同个体的攻击,所以需要对发声姿势做准确的记录,这就需要手机离用户嘴部尽可能接近,且保持姿势固定。最近看到了很多类似的欺骗检测文章,工作都做在了智能手机上,并且都达到了相当不错的准确率,但是都要求用户与手机保持一个相对稳定的姿势,位置一旦发生相对变化,就会对准确率带来较大的影响,这使得方案无法在用户远离手机或者其他语音设备的情况下应用。
4 个人笔记
None。