一種基于動態(tài)條件隨機場的鍵盤輸入偵測方法
【技術領域】
[0001] 本發(fā)明涉及鍵盤輸入偵測技術領域,尤其涉及一種基于動態(tài)條件隨機場的鍵盤輸 入偵測方法。
【背景技術】
[0002] 眾所周知,鍵盤輸入帶著大量的數(shù)據(jù)信息,包括登錄用戶名、密碼等重要信息。隨 之越來越多的鍵盤輸入攻擊方式出現(xiàn),例如利用定位能力強大的聲波探測器,或者是在電 腦內部植入攻擊的木馬軟件等。前者需要體積龐大的儀器,不易攜帶,不適用于鍵盤輸入偵 測場合;而后者容易被電腦里面的反木馬程式所刪除。
[0003] 隨著手機逐漸成為具有強大計算能力的移動工具,越來越多的傳感器被安放在手 機上,用以提供各種感知的功能。手機上麥克風的數(shù)量也在逐漸增多,然而現(xiàn)有的手機一般 還都只有兩個或者一個麥克風,只有極少數(shù)的手機有三個麥克風,以iPhone 5手機為例, 其具有三個麥克風,一個在前面,一個在背面,另一個在底部。這樣可以更好的獲取多個方 向的聲音,并且在通話過程中消除背景噪音。多個麥克風的出現(xiàn)為精確定位聲音源的提供 了可能,如果在單個手機上麥克風的數(shù)量不小于三個,即可通過手機聲音到達不同位置的 麥克風的時間差進行定位,從而得到較精確的音源位置。但是如果手機只有兩個麥克風,則 需要多個手機進行協(xié)同合作定位。
[0004] 如果利用手機能夠精確的對鍵盤輸入進行定位,確實是一個很隱蔽且高效方法。 然而,由于現(xiàn)有手機的發(fā)射/接收聲音信號的頻率過低,而對鍵盤輸入定位對于定位精度 要求高(2cm以內),所以往往無法直接使用。
【發(fā)明內容】
[0005] 本發(fā)明的目的在于通過一種基于動態(tài)條件隨機場的鍵盤輸入偵測方法,來解決以 上【背景技術】部分提到的問題。
[0006] 為達此目的,本發(fā)明采用以下技術方案:
[0007] 一種基于動態(tài)條件隨機場的鍵盤輸入偵測方法,其包括:
[0008] A、獲取不同位置的若干個麥克風MiM2M 3. . .M2ni的位置,其中,m為不小于1的正整 數(shù);
[0009] B、通過歸一化互相關方法,對于所有的麥克風對,計算同一音源發(fā)出的聲音到麥 克風吣和麥克風^的帶誤差容忍的時間差范圍At m其中,i辛j ;
[0010] c、根據(jù)帶誤差容忍的時間差范圍A 和每對麥克風位置,獲得相應的雙曲線;
[0011] D、將所有的所述雙曲線疊加在平面上,平面中被雙曲線帶覆蓋次數(shù)最多的區(qū)域即 為最大可能的音源區(qū)域,偵測出鍵盤輸入字符的大概位置;
[0012] E、利用動態(tài)條件隨機場對鍵盤輸入的位置信息進行建模,通過線下學習的文本特 征關聯(lián)性來恢復輸入字符序列。
[0013] 特別地,所述步驟B具體包括:
[0014] 通過兩個不同位置的麥克風對同一音源發(fā)出的聲音進行采集,分別獲取第一聲音 序列和第二聲音序列,其中,第一麥克風采集的第一聲音序列中的聲音強度的最高時刻是 ,第二麥克風米集的第二聲音序列中聲音強度的最尚時刻是t2,米集的米樣率為k;
[0015] 選取第一聲音序列和第二聲音序列的兩個聲音序列的聲音強度最高的時間段,得 到第一麥克風的第一聲音子序列x(t)和第二麥克風的第二聲音子序列Y(t);第一聲音子 序列X(t)和第二聲音子序列Y(t)的序列長度均為L;
[0016] 將得到的兩個子序列進行歸一化互相關計算,以得到最佳匹配位置tM,即兩個子 序列相對位置為t M時,歸一化互相關計算的結果CC(t J數(shù)值最大;
[0017] 歸一化的互相關方法的計算公式如下:
【主權項】
1. 一種基于動態(tài)條件隨機場的鍵盤輸入偵測方法,其特征在于,包括: A、 獲取不同位置的若干個麥克風M1M2M3. .. M2m的位置,其中,m為不小于1的正整數(shù); B、 通過歸一化互相關方法,對于所有的麥克風對,計算同一音源發(fā)出的聲音到麥克風 MjP麥克風Μ」的帶誤差容忍的時間差范圍Atm其中,i辛j ; C、 根據(jù)帶誤差容忍的時間差范圍△ ^和每對麥克風的位置,獲得相應的雙曲線; D、 將所有的所述雙曲線疊加在平面上,平面中被雙曲線帶覆蓋次數(shù)最多的區(qū)域即為最 大可能的音源區(qū)域,偵測出鍵盤輸入字符的大概位置; E、 利用動態(tài)條件隨機場對鍵盤輸入的位置信息進行建模,通過線下學習的文本特征關 聯(lián)性來恢復輸入字符序列。
2. 根據(jù)權利要求1所述的基于動態(tài)條件隨機場的鍵盤輸入偵測方法,其特征在于,所 述步驟B具體包括: 通過兩個不同位置的麥克風對同一音源發(fā)出的聲音進行采集,分別獲取第一聲音序列 和第二聲音序列,其中,第一麥克風采集的第一聲音序列中的聲音強度的最高時刻是tl,第 二麥克風米集的第二聲音序列中聲音強度的最尚時刻是h,米集的米樣率為k ; 選取第一聲音序列和第二聲音序列的兩個聲音序列的聲音強度最高的時間段,得到第 一麥克風的第一聲音子序列X(t)和第二麥克風的第二聲音子序列Y(t);第一聲音子序列 X (t)和第二聲音子序列Y (t)的序列長度均為L ; 將得到的兩個子序列進行歸一化互相關計算,以得到最佳匹配位置tM,即兩個子序列 相對位置為tM時,歸一化互相關計算的結果CC (t J數(shù)值最大; 歸一化的互相關方法的計算公式如下:
根據(jù)上述歸一化互相關計算公式,其中一個序列為模版序列,另一個為待匹配序列; 令X(t)為模版序列,Y(t)為待匹配序列;h為子序列Y(t)相對X(t)的位置,其取值范圍 是tQe [1 - L, 2L - 1] ;t X(t)實際匹配部分位置,其取值范圍是t xe W = [maxma x{0, tQ},minmin{tQ+L-l,L-l}],t為X(t)和Y(t)序列的位置下標,其取值范圍是t e W。 =[0,L 一 1] ;X(t)序列的音強平均值為
Y(t)序列的音強平均值為
計算上述兩個麥克風采集的音源的聲音的時間差T1, T1= |t I ;帶誤差容忍的 時間差范圍是Δ t,其取值范圍是Δ t e (T1- δ,T1+ δ ),容忍度δ = I I T11 - I tfh I I。
【專利摘要】本發(fā)明公開一種基于動態(tài)條件隨機場的鍵盤輸入偵測方法,包括:獲取不同位置的若干個麥克風M1M2M3...M2m的位置;通過歸一化互相關方法,對于所有的麥克風對,計算同一音源發(fā)出的聲音到麥克風Mi和麥克風Mj的帶誤差容忍的時間差范圍Δtij;根據(jù)帶誤差容忍的時間差范圍Δtij和每對麥克風的位置,獲得相應的雙曲線;將所有的雙曲線疊加在平面上,平面中被雙曲線帶覆蓋次數(shù)最多的區(qū)域即為最大可能的音源區(qū)域,偵測出鍵盤輸入字符的大概位置;利用動態(tài)條件隨機場對鍵盤輸入的位置信息進行建模,通過線下學習的文本特征關聯(lián)性來恢復輸入字符序列。本發(fā)明沒有假設數(shù)據(jù)之間的獨立性,利用現(xiàn)實存在的時空關聯(lián)性建立了一個統(tǒng)一的概率模型,實現(xiàn)了對鍵盤輸入的定位。
【IPC分類】G06F3-02
【公開號】CN104536585
【申請?zhí)枴緾N201410855233
【發(fā)明人】馬強, 朱彤, 劉云浩
【申請人】無錫清華信息科學與技術國家實驗室物聯(lián)網技術中心
【公開日】2015年4月22日
【申請日】2014年12月31日