首页
论坛
课程
招聘
[原创] 闻声识人 - 声纹欺骗研究 (上)
2022-3-1 11:38 15834

[原创] 闻声识人 - 声纹欺骗研究 (上)

2022-3-1 11:38
15834

大家好, 我是星舆车联网实验室李四伟。团队成员在漏洞挖掘, 硬件逆向与AI大数据方面有着丰富经验, 连续在GeekPwn等破解赛事中斩获奖项。发现众多产品高危漏洞,并获相关厂商致谢。团队研究成果多次发表于DEFCON等国内外顶级安全会议, 成功入选2021特斯拉漏洞名人堂。星舆实验室拥有特斯拉等诸多靶车供研究使用, 期待更多志同道合的小伙伴加入我们。

 

声纹识别,生物识别技术的一种,也称为说话人识别(Speaker Recognition), 就是把声信号转换成电信号,再用计算机进行识别的一种技术。声纹识别是语音处理的一个基础任务,在安防,金融,智能设备,汽车等领域都有着广泛的应用。大到公安领域的反电信诈骗、司法鉴定、侦察破案、身份认证,小到智能音箱,汽车车机的认证登陆都是声纹识别技术的实践应用。而随着声纹识别技术的落地部署,安全性问题已经成为影响公共安全,个人信息财产安全的重要问题。本系列文章分为上下两篇来综合阐述声纹识别的安全性问题。上篇主要对声纹识别的原理,发展,常见的实现算法进行简要描述,同时阐述针对声纹识别常见的几种攻击方法,下篇中将结合具体实践通过实现几种声纹识别的对抗算法,对几个包含声纹识别的系统进行测试,成功欺骗几款常见的包含声纹识别功能的设备,分析成功的原理,验证声纹识别系统的安全性问题,最后对声纹识别系统的安全性提出改进意见,帮助建立鲁棒性更强,安全性更高的声纹识别系统。

图为一段双声道,采样率44100Hz,32位语音的波形图与mel spectorgram

 

1.声纹识别的定义

 

人体的发音器官分为声门上系统、喉系统、声门下系统,每个人都有自己的一套发音器官,人在讲话时使用的发声器官在形态构造各有差异,每次发音需要众多发音器官相互配合、共同运动。这决定了语音的物理属性(也称语音四要素):音质、音长、音强、音高。这些物理量的差异,决定了语音在声纹图谱上呈现不同的声纹特征。一个人的发音器官发育成熟后,其解剖结构和生理状态是稳定不变的,加之发音人的言语习惯等语音的社会心理属性,使得每个人在不同时段所说的相同文本内容的话,基本语音特征是稳定不变的,声纹是对声音的特殊性,稳定性的一种独特的表征。声纹识别是通过该特征能将不同人的声音进行有效的区分,声纹识别的本质, 就是要找到描述特定对象的声纹特征。

 

2.声纹识别主要任务

 

声纹识别主要分为两类任务:说话人辨认(Speaker Verification)和说话人确认(Speaker Identification)。说话人辨认任务是已知目标人物,通过给定的音频判断是否由目标人物发出,是一个简单的判定问题,结果只有是与否。说话人确认是在注册了多个人员声纹的系统中,通过给定音频,识别出音频是由哪个人发出的,同时根据识别的范围分为开集说话人确认(OSI)和闭集说话人确认(CSI)。说话人确认任务允许多个人员在登记阶段进行声纹注册,形成一个声纹底库,OSI是对于任意输入语音X,根据X与声纹底库中所有声纹特征的相似度评分以及预设的阈值,判定X是否为其中一个注册者说的,或者说话人不在声纹底库中。CSI是对于输入的语音X已经确定是在声纹底库中,从有限的底库中选取相似度最高的注册者,是一个N选一的任务。

 

3.声纹识别的发展

1
声纹识别的研究至少可以追溯到20世纪60年代。在接下来的六十年里,许多先进的技术推动了声纹识别技术的发展。声学特征方面从传统的声学特征梅尔倒谱系数MFCC、感知线性预测系数PLP、到近几年的深度特征Deep Feature、能量规整谱系数PNCC等,各种声学特征都可作为声纹识别在特征提取层面可选且表现良好的声学特征。下图是声纹识别的一个简要的发展历程:

 

4.声纹识别的结构

1
声纹识别从最开始的模板匹配,再往后发展大都以声纹特征提取为主,主要的声纹识别方法分为预处理,特征提取,相似度评分三个步骤,主要基于深度学习的方向对三个步骤进行阐述。预处理阶段对输入的音频数据进行降噪,重采样等等处理,将输入音频数据转换成模型需要的格式。特征提取阶段,通过算法模型提取输入音频数据的特征向量,该特征向量是对输入音频数据的声纹特征的表示,以及对声纹对象的标识,特征提取的方法众多,从应用最广泛的高斯。衡量特征提取的优劣主要在于从不同声纹对象提取的不同特征向量的区分度, 以及从相同声纹对象的声音在不同时间提取的特征向量之间相似度. 前者称为类间差异, 后者称为类内差异,而一个好的特征提取模型实现目标是降低类内差异,增加类间差异,保证同一个人语音提取的特征之间在特征空间的距离要比非同一人特征的间距小,更加有区分度。(增大类间差异,降低类内差距可以称得上分类算法的一种通用的优化思想,在人脸识别,属性分类等等分类算法中有很多基于此思想产生的优化方法,类似于人脸识别领域的tripletloss损失函数也可应用于声纹识别声纹特征提取的优化,而人脸识别的应用场景和整体实现思路和声纹识别有着很多相似处,人脸识别算法已经日趋成熟完善,相关的优化算法丰富,而人脸识别领域类似于arcface,cosineface等等优化方法是否可以迁移应用到声纹识别领域,感觉也是一个可以研究的方向)。完成对数据的特征提取后,进入下一个阶段,相似度评分,比较不同特征向量的相似度,主要衡量方法以余弦相似度和欧氏距离为主。通过对输入音频数据提取的特征向量与声纹库中特征向量的相似度计算来判断输入音频数据属于哪个的声纹对象,或者判断是否由目标发出。当前通用的声纹识别的整体流程和大多数目标识别的流程存在相似的地方,主要区别在于独有的声学特征的提取方法以及数据预处理方法。下图是一个简要的声纹识别流程:

 

5.声纹识别的方法

 

简单介绍几种经典的声纹特征提取方法:

 

5.1 混合高斯-通用背景模型

1
混合高斯-通用背景模型(Gaussian Mixture Model-Universal Background Model,GMM-UBM)是声纹识别中最常用的模型之一,主要思想是将声学特征投影到高维空间上,得到高维的均值超矢量。因为在声纹识别中,如何将语音特征很好地进行总结及测试语音如何与训练语音进行匹配都是非常复杂难解决的问题,而GMM将这些问题转为对于模型的操作及概率计算等问题,并进行解决。GMM是一种通用的概率模型,在GMM模型的基础上,训练出一个全局背景模型UBM,然后以UBM为初始模型,采用目标说话人数据进行基于最大后验概率(Maximum A Posterior, MAP)的自适应训练,得到目标说话人的混合高斯模型(GMM)。通过计算似然值的方法进行说话人打分,进而进行识别判决。

5.2 d-vector
d-vector是最早的基于DNN的embeddings之一。d-vector的核心思想是将训练话语的ground-truth speaker身份作为训练阶段该音频数据的所属训练帧的标签,将模型训练转化为分类问题。DNN训练好后,在测试阶段,将DNN最后一层隐藏层的每一帧输出activation作为该帧的深度embedding特征,将一段音频数据所有帧的深度embedding特征做平均,作为该音频的一个新的compact representation,这就是d-vector。如果一个人有多条注册语音,那么所有这些d-vector做平均,就是这个人的声纹的表征。d-vector的一个基本假设是,从训练集产生的紧凑表示空间可以很好地推广到测试阶段的看不见的发言者。下图是d-vector的网络结构:

 

 

5.3 x-vector

1
x-vector是d-vector的一个重要进化,它通过一个聚合过程将说话人识别从逐帧speaker标签发展到语段级speaker标签。该算法首先通过延时层提取音频数据的帧级embedding,然后将语音帧级embedding的均值和标准差通过statistical pooling层串联为语段级特征, 最后通过一个标准的前馈网络将语段级特征分类到其对应声纹说话人。x-vector是Daniel Povey教授在论文中提出的概念,用于描述从TDNN网络中提取的embedding特征。TDNN是时延架构,输出层可以学习到Long-Time特征,所以x-vector可以利用短短的10s左右的语音,捕捉到用户声纹信息,在短语音上拥有更强的鲁棒性。下图是x-vector的网络结构:

 

5.声纹识别的应用

1
与人脸、指纹和虹膜识别相比,声纹识别有着诸多优势,比如声纹语料收集方式自然,无须进行眨眼、摆动脸部等特定动作,不受光线或隐私等特定场景的约束,人们接受度更高;声纹识别可以随机改变朗读内容,即便曾在网上或其他地方留下语音信息,也不易被复制或盗用。同时,被识别人不需要近距离接触识别设备,声纹可以通过电话、APP等渠道传达语音到后台进行识别,并且可以在用户语音对话过程中自动完成识别,使用成本低而且方便快捷。在金融领域,声纹被广泛的应用于支付认证,客服身份核验,远程面签身份核验,金融防欺诈等等场景;在安防领域,声纹识别可以用于重点人员布控、侦查破案、反电信欺诈、治安防控、司法鉴定、审讯室建设、网络身份认证等;在智能家居领域,可以用于用户认证,用户个性化推荐,语音购物等;在智能汽车领域,可以用于声纹认证登录,智能行为记录,语音助手个性化交互等。基于声纹的安全性问题,公安部发布《GA/T 1179-2014安防声纹确认应用算法技术要求和测试方法》标准,也对声纹科技产品数据采集提供了相关的规定。

 

6.声纹识别常见的攻击方法
前面5节主要对声纹识别技术进行的简要阐述,下面将对如何欺骗一个声纹识别系统的方法做描述。声纹识别对抗常见的方法:模仿攻击,重放攻击,语音转换,语音合成,对抗样本攻击。
6.1模仿攻击
是指模仿攻击目标声音的音调,音强,发音习惯等其它音律特征,对声纹识别系统进行攻击。是一种相对传统的攻击方法,对攻击的条件限制要求都很高,并且很容易被当前的声纹识别系统防御。
6.2重放攻击
主要针对于固定语句验证的系统,使用录音设备录制目标说话人的固定语句,在验证时通过将录制的语句进行播放,来欺骗声纹识别系统。这是一种简单有效的攻击方法,通过简单的设备采集后直接播放就能够欺骗众多不包含活体检测的声纹识别系统,而使用高保真设备的采集,播放的重放攻击甚至有一定概率欺骗带有活体检测的声纹认证系统。
6.3语音转换
将语音模拟到目标人物的语音特征空间,在保持语言内容不变的同时改变说话人的身份。语音转换涉及多种语音处理技术,如语音分析、频谱转换、韵律转换、说话人特征化和语音编码等,理论和实践方面的最新进展,我们现在能够产生具有高说话人相似度接近真人的语音质量。通过采集目标人物的说话的语音数据片段,提取说话人特征,然后将特征迁移,迁移到攻击人员语音数据,使得转换攻击人员身份为目标人物,进而欺骗声纹识别系统。语音转换其实是语音合成的一个研究方向,单独列出来主要是为了展示这种独特的攻击方法。下图是一个简单的语音转换示例:

 

6.4语音合成
语音合成,又称文语转换(Text To Speech, TTS),是一种可以将任意输入文本转换成相应语音的技术。是将人类语音用人工的方式所产生,能将任意文字信息实时转化为标准流畅的语音朗读出来,相当于给机器装上了人工嘴巴。它涉及声学、语言学、数字信号处理、计算机科学等多个学科技术,是信息处理领域的一项前沿技术,解决的主要问题就是如何将文字信息转化为可听的声音信息,也即让机器像人一样开口说话。使用语音合成对声纹识别攻击应该属于语音合成一个极端的应用,首先通过大量数据进行预训练,训练出效果较好的TTS系统(可能包括vocoder,synthesizer,encode,decode),然后对目标人物语音数据进行收集,标注,制作相关的训练集,对该系统模型进行fine-tuning,最终产出一个对目标人员高度拟合的TTS系统,基于此系统进行语音合成,对声纹识别系统进行攻击,该方法对声纹识别系统欺骗能达到较好的效果。下图是语音合成的一个通用结构:

 

6.5对抗样本攻击

1
对抗样本是攻击者故意设计以导致算法模型犯错误的那些输入。对抗样本攻击在深度学习算法安全对抗领域有着广泛的应用,有一定的通用性。通过对样本添加特定的扰动信息,干扰模型输出结果,输出指向错误的结果或输出结果异常。对抗样本攻击是在一段非目标人物的语音上加上扰动信息,生成对抗语音,从而使得系统将对抗语音识别为目标人物。对抗样本攻击又分为白盒攻击、黑盒攻击和半黑盒攻击。攻击者可以访问目标神经网络的所有信息,包括其架构、参数、梯度等。攻击者可以充分利用网络信息,精心制作对抗样本。在black-box attack中,攻击者不知道DNN模型的内部信息。攻击者只能持续提供输入数据,观测模型的输出。在semi-white (gray) box attack中,攻击者训练一个生成对抗样本的模型,训练这个模型时需要目标神经网络的信息。一旦生成模型被训练成功,攻击者就不再需要目标神经网络模型的信息了。语音对抗攻击是对抗样本在语音领域的应用,对抗样本攻击是一种通用的模型安全对抗的方法,下图是展示了一些对抗样本攻击的方法:

 

6.结论

1
本篇为声纹识别漏洞研究的上篇,主要对声纹识别相关技术从定义,发展到方法,应用进行了简要描述,方便大家对声纹识别建立基础的概念,主要信息,图片基本来源于声纹识别相关的论文及技术性文章,相关参考文章见文献附录。同时对声纹识别对抗方法进行了简要描述,让大家对声纹识别对抗有一个基本概念,下篇中将结合实验对声纹识别系统进行测试,分析测试结果,讨论声纹识别中的漏洞问题。

References

 

D Sztahó,G Szaszák,A Beke.Deep learning methods in speaker recognition: a revie
Guangke Chen, Sen Chen, Lingling Fan, Xiaoning Du, Zhe Zhao, Fu Song, Yang Liu.Who is Real Bob? Adversarial Attacks on Speaker Recognition Systems
Zhongxin Bai, Xiao-Lei Zhang. Speaker Recognition Based on Deep Learning: An Overview
Rohan Kumar Das1, Xiaohai Tian1, Tomi Kinnunen2and Haizhou Li .The Attacker’s Perspective on Automatic Speaker Verification: An Overview
Zhaoxi Mu,Xinyu Yang,Yizhuo Dong. Review of end-to-end speech synthesis technology based on deep learning
Shipra J. Arora,Rishi Pal Singh. Automatic Speech Recognition: A Review
http://smarthome.qianjia.com/html/2021-10/11_384248.html
https://blog.csdn.net/u013625492/article/details/109715387
https://blog.csdn.net/qq_41571456/category_9625985.html
https://blog.csdn.net/qq_40168949/article/details/88424878
https://zhuanlan.zhihu.com/p/34440000
https://www.jianshu.com/p/19d34b19517b
https://zhuanlan.zhihu.com/p/67563275?ivk_sa=1024320u
https://blog.csdn.net/qq_36653505/article/details/85082746
https://www.zhihu.com/question/53707809/answer/316946465
https://blog.csdn.net/jojozhangju/article/details/78637118
https://blog.csdn.net/qq_36653505/article/details/85082746
http://www.doc88.com/p-20759537276528.html
https://www.zhihu.com/tardis/sogou/qus/30141460
https://blog.csdn.net/YZhang0108/article/details/105862743
https://baijiahao.baidu.com/s?id=1666466767203759018&wfr=spider&for=pc
https://tieba.baidu.com/p/6420955423
https://blog.csdn.net/weixin_39059031/article/details/106181409

 

欢迎加入星球一起学习探讨


【看雪培训】《Adroid高级研修班》2022年夏季班招生中!

最后于 2022-3-15 11:05 被星舆实验室编辑 ,原因:
收藏
点赞2
打赏
分享
打赏 + 2.00雪花
打赏次数 1 雪花 + 2.00
 
赞赏  orz1ruo   +2.00 2022/03/02 感谢分享~
最新回复 (2)
雪    币: 9472
活跃值: 活跃值 (9055)
能力值: ( LV12,RANK:240 )
在线值:
发帖
回帖
粉丝
pureGavin 活跃值 2 2022-3-1 14:17
2
0
geekpwn我也去过几次,每次都会有AI安全的大佬现场攻击,我感觉AI安全以后应该会很火,毕竟研究AI的人可能也没想到他们用合成样本去训练,我们用合成样本去攻击
雪    币: 1867
活跃值: 活跃值 (2336)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
大大薇薇 活跃值 1 2022-3-1 20:04
3
0
,强强强
游客
登录 | 注册 方可回帖
返回