鄭 航 廖聞劍 唐楚俏
(1.武漢郵電科學(xué)研究院 武漢 430074)(2.南京烽火軟件科技有限公司 南京 210019)(3.黃岡師范學(xué)院 黃岡 438000)
隨著國內(nèi)互聯(lián)網(wǎng)的高速發(fā)展與普及,人們的日常生活在不斷的改變,其已經(jīng)深入到社會(huì)發(fā)展的各個(gè)方面。據(jù)第39次中國互聯(lián)網(wǎng)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告,截止2016年底,中國互聯(lián)網(wǎng)普及率達(dá)到53.2%,網(wǎng)民人數(shù)達(dá)到7.31億,與歐洲人口總量相當(dāng)。但是,互聯(lián)網(wǎng)的開放性和隱蔽性也逐漸成為滋長詐騙犯罪的沃土[1~2]。據(jù)2017年上半年網(wǎng)絡(luò)詐騙數(shù)據(jù)研究報(bào)告,全國共收到舉報(bào)1萬多起,金額高達(dá)1.2億多元,其中身份冒充為主要詐騙方式之一,并有逐漸增長的趨勢。犯罪分子常利用SNS(網(wǎng)絡(luò)社交服務(wù)),如郵件、QQ、微信等方式實(shí)行詐騙[3]。由此,為防止身份被冒用帶來的信息泄露或金錢損失,本文提出一種基于鍵盤和鼠標(biāo)的雙指標(biāo)擊鍵行為識(shí)別方法來有效預(yù)防此類現(xiàn)象的發(fā)生。
在生物特征識(shí)別研究的發(fā)展下,用戶擊鍵行為特征以實(shí)施簡單、不易丟失、用戶接受程度高等特點(diǎn),已逐漸成為當(dāng)下國內(nèi)外學(xué)者研究的課題之一[4]。20世紀(jì)末,文獻(xiàn)[5]在身份識(shí)別中首次采用擊鍵行為特征,利用假設(shè)校驗(yàn)的方法進(jìn)行識(shí)別,雖然實(shí)現(xiàn)簡單,運(yùn)行成本低,但效果不佳,可信度較低,不過為擊鍵行為特征運(yùn)用在身份識(shí)別中提供了新的研究方向。文獻(xiàn)[6]采用統(tǒng)計(jì)學(xué)原理研究擊鍵行為特征,將8個(gè)最常用的連音字母作為特征數(shù)據(jù),但非法通過率較高,識(shí)別正確率低。文獻(xiàn)[7]利用快、中、慢三種擊鍵速度產(chǎn)生的擊鍵行為特征,通過模糊數(shù)學(xué)的方法進(jìn)行分析,但設(shè)計(jì)過程中選取的特征不夠充分,導(dǎo)致分類效果不佳。隨后,人們提出了不同種類的神經(jīng)網(wǎng)絡(luò)方法對(duì)擊鍵特征進(jìn)行身份識(shí)別。如文獻(xiàn)[8]通過改變隱含層節(jié)點(diǎn)數(shù)來設(shè)置閾值,從而獲得不同的收斂速度,得到平均錯(cuò)誤率2.2%。同樣文獻(xiàn)[9]對(duì)17個(gè)測試用戶的擊鍵特征時(shí)間信息進(jìn)行了研究,也得到了平均錯(cuò)誤率為2.46%的結(jié)果。雖然神經(jīng)網(wǎng)絡(luò)的方法取得了不錯(cuò)的效果,但用于分類和預(yù)測花費(fèi)的時(shí)間較長。
本文將加權(quán)貝葉斯和歐式距離算法結(jié)合的基礎(chǔ)上,采用用戶鍵盤和鼠標(biāo)的雙指標(biāo)擊鍵行為特征。該方法即可以彌補(bǔ)用戶單一鍵盤擊鍵特征或鼠標(biāo)擊鍵特征帶來的不穩(wěn)定性,也可提高身份認(rèn)證的準(zhǔn)確性和安全性,同時(shí)算法實(shí)現(xiàn)簡單,具有較好的測試結(jié)果。
對(duì)于用戶的擊鍵行為,主要是通過兩個(gè)時(shí)間點(diǎn)來決定其擊鍵時(shí)序特征:即一個(gè)鍵的按下時(shí)間點(diǎn)和一個(gè)鍵的釋放時(shí)間點(diǎn)。通過對(duì)用戶各擊鍵時(shí)間點(diǎn)的選取,組合成用戶擊鍵時(shí)間序列[10~11]。常見的擊鍵時(shí)序特征[12~13]:
1)第一個(gè)鍵按下到第一個(gè)鍵釋放的時(shí)間間隔,即單鍵(Single Key)時(shí)延TS;
2)第一個(gè)鍵釋放到第二個(gè)鍵按下的時(shí)間間隔,即R-P(Release-Press)時(shí)延TRP;
3)第一個(gè)鍵按下到第二個(gè)鍵釋放的時(shí)間間隔,即P-R(Press-Release)時(shí)延TPR;
4)第一個(gè)鍵按下到第二個(gè)鍵按下的時(shí)間間隔,即P-P(Press-Press)時(shí)延TPP;
5)第一個(gè)鍵釋放到第二個(gè)鍵彈起的時(shí)間間隔,即R-R(Release-Release)時(shí)延TRR。
以上擊鍵時(shí)序特征既可以是鍵盤的按鍵時(shí)序特征,也可以是鼠標(biāo)的按鍵時(shí)序特征,如按鼠標(biāo)左鍵、中鍵及右鍵。大多數(shù)文獻(xiàn)中,若不特別強(qiáng)調(diào),擊鍵特征一般均泛指鍵盤擊鍵時(shí)序特征。在用戶擊鍵過程中,其鍵盤或鼠標(biāo)的擊鍵時(shí)序特征與其他人有著顯著不同,若將鍵盤和鼠標(biāo)的擊鍵特征相組合,共同選取為用戶的擊鍵時(shí)序特征,可以更好地反映各用戶之間的行為差異,從而達(dá)到身份識(shí)別的需求[14]。
圖1 擊鍵時(shí)延特征
根據(jù)前期實(shí)驗(yàn)發(fā)現(xiàn),每個(gè)人的鍵盤鼠標(biāo)單鍵時(shí)延差異較大,且隨著時(shí)間的推移,穩(wěn)定性最好,改變最小,這與Robinson等人的研究結(jié)果一致[15],單鍵時(shí)延在擊鍵行為特征研究中比其他鍵與鍵之間的時(shí)間間隔信息更為重要,更能表現(xiàn)出用戶的擊鍵行為,如圖2、3所示。
圖2 部分人單鍵時(shí)延特征
圖3 dq七天單鍵時(shí)延的平均按鍵時(shí)間
由于用戶在擊鍵過程中,會(huì)出現(xiàn)按下鍵盤某個(gè)鍵不放或長按鼠標(biāo)左鍵對(duì)聊天窗口進(jìn)行拖拽等操作,其會(huì)產(chǎn)生單鍵時(shí)延較長,此類數(shù)據(jù)會(huì)對(duì)身份識(shí)別結(jié)果產(chǎn)生影響。為提高用戶身份識(shí)別的準(zhǔn)確度,在數(shù)據(jù)預(yù)處理階段會(huì)將單鍵時(shí)延超過0.1s的數(shù)據(jù)進(jìn)行過濾。
在用戶身份識(shí)別的設(shè)計(jì)中,常用兩個(gè)重要的指標(biāo)來作為身份認(rèn)證系統(tǒng)穩(wěn)定性的評(píng)估標(biāo)準(zhǔn),即錯(cuò)誤接受率FAR(False Accept Rate)和錯(cuò)誤拒絕率FRR(False Reject Rate)[16]。其中錯(cuò)誤接受率是指系統(tǒng)誤把入侵者識(shí)別成合法用戶的比率,錯(cuò)誤拒絕率是指系統(tǒng)誤把合法用戶識(shí)別成入侵者的比率,錯(cuò)誤接受率FAR和錯(cuò)誤拒絕率FRR公式如下:
錯(cuò)誤接受率FAR和錯(cuò)誤拒絕率FRR會(huì)隨著身份識(shí)別系統(tǒng)設(shè)置的閾值變化而變化,當(dāng)閾值越大,錯(cuò)誤接受率FAR會(huì)隨著閾值增大而增大,表明認(rèn)證系統(tǒng)性能較低,容易將入侵者劃分為合法用戶,系統(tǒng)不安全;當(dāng)閾值越小,錯(cuò)誤拒絕率FRR會(huì)隨著閾值減小而增大,表明認(rèn)證系統(tǒng)校驗(yàn)嚴(yán)格,容易將合法用戶識(shí)別成入侵者,這種情況往往設(shè)置在安全性能要求高的場合中。
用戶身份識(shí)別的研究中,首先采用樸素貝葉斯分類理論進(jìn)行用戶身份識(shí)別,其步驟如下:
1)設(shè)x={t1,t2,…,td}為一個(gè)待分類用戶,其表示每個(gè)待分類用戶x,均存在d個(gè)特征屬性,即ti;
2)系統(tǒng)用戶集合為U={U1,U2,…,Un},其表示每個(gè)用戶U,均存在u1、u2、…、ud的特征屬性;
3)利用公式分別計(jì)算出x屬于每個(gè)用戶Ui的概率P(Ui|x);
4)P(Uk|x)=max{P(U1|x),P(U2|x),…,P(Un|x)},即該用戶被分入到系統(tǒng)其中的一個(gè)用戶中。
樸素貝葉斯分類理論是根據(jù)類變量和屬性集的概率關(guān)系進(jìn)行建模的方法。其算法是以貝葉斯定理為基礎(chǔ),計(jì)算待分類對(duì)象屬于系統(tǒng)中每一個(gè)對(duì)象的概率,然后選擇具有最大后驗(yàn)概率的類作為該對(duì)象所屬的類,即通過某對(duì)象的先驗(yàn)概率,利用貝葉斯公式計(jì)算出其后驗(yàn)概率[17]。
其中,貝葉斯定理是計(jì)算兩個(gè)對(duì)象之間的條件概率,即在一個(gè)事件發(fā)生的情況下,另一個(gè)事件發(fā)生的概率,公式如下:
其中P(X)、P(Y)分別稱為X、Y的先驗(yàn)概率,P(X|Y)和P(Y|X)分別為在X發(fā)生的情況下Y發(fā)生的可能性和在Y發(fā)生的情況下X發(fā)生的可能性。
對(duì)于用戶身份識(shí)別,Y即代表系統(tǒng)中的某一用戶Ui,X代表待分類用戶,公式如下:
在估計(jì)類條件概率時(shí),樸素貝葉斯分類理論均假設(shè)用戶中各特征屬性之間相互條件獨(dú)立,其形式化的表述如下:
其中屬性集X包含d個(gè)屬性,即{t1,t2,…,td}。由于P(X)和P(Uk)對(duì)于待分類用戶均為固定,即對(duì)于確定最大的P(Uk|x),只需找出max{P(x|U1),P(x|U2),P(x|U3),…,P(x|Uk)}。假設(shè)樣本用戶擊鍵特征每個(gè)單鍵時(shí)延是連續(xù)的且服從高斯分布,則用戶每個(gè)單鍵時(shí)延的概率密度為
公式中,待分類用戶x存在d個(gè)單鍵時(shí)延特征屬性,即{t1,t2,…,td};用戶Ui在相同單鍵時(shí)延ti的情況下,均值為μi,標(biāo)準(zhǔn)差為σi。
在估計(jì)條件概率時(shí),樸素貝葉斯均假設(shè)用戶各個(gè)擊鍵特征屬性相互獨(dú)立,且服從高斯分布,事實(shí)上,在實(shí)際實(shí)驗(yàn)中,各個(gè)擊鍵特征屬性對(duì)身份識(shí)別的“重要程度”是不一樣的,若將其統(tǒng)一而論,會(huì)產(chǎn)生較差的分類結(jié)果。
本文在樸素貝葉斯的基礎(chǔ)上進(jìn)行改進(jìn),提出一種加權(quán)貝葉斯方法,即利用權(quán)值對(duì)每一個(gè)擊鍵特征屬性進(jìn)行加權(quán),其可以直接影響最終的分類結(jié)果,提高分類的準(zhǔn)確度。
在概率論中,反映一組數(shù)據(jù)集中趨勢的指標(biāo)有很多,均值就是其中之一。若特征屬性與其均值之間相差越大,則說明該屬性偏離程度越大,其特征屬性越不穩(wěn)定,對(duì)身份識(shí)別結(jié)果的“重要程度”越??;反之,對(duì)身份識(shí)別結(jié)果的“重要程度”越大。本文將均值與特征屬性之差作為單鍵時(shí)延概率密度的權(quán)重系數(shù),得到以下加權(quán)貝葉斯分類模型:
公式中,ai為用戶Uk的單鍵時(shí)延ti的權(quán)值,即反映該單鍵時(shí)延的“重要程度”。
加權(quán)貝葉斯在面對(duì)孤立的噪聲點(diǎn)和無關(guān)屬性時(shí),可以利用條件概率進(jìn)行平均化,但它只是對(duì)已有的用戶進(jìn)行識(shí)別分類,如果在沒有更新系統(tǒng)用戶集合的情況下,有新用戶進(jìn)行擊鍵行為操作,則其無法較好地對(duì)新用戶進(jìn)行識(shí)別。
歐式距離恰好能解決上述問題,其既可以對(duì)新用戶識(shí)別提供支撐,也可以對(duì)加權(quán)貝葉斯分類結(jié)果進(jìn)行驗(yàn)證。歐式距離是指多維空間中兩個(gè)屬性之間的真實(shí)距離,它能體現(xiàn)出個(gè)體數(shù)值特征的絕對(duì)差異[18]。當(dāng)待分類用戶被加權(quán)貝葉斯分類算法劃分到系統(tǒng)中的一個(gè)用戶時(shí),利用歐式距離計(jì)算兩者的相關(guān)度:
其中,u1、u2、…、ud為系統(tǒng)中用戶的特征屬性,t1、t2、…、td為待分類用戶的特征屬性。當(dāng)計(jì)算結(jié)果小于一個(gè)給定的閾值P,則x屬于用戶Uk,反之則x不屬于系統(tǒng)中現(xiàn)有用戶。若需要添加新的確認(rèn)用戶,只需將該用戶的特征數(shù)據(jù)加入到系統(tǒng)用戶集合中即可。
為減少其他外界因素給身份識(shí)別結(jié)果帶來的影響,實(shí)驗(yàn)前,志愿者們均采用統(tǒng)一采購的鍵盤和鼠標(biāo)進(jìn)行擊鍵操作。特征采集階段,本文采用HOOK技術(shù),利用全局鍵盤和鼠標(biāo)鉤子編寫Java監(jiān)控程序,對(duì)Mplus(一種SNS聊天軟件)進(jìn)行監(jiān)控,采集用戶在聊天過程中鍵盤和鼠標(biāo)的單鍵時(shí)延特征數(shù)據(jù)[19]。
實(shí)驗(yàn)階段共采集32名志愿者160組單鍵擊鍵特征數(shù)據(jù)(每組均包括了鍵盤和鼠標(biāo)的單鍵擊鍵特征數(shù)據(jù)),通過加權(quán)貝葉斯分類算法和歐式距離算法的結(jié)合,來調(diào)整閾值P的大小。
表1 FAR和FRR關(guān)于閾值P的大小
表2 樸素貝葉斯與本文算法性能測試結(jié)果
由表1可以看出,隨著閾值P的減小,錯(cuò)誤接受率FAR也在不斷減小,錯(cuò)誤拒絕率FRR在不斷增大,此時(shí)身份識(shí)別系統(tǒng)校驗(yàn)越為嚴(yán)格。實(shí)驗(yàn)結(jié)果表明,當(dāng)閾值P=0.07±0.005時(shí),身份識(shí)別效果較好,錯(cuò)誤接受率FAR為2.64%,錯(cuò)誤拒絕率FRR為3.38%。
由表2可知,鍵盤和鼠標(biāo)的雙指標(biāo)擊鍵特征相比單一鍵盤擊鍵特征,錯(cuò)誤接受率FAR和錯(cuò)誤拒絕率FRR都有所減小。此實(shí)驗(yàn)說明,雙指標(biāo)復(fù)合身份認(rèn)證,可以在一定程度上提高系統(tǒng)身份認(rèn)證的準(zhǔn)確率。同時(shí)本文提出的加權(quán)貝葉斯分類算法和歐氏距離算法結(jié)合的方法,顯著優(yōu)于樸素貝葉斯分類算法,有效地將錯(cuò)誤接受率FAR和錯(cuò)誤拒絕率FRR降低到2.64%和3.38%。
本文提出一種基于鍵盤和鼠標(biāo)擊鍵行為身份識(shí)別方法,該方法將樸素貝葉斯分類算法進(jìn)行改進(jìn),對(duì)擊鍵特征的條件概率加入一定的權(quán)值,再和歐式距離算法結(jié)合,利用鍵盤和鼠標(biāo)的雙指標(biāo)擊鍵特征,得到了2.64%的錯(cuò)誤接受率和3.38%的錯(cuò)誤拒絕率。該算法易于實(shí)現(xiàn),且具有較好的測試結(jié)果。但本文也存在不足之處,即可以考慮更多的擊鍵時(shí)序特征以及控制外界環(huán)境因素的干擾,以此進(jìn)一步增加用戶身份識(shí)別的覆蓋面和準(zhǔn)確性。