利用聲掩蔽保護手機通話中的音頻隱私
背 景
惡意軟件未經授權錄制用戶的聲音,侵犯了移動用戶的隱私。任何安裝了音頻訪問權限的應用程序都可能在任何時候秘密記錄任何信息?,F階段針對麥克風等音頻設備的隱私權限問題,都需要對隱私控制系統做出重大修改來解決。為此,本文提出了SafeChat解決方案。它無需改變操作系統設置,只通過聲掩蔽的方式來保護用戶的通話隱私。具體來說,在聲掩蔽處理后,授權的錄音應用比未經授權的錄音應用能夠恢復出更多的秘密信息,SafeChat在實驗中表現出高達26db的信號強度差異,有效降低語音識別引擎的準確率。
傳統解決方案
智能手機用戶面臨未經授權錄音的隱私風險,可能導致泄露個人信息。現有的防御方法包括提供虛假音頻數據或限制錄音權限,但需要對系統修改。本文介紹了SafeChat,一種應用級解決方案,通過聲音掩蔽保護音頻隱私,無需修改現有系統。聲音掩蔽是一種混淆技術,通過添加噪聲來防止竊聽者,同時保證預期接收者可以理解。SafeChat通過生成特殊的掩蔽聲音并在接收端移除,實現應用級保護,解決了移動場景中的隱私問題。與安裝在天花板的揚聲器陣列不同,SafeChat能夠區分未經授權和授權的應用程序,提供不同的音頻隱私保護。這一方案在不需大規模系統改動的前提下,有效解決了未經授權錄音的隱私風險問題。
相關解決方案
最接近該論文的方案為mSieve(一個大數分解的庫),它依賴于差分隱私。但它依然需要在程序使用音頻信號之前,對系統進行修改以預處理音頻信號。另一個與本文相似的方案是非加密無線安全方案,發送器Alice可以在CSI(信道狀態信息)的零空間產生了一個人工噪聲到預期的接收端Bob,使得不同位置的竊聽者無法去除附加的噪聲并正確解碼被嗅探的數據包。預期的接收端Bob在接收時可以廣播人工噪聲,并通過基于CSI的信號去除過程來去除掩蔽聲并恢復秘密。但非加密無線安全方案處理的都是調制或預編碼的信號,而人聲沒有被調制,所以沒有可以估計CSI的OFDM序文。其他方案探索了利用聲信號構建安全數字通道,如Dhwani 、PriWhisper,但他們是研究如何在聲信號的冗余中構建隱蔽通信信道,而本文主要是利用聲掩蔽來保護秘密信息。
本文解決方案
圖1.聲掩蔽APP SafeChat的模型
本文的應用場景是基于對話雙方假設為Alice、Bob,竊聽者為Eve。Bob向Alice發起音頻通話,則Alice需要先打開外放(揚聲器)播放來自Bob的掩蔽聲/噪聲,然后Bob與Alice同時通話。Alice的手機麥克風接收到Bob的掩蔽聲和Alice的私人聲信息的混合聲。這種混淆聲只能由Bob來恢復,Bob知道掩蔽聲的產生算法和混淆算法。因此,需要設計一個合適的掩蔽聲,并確保在預期的接收器上消除它。因為音頻傳輸的多徑、諧振特性以及設備揚聲器/麥克風的失真,Alice的麥克風錄制的掩蔽聲音不等于原始Bob的掩蔽聲,再混合Alice的秘密聲信息后,無法保證在Bob端能消除。為了使Bob接受到混淆聲后,可以去除掩蔽聲恢復真實聲信息,需要一種合適的掩蔽聲信號及其去除算法。本文設想是通過自適應濾波估計從揚聲器到麥克風的通道響應,然后連續干擾抵消(SIC)從殘余的噪聲去除附加掩蔽干擾來恢復秘密信息。本文的靈感來源來自于現有解決方案中需要用戶額外的自定義策略,并且在通話時,不管是授權還是未授權的應用程序都會接收到相同的錄音副本。而通話信息是否秘密無法在應用程序中區分定義。
系統設計
圖2.系統設計
掩蔽聲音和秘密信息通過不同的路徑和發送到麥克風,因此需要特殊的信號處理來從預定接收器處錄制的音頻中去除掩蔽聲音。由于聲音通過空氣傳播并通過多條路徑傳播,因此錄制的聲音實際上是原始播放聲音的多個延遲和衰減副本的組合。一共分為兩部分:負責混合的手機App部分+負責產生掩蔽聲的服務器。
手機App部分
將兩種路徑的聲音發到麥克風接收:掩蔽聲音和秘密聲音。通過的通道響應H(*)可以用來表示聲音如何在麥克風上組合以進行錄制,因此,處理后的錄制聲音,為高斯環境噪聲。
掩蔽聲選取
兩個信號分量的組合,即。是掩蔽干擾,包括幾個預先錄制的人類口語句子,以混淆和防止惡意軟件提取機密信息。是掩蔽噪聲,作為高斯噪聲產生的,并通過16kHz低通濾波器濾除。將噪聲頻率控制在16kHz之下,是因為這個頻率范圍覆蓋了大部分的人聲頻率。加入這種高斯噪聲可以有效降低秘密信息的信噪比。也有助于接收端Bob恢復秘密并避免基于濾波器的掩蔽聲音分離。這樣恢復后能僅僅保留用戶音高范圍內的聲音。在播放掩蔽聲之前,需要播放一些導頻信號進行同步,為了同步揚聲器和麥克風之間的時間偏移。
消除目標接收端噪聲和干擾
圖3.消除目標接收端噪聲和干擾的信號對比圖示
使用4種參數來表示掩蔽性能:1) 掩蔽聲噪聲比(MNR):表示添加的掩蔽聲的強度,播放掩蔽聲音的能力,公式表示為,n是噪聲分量,表示背景噪聲。2) 掩蔽聲殘余噪聲比(MRR):表示去除該掩蔽聲的有效性,設備移除掩蔽聲音的能力。公式表示為:,表示不含用戶語音的恢復信號中的殘余噪聲。3) 掩蔽聲音與語音比(MSR):隱藏在惡意軟件中的秘密信息數量,秘密信息被泄露給惡意軟件的數量。公式表示為:4) 語音與恢復噪聲比(SRR):在預期接收者恢復的秘密信息數量,秘密信息被接收給預期接收者的數量。公式表示為:MNR和MRR描述了設備掩蔽聲音的硬件能力,即與無關,而MSR和SRR則捕獲了SafeChat在防御未經授權錄制方面的性能。
圖4.四種聲掩蔽指標的解釋和能量比
實驗總結
四個指標盡可能高時可以實現最佳性能。但高SRR意味著低MSR。SNR與播放掩蔽聲音的音量呈負相關。因此,掩蔽聲足夠大(MNR高)才能降低秘密信息的噪聲比。但掩蔽聲的音量不可能無限放大,而且掩蔽聲過大時,線性通道響應的假設會無效。用SIC去除信號的一個常見問題:使用過高的音量來播放掩蔽干擾會增加其與SIC去除的殘余誤差。首先去除的信號(即掩蔽噪聲)比隨后去除的信號(即掩蔽干擾)具有更大的信號強度時,實驗發現系統達到最佳性能。而且掩蔽干擾的能量比總是固定在比掩蔽噪聲的音量低10dB,這可能是基于實驗的假設:秘密語音的能量比要低掩蔽聲13DB。音量越大,信道響應估計越準確。然而,當掩蔽聲以最大音量播放時,通道響應變為非線性,從而留下很大的殘余誤差。
圖5. 掩蔽聲的噪聲和干擾聲量大小的影響
設備校準
SafeChat需要找到一個合理的音量來播放掩蔽聲,以及一個合適的音量比例來播放掩蔽干擾。SafeChat總是選擇MNR最低的麥克風作為參考,因為低MNR代表麥克風接收到的掩蔽聲音少。當確定了麥克風通道到基準,將尋找具有最高MRR的音量。除了設備播放和去除掩蔽音的能力,秘密信息自己的聲音大小也有關。掩蔽聲要根據秘密信息動態調整音量。要確保高MSR和高SRR。當該訓練錄音的MSR大于13dB,SRR大于3dB時,認為用戶訓練成功。這個設置保證了人說話的能量比掩蔽聲低13dB。
安全威脅模型
假設前提
安全威脅模型中,被攻擊目標手機的操作系統假設未被破壞。并且惡意軟件可以使用語音識別引擎來識別秘密,并且具有噪聲處理機制。具體來說,可以使用谷歌語音API來識別不同掩蔽聲音設置下的筆記本電腦痕跡。惡意軟件也能具有常見的音頻預處理知識,包括盲源分離等等。由于人類語音中的冗余,使得機器僅通過分析MFCC或多項式殘差等統計特征就可以理解人類的語音,因此惡意軟件可以利用機器學習恢復秘密信息。
安全性保障
對于SafeChat這樣的非加密系統,大多數是通過確保竊聽者接收到的數據包的信噪比小于數據包的編碼/調制容量來模擬其安全保障,因此竊聽者從信息理論上不可能恢復接收到的具有掩蔽噪聲的數據包。而為了評估SafeChat的安全性,本文也評估了被授權者和被授權者之間的MSR差異。但由于沒有“編碼/調制容量”的保證,因此無法規定MSR的基準。本文是基于猜中秘密信息的概率和猜中任意秘密的概率的差別忽略不計為標準,來評估SafeChat的隱私/秘密保護。
實驗結果
圖6. 在不同設備上校準SafeChat的設置
圖7. 實驗設置
安全威脅模型所基于的數據集是TIDIGIT。TIDIGITS的語音音頻由運行SafeChat的手機旁邊的一臺筆記本電腦播放。測試參與者被要求讀一個隨機生成的8位數字。
圖8. 用戶學習app界面
在用戶完成自我校準階段后,要求他們通過培訓階段,錄制多個音頻片段,然后填寫調查問題。
圖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.