其乐融融的IT技术小站

利用声掩蔽保护手机通话中的音频隐私

传统解决方案

智能手机用户面临未经授权录音的隐私风险,可能导致泄露个人信息。现有的防御方法包括提供虚假音频数据或限制录音权限,但需要对系统修改。本文介绍了SafeChat,一种应用级解决方案,通过声音掩蔽保护音频隐私,无需修改现有系统。声音掩蔽是一种混淆技术,通过添加噪声来防止窃听者,同时保证预期接收者可以理解。SafeChat通过生成特殊的掩蔽声音并在接收端移除,实现应用级保护,解决了移动场景中的隐私问题。与安装在天花板的扬声器阵列不同,SafeChat能够区分未经授权和授权的应用程序,提供不同的音频隐私保护。这一方案在不需大规模系统改动的前提下,有效解决了未经授权录音的隐私风险问题。

相关解决方案

最接近该论文的方案为mSieve(一个大数分解的库),它依赖于差分隐私。但它依然需要在程序使用音频信号之前,对系统进行修改以预处理音频信号。

另一个与本文相似的方案是非加密无线安全方案,发送器Alice可以在CSI(信道状态信息)的零空间产生了一个人工噪声到预期的接收端Bob,使得不同位置的窃听者无法去除附加的噪声并正确解码被嗅探的数据包。预期的接收端Bob在接收时可以广播人工噪声,并通过基于CSI的信号去除过程来去除掩蔽声并恢复秘密。但非加密无线安全方案处理的都是调制或预编码的信号,而人声没有被调制,所以没有可以估计CSI的OFDM序文。

其他方案探索了利用声信号构建安全数字通道,如Dhwani 、PriWhisper,但他们是研究如何在声信号的冗余中构建隐蔽通信信道,而本文主要是利用声掩蔽来保护秘密信息。

本文解决方案

图1.声掩蔽APP SafeChat的模型图1.声掩蔽APP SafeChat的模型

本文的应用场景是基于对话双方假设为Alice、Bob,窃听者为Eve。Bob向Alice发起音频通话,则Alice需要先打开外放(扬声器)播放来自Bob的掩蔽声/噪声,然后Bob与Alice同时通话。Alice的手机麦克风接收到Bob的掩蔽声和Alice的私人声信息的混合声。

这种混淆声只能由Bob来恢复,Bob知道掩蔽声的产生算法和混淆算法。因此,需要设计一个合适的掩蔽声,并确保在预期的接收器上消除它。因为音频传输的多径、谐振特性以及设备扬声器/麦克风的失真,Alice的麦克风录制的掩蔽声音不等于原始Bob的掩蔽声,再混合Alice的秘密声信息后,无法保证在Bob端能消除。为了使Bob接受到混淆声后,可以去除掩蔽声恢复真实声信息,需要一种合适的掩蔽声信号及其去除算法。

本文设想是通过自适应滤波估计从扬声器到麦克风的通道响应,然后连续干扰抵消(SIC)从残余的噪声去除附加掩蔽干扰来恢复秘密信息。

本文的灵感来源来自于现有解决方案中需要用户额外的自定义策略,并且在通话时,不管是授权还是未授权的应用程序都会接收到相同的录音副本。而通话信息是否秘密无法在应用程序中区分定义。

系统设计

图2.系统设计图2.系统设计

掩蔽声音和秘密信息通过不同的路径和发送到麦克风,因此需要特殊的信号处理来从预定接收器处录制的音频中去除掩蔽声音。

由于声音通过空气传播并通过多条路径传播,因此录制的声音实际上是原始播放声音的多个延迟和衰减副本的组合。一共分为两部分:负责混合的手机App部分+负责产生掩蔽声的服务器。

手机App部分

将两种路径的声音发到麦克风接收:掩蔽声音和秘密声音。通过的通道响应H(*)可以用来表示声音如何在麦克风上组合以进行录制,因此,处理后的录制声音,为高斯环境噪声。

掩蔽声选取

两个信号分量的组合,即。是掩蔽干扰,包括几个预先录制的人类口语句子,以混淆和防止恶意软件提取机密信息。是掩蔽噪声,作为高斯噪声产生的,并通过16kHz低通滤波器滤除。将噪声频率控制在16kHz之下,是因为这个频率范围覆盖了大部分的人声频率。

加入这种高斯噪声可以有效降低秘密信息的信噪比。也有助于接收端Bob恢复秘密并避免基于滤波器的掩蔽声音分离。这样恢复后能仅仅保留用户音高范围内的声音。

在播放掩蔽声之前,需要播放一些导频信号进行同步,为了同步扬声器和麦克风之间的时间偏移。

消除目标接收端噪声和干扰

图片图片

图3.消除目标接收端噪声和干扰的信号对比图示图3.消除目标接收端噪声和干扰的信号对比图示

使用4种参数来表示掩蔽性能:

1) 掩蔽声噪声比(MNR):表示添加的掩蔽声的强度,播放掩蔽声音的能力,公式表示为,n是噪声分量,表示背景噪声。

2) 掩蔽声残余噪声比(MRR):表示去除该掩蔽声的有效性,设备移除掩蔽声音的能力。公式表示为:,表示不含用户语音的恢复信号中的残余噪声。

3) 掩蔽声音与语音比(MSR):隐藏在恶意软件中的秘密信息数量,秘密信息被泄露给恶意软件的数量。公式表示为:

4) 语音与恢复噪声比(SRR):在预期接收者恢复的秘密信息数量,秘密信息被接收给预期接收者的数量。公式表示为:MNR和MRR描述了设备掩蔽声音的硬件能力,即与无关,而MSR和SRR则捕获了SafeChat在防御未经授权录制方面的性能。

图4.四种声掩蔽指标的解释和能量比图4.四种声掩蔽指标的解释和能量比

实验总结

四个指标尽可能高时可以实现最佳性能。但高SRR意味着低MSR。SNR与播放掩蔽声音的音量呈负相关。因此,掩蔽声足够大(MNR高)才能降低秘密信息的噪声比。但掩蔽声的音量不可能无限放大,而且掩蔽声过大时,线性通道响应的假设会无效。

用SIC去除信号的一个常见问题:使用过高的音量来播放掩蔽干扰会增加其与SIC去除的残余误差。首先去除的信号(即掩蔽噪声)比随后去除的信号(即掩蔽干扰)具有更大的信号强度时,实验发现系统达到最佳性能。而且掩蔽干扰的能量比总是固定在比掩蔽噪声的音量低10dB,这可能是基于实验的假设:秘密语音的能量比要低掩蔽声13DB。

音量越大,信道响应估计越准确。然而,当掩蔽声以最大音量播放时,通道响应变为非线性,从而留下很大的残余误差。

图5. 掩蔽声的噪声和干扰声量大小的影响图5. 掩蔽声的噪声和干扰声量大小的影响

设备校准

SafeChat需要找到一个合理的音量来播放掩蔽声,以及一个合适的音量比例来播放掩蔽干扰。SafeChat总是选择MNR最低的麦克风作为参考,因为低MNR代表麦克风接收到的掩蔽声音少。当确定了麦克风通道到基准,将寻找具有最高MRR的音量。

除了设备播放和去除掩蔽音的能力,秘密信息自己的声音大小也有关。掩蔽声要根据秘密信息动态调整音量。要确保高MSR和高SRR。当该训练录音的MSR大于13dB,SRR大于3dB时,认为用户训练成功。这个设置保证了人说话的能量比掩蔽声低13dB。

安全威胁模型

假设前提

安全威胁模型中,被攻击目标手机的操作系统假设未被破坏。并且恶意软件可以使用语音识别引擎来识别秘密,并且具有噪声处理机制。具体来说,可以使用谷歌语音API来识别不同掩蔽声音设置下的笔记本电脑痕迹。恶意软件也能具有常见的音频预处理知识,包括盲源分离等等。

由于人类语音中的冗余,使得机器仅通过分析MFCC或多项式残差等统计特征就可以理解人类的语音,因此恶意软件可以利用机器学习恢复秘密信息。

安全性保障

对于SafeChat这样的非加密系统,大多数是通过确保窃听者接收到的数据包的信噪比小于数据包的编码/调制容量来模拟其安全保障,因此窃听者从信息理论上不可能恢复接收到的具有掩蔽噪声的数据包。而为了评估SafeChat的安全性,本文也评估了被授权者和被授权者之间的MSR差异。但由于没有“编码/调制容量”的保证,因此无法规定MSR的基准。

本文是基于猜中秘密信息的概率和猜中任意秘密的概率的差别忽略不计为标准,来评估SafeChat的隐私/秘密保护。

实验结果

图6. 在不同设备上校准SafeChat的设置图6. 在不同设备上校准SafeChat的设置

图7. 实验设置图7. 实验设置

安全威胁模型所基于的数据集是TIDIGIT。TIDIGITS的语音音频由运行SafeChat的手机旁边的一台笔记本电脑播放。测试参与者被要求读一个随机生成的8位数字。

图8. 用户学习app界面图8. 用户学习app界面

在用户完成自我校准阶段后,要求他们通过培训阶段,录制多个音频片段,然后填写调查问题。

图9. 掩蔽声音在不同设备上的有效性图9. 掩蔽声音在不同设备上的有效性

在实验中,有些设备在高音量播放掩蔽声时具有较好的掩蔽性能,而有些设备在音量过大时无法有效去除掩蔽声。(为便于阅读,省略Galaxy S4/5的测试结果。)

最终的实验结果发现,扬声器的声音足够大时,可以隐藏语音。而对于掩蔽声去除的有效性,SafeChat可以在授权和未经授权的录音应用程序之间产生高达26db的信号强度差异。这种差异降低了最先进的语音识别引擎(如Google speech API)在理解未经授权的录音时的准确率低于0.1%,同时以高精度理解授权的录音。

同时,实验还发现,SafeChat对常见的环境噪音具有弹性。常见的环境噪声对掩蔽声去除的影响不大,因为环境噪声与掩蔽声不相关。嘈杂的背景噪音实际上还有助于隐藏说出来的秘密。

实验选用Note 4,Nexus 5X、Nexus 6P和Sony Z1执行了测试,6P的效果在最大音量时最好,这可能是由于麦克风和扬声器的动态范围不同导致的。实验也发现,掩蔽声的音量不能设置过大,因为播放全音量的掩蔽声会导致非线性失真和麦克风饱和。

为了评估SafeChat在对抗人类识别秘密方面的表现,实验招募了超过317名用户来识别6名测试参与者录制的音频,最终发现虽然一些受试者可以识别混合掩蔽声的录音片段中的一些内容,但因为识别错误,所以识别准确率还是很高的。

在可用性方面,用户在第一次使用SafeChat时,需要1.6轮才能通过初始训练阶段。考虑到每次训练大约需要6秒的时间(包括处理时间),训练的总时间开销平均小于10秒。在通过培训阶段后,用户只需1.3轮就可以读取与SafeChat设置兼容的音量的8位数密码。最终,识别掩蔽和恢复后录音中的秘密信息准确率分别为22%和93%。

然而,手机自带的回声消除功能是在芯片级别实现的,因此有概率将掩蔽声消除掉,无法阻止。

参考文献

[1]Nazir Saleheen. mSieve: Differential Behavioral Privacy in Time Series of Mobile Sensor Data. In Proceedings of ACM UbiComp ’16. 706–717

[2]Yu-Chih Tung, Kang G. Shin, and Kyu-Han Kim. Analog Man-in-the-middle Attack Against Link-based Packet Source Identification. In Proceedings of ACM MobiHoc ’16. 331–340

[3]Souvik Sen, Naveen Santhapuri, Romit Roy Choudhury, and Srihari Nelakuditi. [n.d.]. Successive Interference Cancellation: A Back-of-the-envelope Perspective. In Proceedings of the 9th ACM Hotnets ’10. 17:1–17:6.

[4]R. Gary Leonard and George Doddington. [n.d.]. TIDIGITS Dataset.

赞 ()
分享到:更多 ()

相关推荐

内容页底部广告位3
留言与评论(共有 0 条评论)
   
验证码: