一種基于用戶軟件行為模式的身份認(rèn)證裝置和方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息安全領(lǐng)域,尤其是涉及一種基于用戶軟件行為模式的身份認(rèn)證裝置和方法。
【背景技術(shù)】
[0002]隨著Internet的發(fā)展,電子商務(wù)(E—Commerce)在大眾生活中扮演著越來越重要的作用,也越來越成為國(guó)際貿(mào)易中重要的經(jīng)營(yíng)模式。與此同時(shí),電子交易過程中的安全性問題也愈顯重要,如何構(gòu)建一個(gè)安全、便捷的電子商務(wù)應(yīng)用環(huán)境,對(duì)信息提供足夠的保護(hù),可以說是電子商務(wù)最核心和關(guān)鍵的問題。在電子商務(wù)安全體系中,即基本加密技術(shù)、安全認(rèn)證手段以及安全協(xié)議三方面中,安全認(rèn)證中對(duì)用戶賬號(hào)密碼的真實(shí)性認(rèn)證尤為重要,賬號(hào)密碼的使用者是否為其合法的擁有者正是本設(shè)計(jì)課題所要確定的內(nèi)容,基于此來保證電子商務(wù)、交易的安全性,為本課題的研宄方向。
[0003]針對(duì)電子交易現(xiàn)有的安全問題,目前對(duì)于網(wǎng)絡(luò)釣魚的防治,最有效最普及的方法還是黑白名單,其對(duì)于預(yù)防用戶遭受釣魚攻擊起到了一定的防范作用,但這治標(biāo)不治本。用戶身份認(rèn)證系統(tǒng)因?yàn)閰^(qū)分不同的用戶或用戶群,根據(jù)他們使用電腦的習(xí)慣進(jìn)行認(rèn)證,對(duì)于判斷該賬號(hào)的使用者身份是否合法,是否獲得了合法的授權(quán)的準(zhǔn)確度都相當(dāng)高。現(xiàn)階段的用戶身份認(rèn)證技術(shù)主要應(yīng)用于電子商務(wù)安全性分析上。其認(rèn)證技術(shù)通??煞譃槔碚摲椒ò娮咏灰讌f(xié)議的建模和驗(yàn)證,鼠標(biāo)鍵盤行為認(rèn)證,基于電腦硬件信息的認(rèn)證,基于網(wǎng)頁(yè)瀏覽習(xí)慣的認(rèn)證以及本課題研宄的基于軟件使用習(xí)慣的認(rèn)證等。
[0004]現(xiàn)階段基于用戶軟件行為的刻畫還處于初級(jí)階段,基本只是應(yīng)用于軟件推薦或者其他個(gè)性推薦系統(tǒng),并且只是收集到用戶所常用的軟件種類,類似本設(shè)計(jì)對(duì)于用戶所使用軟件之間的關(guān)聯(lián)規(guī)律的刻畫并且應(yīng)用于軟件方面的可信計(jì)算的還沒有,但這方面的研宄卻是對(duì)用戶身份認(rèn)證的實(shí)現(xiàn)有著一定意義的,隨著個(gè)人電腦的普及以及服務(wù)軟件的多樣化,由于每個(gè)個(gè)體性格,年齡,家庭環(huán)境,教育背景,從事行業(yè),社會(huì)地位等情況的不同,選擇安裝的軟件各不相同,而使用軟件的時(shí)間,方式也大相徑庭,因此通過不同個(gè)體使用軟件的差異性,軟件使用模式的建模是對(duì)用戶身份認(rèn)證的一個(gè)很好的切入點(diǎn)。
[0005]本課題所提出的用戶行為指的是用戶在使用電腦的軟件時(shí),打開一個(gè)軟件的同時(shí),有多大幾率打開另一個(gè)軟件,即使用軟件之間的相互關(guān)聯(lián)情況,為一個(gè)用戶行為。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的就是為了克服上述現(xiàn)有技術(shù)存在的缺陷而提供一種基于用戶軟件行為模式的身份認(rèn)證裝置和方法。
[0007]本發(fā)明的目的可以通過以下技術(shù)方案來實(shí)現(xiàn):
[0008]一種基于用戶軟件行為模式的身份認(rèn)證裝置,其特征在于,包括軟件信息數(shù)據(jù)監(jiān)控捕捉模塊、數(shù)據(jù)預(yù)處理模塊、關(guān)聯(lián)規(guī)則挖掘模塊和身份驗(yàn)證模塊;
[0009]所述軟件信息數(shù)據(jù)監(jiān)控捕捉模塊,用于采集用戶的軟件使用信息,并以關(guān)聯(lián)規(guī)則的輸入格式存入數(shù)據(jù)庫(kù)中;
[0010]所述的數(shù)據(jù)預(yù)處理模塊,用于對(duì)軟件信息數(shù)據(jù)監(jiān)控捕捉模塊采集到的數(shù)據(jù)進(jìn)行分類,去除無關(guān)軟件使用信息以及進(jìn)程合并,并將數(shù)據(jù)存入數(shù)據(jù)庫(kù)中;
[0011]所述的關(guān)聯(lián)規(guī)則挖掘模塊,用于對(duì)數(shù)據(jù)庫(kù)中的軟件信息數(shù)據(jù)進(jìn)行基于關(guān)聯(lián)規(guī)則的數(shù)據(jù)挖掘獲得用戶使用軟件之間的規(guī)則;
[0012]所述的身份驗(yàn)證模塊,用于把用戶的軟件使用行為與關(guān)聯(lián)規(guī)則挖掘模塊挖掘得到的用戶使用軟件之間的規(guī)則進(jìn)行匹配,驗(yàn)證用戶身份。
[0013]所述的軟件信息數(shù)據(jù)監(jiān)控捕捉模塊的采集信息包括自動(dòng)采集和手動(dòng)采集;所述的軟件使用信息包括當(dāng)前系統(tǒng)時(shí)間和進(jìn)程名稱。
[0014]所述的軟件信息數(shù)據(jù)監(jiān)控捕捉模塊還包括進(jìn)程列表單元,用于顯示每一次軟件使用信息的采集結(jié)果。
[0015]所述的數(shù)據(jù)預(yù)處理模塊的數(shù)據(jù)分類具體為把進(jìn)程分類為系統(tǒng)進(jìn)程和用戶進(jìn)程;
[0016]所示的無關(guān)軟件包括本裝置運(yùn)行所需的軟件;
[0017]所述的進(jìn)程合并具體為:將同一軟件的多個(gè)進(jìn)程合并為一條軟件使用信息。
[0018]所述的基于關(guān)聯(lián)規(guī)則的數(shù)據(jù)挖掘所使用的算法為Apr1ri挖掘算法。
[0019]所述的裝置還包括頻繁進(jìn)程抽取模塊,用于遍歷數(shù)據(jù)庫(kù)中每條記錄并統(tǒng)計(jì)每一個(gè)進(jìn)程的出現(xiàn)頻率,當(dāng)頻率大于設(shè)定的閾值時(shí),則認(rèn)為該進(jìn)程是頻繁進(jìn)程,反之則不是頻繁進(jìn)程;
[0020]所述的身份驗(yàn)證模塊把用戶的軟件使用行為與關(guān)聯(lián)規(guī)則挖掘模塊挖掘得到的用戶使用軟件之間的規(guī)則進(jìn)行匹配的同時(shí),還結(jié)合檢測(cè)該用戶當(dāng)前使用的軟件中所含有頻繁進(jìn)程的數(shù)量,以驗(yàn)證用戶身份。
[0021]一種基于用戶軟件行為模式的身份認(rèn)證方法,其特征在于,包括以下步驟:
[0022](I)采集用戶軟件使用信息;
[0023](2)對(duì)采集到的數(shù)據(jù)進(jìn)行分類,去除無關(guān)軟件使用信息以及進(jìn)程合并;
[0024](3)對(duì)軟件信息數(shù)據(jù)進(jìn)行基于關(guān)聯(lián)規(guī)則的數(shù)據(jù)挖掘獲得用戶使用軟件之間的規(guī)則;
[0025](4)把用戶的軟件使用行為與步驟(3)得到的用戶使用軟件之間的規(guī)則進(jìn)行匹配,驗(yàn)證用戶身份。
[0026]所述步驟(2)中的對(duì)采集到的數(shù)據(jù)進(jìn)行分類具體為把進(jìn)程分類為系統(tǒng)進(jìn)程和用戶進(jìn)程;所示的無關(guān)軟件包括本裝置運(yùn)行所需的軟件;所述的進(jìn)程合并具體為:將同一軟件的多個(gè)進(jìn)程合并為一條軟件使用信息。
[0027]所述步驟(3)中的基于關(guān)聯(lián)規(guī)則的數(shù)據(jù)挖掘所使用的算法為Apr1ri挖掘算法。
[0028]所述步驟(4)之前還包括頻繁進(jìn)程信息抽取步驟,具體為:
[0029]遍歷數(shù)據(jù)庫(kù)中每條記錄并統(tǒng)計(jì)每一個(gè)進(jìn)程的出現(xiàn)頻率,當(dāng)頻率大于設(shè)定的閾值時(shí),則認(rèn)為該進(jìn)程是頻繁進(jìn)程,反之則不是頻繁進(jìn)程;
[0030]所述的步驟(4)中把用戶的軟件使用行為與步驟(3)得到的用戶使用軟件之間的規(guī)則進(jìn)行匹配的同時(shí),還結(jié)合檢測(cè)該用戶當(dāng)前使用的軟件中所含有頻繁進(jìn)程的數(shù)量,以驗(yàn)證用戶身份。
[0031]與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點(diǎn):
[0032]1.通過研宄用戶使用軟件之間的關(guān)聯(lián)規(guī)律并應(yīng)用于身份認(rèn)證,為保證用戶的賬戶安全提供了一種新的手段;
[0033]2.使用監(jiān)控器實(shí)時(shí)記錄并顯示用戶使用軟件的信息。
[0034]3.通過提取用戶頻繁進(jìn)程,結(jié)合用戶軟件使用規(guī)則共同驗(yàn)證當(dāng)前用戶身份,提升用戶身份識(shí)別的精確度。
【附圖說明】
[0035]圖1為本發(fā)明的裝置各模塊結(jié)構(gòu)圖;
[0036]圖2為本發(fā)明的數(shù)據(jù)監(jiān)控捕捉模塊流程圖;
[0037]圖3為本發(fā)明的數(shù)據(jù)預(yù)處理模塊流程圖;
[0038]圖4為Apr1ri關(guān)聯(lián)規(guī)則挖掘算法流程圖;
[0039]圖5為本發(fā)明的頻繁進(jìn)程抽取流程圖。
【具體實(shí)施方式】
[0040]下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)說明。
[0041]如圖1所示,基于個(gè)人電腦的用戶軟件行為模型挖掘系統(tǒng)由軟件信息數(shù)據(jù)監(jiān)控捕捉模塊,數(shù)據(jù)預(yù)處理模塊,關(guān)聯(lián)規(guī)則挖掘模塊,頻繁進(jìn)程抽取模塊這四個(gè)功能模塊組成。
[0042]根據(jù)軟件信息數(shù)據(jù)捕捉模塊設(shè)計(jì)一個(gè)在PC機(jī)上運(yùn)行的軟件/進(jìn)程信息監(jiān)控器,定時(shí)或手動(dòng)(可選)采集PC端上使用軟件的時(shí)間、應(yīng)用程序的名稱、應(yīng)用程序的其他信息等特征,將采集到的數(shù)據(jù)生成日志并以關(guān)聯(lián)規(guī)則的輸入格式存入數(shù)據(jù)庫(kù)中。通過預(yù)處理模塊對(duì)采集到的數(shù)據(jù)進(jìn)行預(yù)處理,并將各項(xiàng)數(shù)據(jù)存入數(shù)據(jù)庫(kù)中。對(duì)此時(shí)數(shù)據(jù)庫(kù)中的有效軟件信息通過關(guān)聯(lián)規(guī)則挖掘模塊進(jìn)行數(shù)據(jù)挖掘,得出用戶使用的軟件之間相互關(guān)聯(lián)的規(guī)律,并對(duì)數(shù)據(jù)庫(kù)中每一項(xiàng)進(jìn)行比對(duì)抽取出頻繁的進(jìn)程或服務(wù),生成用戶使用軟件的其他特性,比如頻繁系統(tǒng)進(jìn)程與用戶進(jìn)程,作為行為模型的另一項(xiàng)數(shù)據(jù)參考,當(dāng)用戶使用軟件規(guī)律類似時(shí),可以以這一項(xiàng),即用戶所經(jīng)常使用的軟件種類信息作為判斷標(biāo)準(zhǔn),這一部分是為了使用戶認(rèn)證機(jī)制更完善而設(shè)置的。
[0043]數(shù)據(jù)監(jiān)控捕捉模塊101:該部分的總體設(shè)計(jì)思路如下:系統(tǒng)運(yùn)行時(shí)即開始記錄用戶的進(jìn)程使用情況,選擇隨機(jī)記錄的模式可以在設(shè)定的時(shí)間段內(nèi)隨機(jī)記錄下用戶當(dāng)前所打開的所有進(jìn)程的信息,即為捕捉到一條完整的記錄,每一個(gè)進(jìn)程的信息占用一個(gè)數(shù)據(jù)項(xiàng),所有進(jìn)程的信息包括當(dāng)前系統(tǒng)時(shí)間,再一起記錄到日志和數(shù)據(jù)庫(kù)中作為一條記錄,用戶也可以選擇手動(dòng)記錄下某一時(shí)刻的進(jìn)程使用情況。在數(shù)據(jù)捕捉模塊監(jiān)控器的界面上可以看到每一次進(jìn)程記錄刷新的所有信息。數(shù)據(jù)捕捉模塊流程圖如圖2所示。
[0044]數(shù)據(jù)預(yù)處理模塊102:首先對(duì)數(shù)據(jù)庫(kù)中的進(jìn)程數(shù)據(jù)塊進(jìn)行分類,區(qū)分出系統(tǒng)進(jìn)程與用戶進(jìn)程作為篩選與處理的考慮要素之一,因?yàn)橄到y(tǒng)進(jìn)程通常為開機(jī)即運(yùn)行,并一直運(yùn)行的進(jìn)程,運(yùn)行的時(shí)間和運(yùn)行的種類對(duì)于不同用戶來說區(qū)分不大,即在系統(tǒng)進(jìn)程方面對(duì)關(guān)聯(lián)規(guī)則進(jìn)行挖掘?qū)τ脩粜袨槟J降臉?gòu)造影響不大,所以我們只考慮用戶進(jìn)程方面的信息。另外還應(yīng)該排除掉一些不必要的進(jìn)程,比如本建模系統(tǒng)所占的進(jìn)程實(shí)際上是作為監(jiān)控軟件存在,而不屬于用戶的習(xí)慣之一,而這些數(shù)據(jù)實(shí)際上并不是我們所需要的,因此有必要將這些數(shù)據(jù)過濾刪除,留下其他有用信息。一種軟件的存在其實(shí)可以同時(shí)有幾個(gè)進(jìn)程在運(yùn)行,而我們研宄的是某一軟件,對(duì)于它所占有的幾個(gè)進(jìn)程并不做區(qū)分而