本發(fā)明涉及一種用戶安全認(rèn)證系統(tǒng),特別是涉及一種基于用戶行為模型的身份認(rèn)證方法及系統(tǒng)。
背景技術(shù):
隨著互聯(lián)網(wǎng)和網(wǎng)上購物地飛速發(fā)展,網(wǎng)絡(luò)安全問題也成為了與國家、社會、個人息息相關(guān)的問題。人們使用的現(xiàn)有身份安全認(rèn)證方法的網(wǎng)絡(luò)環(huán)境依然存在一些安全威脅,針對網(wǎng)上交易的安全威脅也顯著增多。如果諸如身份信息被盜、賬戶遭到非法入侵和身份識別和認(rèn)證錯誤這樣的網(wǎng)絡(luò)安全問題不能夠得到解決,將會嚴(yán)重影響用戶對網(wǎng)絡(luò)平臺的信任,從而阻礙互聯(lián)網(wǎng)在中國乃至世界的發(fā)展。因此研究如何構(gòu)建安全可信的網(wǎng)絡(luò)平臺有著十分重要的現(xiàn)實意義,自適應(yīng)性高且且能準(zhǔn)確地對用戶身份信息進(jìn)行認(rèn)證的系統(tǒng)及方法成為在線網(wǎng)絡(luò)平臺安全技術(shù)的一個重要研究方向。
身份認(rèn)證是捍衛(wèi)網(wǎng)絡(luò)安全的第一道大門,身份認(rèn)證主要用于阻攔非法用戶對賬戶的訪問以及非法程序控制的入侵行為。現(xiàn)有主要的身份認(rèn)證方法包括依賴用戶名與密碼結(jié)合的傳統(tǒng)方式以及類似指紋識別、聲紋識別及瞳孔識別等生物信息認(rèn)證這兩種主要方法。用戶名對應(yīng)密碼的用戶認(rèn)證架構(gòu)在技術(shù)上易于實現(xiàn),卻存在諸多安全隱患(例如盜號攻擊);生物信息認(rèn)證相對可靠,卻對硬件設(shè)備有較強(qiáng)的依賴性(例如指紋采集器)。傳統(tǒng)的身份認(rèn)證模式認(rèn)證條件單一,且需額外的硬件設(shè)備進(jìn)行采集。存在“用戶名-密碼”方法的漏洞,同時系統(tǒng)使用生物信息方法的附加的硬件使得使用成本提高。
現(xiàn)有的身份認(rèn)證技術(shù)針對用戶身份的可信性問題,主要為基于密碼及生物信息識別身份認(rèn)證系統(tǒng)及方法。這兩類傳統(tǒng)系統(tǒng)在識別用戶身份時身份非法判定條件較為單一,認(rèn)證過程的準(zhǔn)確性較低,且未考慮用戶行為模式之間的差距。一旦遭到非法程序或已盜取合法身份信息的非法用戶的入侵時,缺乏有效的身份認(rèn)證安全防護(hù)措施以阻止可疑用戶,身份認(rèn)證漏洞明顯。
綜上,現(xiàn)有技術(shù)中的身份認(rèn)證方法及系統(tǒng)存在認(rèn)證方式簡單、對硬件依賴性較大、認(rèn)證過程精確度較低及系統(tǒng)安全性低的技術(shù)問題。
技術(shù)實現(xiàn)要素:
鑒于以上現(xiàn)有技術(shù)的缺點,本發(fā)明的目的在于提供一種基于用戶行為模型的身份認(rèn)證方法及系統(tǒng)。一種基于用戶行為模型的身份認(rèn)證方法,包括:
S1、根據(jù)服務(wù)器端發(fā)送的日志文件收集用戶行為信息,按照預(yù)設(shè)時序?qū)υ行袨樾畔⑦M(jìn)行更新并保存,其中用戶行為信息與用戶行為對應(yīng);
S2、根據(jù)預(yù)設(shè)行為模型,計算用戶行為信息,得出特定行為出現(xiàn)概率并累加,計算出用戶行為信息與預(yù)設(shè)行為模型的相似度信息;
S3、計算相似度信息,更新用戶行為信息和用戶行為判斷參數(shù),并結(jié)合更新的用戶行為信息訓(xùn)練用戶行為分類器;
S4、根據(jù)用戶行為分類器判定用戶行為是否異常。
于本發(fā)明的一實施方式中,根據(jù)用戶行為分類器判定用戶行為是否異常是在有用戶上線的情況下進(jìn)行的,其余步驟在無用戶上線的情況下進(jìn)行。
于本發(fā)明的一實施方式中,步驟S1、根據(jù)服務(wù)器端發(fā)送的日志文件收集用戶行為信息,按照預(yù)設(shè)時序?qū)υ行袨樾畔⑦M(jìn)行更新并保存,其中用戶行為信息與用戶行為對應(yīng),包括:
S11、按照時間上由近及遠(yuǎn)的順序,以登陸事件和注銷事件作為序列劃分的依據(jù),在服務(wù)器日志中采集用戶行為序列;
S12、對比原有的行為序列列表,判斷用戶行為序列對應(yīng)的用戶行為是否發(fā)生過;
S13、若否,則將用戶行為序列編入行為序列列表;
S14、若是,則保留原有的行為序列列表;
S15、將行為序列列表存入本地。
于本發(fā)明的一實施方式中,步驟S2、根據(jù)預(yù)設(shè)行為模型,計算用戶行為信息,得出特定行為出現(xiàn)概率并累加,計算出用戶行為信息與預(yù)設(shè)行為模型的相似度信息,包括:
S21、預(yù)設(shè)行為模型包括一元模型、二元模型、三元模型和決策模型,統(tǒng)計該用戶的所有行為子序列在同長度的所有子序列中出現(xiàn)的概率及條件概率,其中元數(shù)為行為子序列長度,決策模型用于計算多元行為序列的條件概率;
S22、按照行為子序列長度對新用戶行為序列進(jìn)行切分,得到切分子序列;
S23、將特定長度的切分子序列輸入特定元數(shù)的預(yù)設(shè)行為模型;
S24、四個預(yù)設(shè)行為模型根據(jù)新用戶子序列的出現(xiàn)概率得出累加結(jié)果;
S25、根據(jù)累加結(jié)果分別計算出新用戶行為序列與四個設(shè)定行為模型的相似度。
于本發(fā)明的一實施方式中,步驟S3、計算相似度信息,更新用戶行為信息和用戶行為判斷參數(shù),并結(jié)合更新的用戶行為信息訓(xùn)練用戶行為分類器,包括:
S31、預(yù)設(shè)合法用戶的歷史行為序列和任一非法用戶的歷史行為序列作為數(shù)據(jù)集;
S32、采用邏輯回歸算法循環(huán)更新分類器信息,根據(jù)新的相似度得出線性組合參數(shù);
S33、發(fā)送分類器信息和線性組合參數(shù)。
于本發(fā)明的一實施方式中,步驟S4、根據(jù)用戶行為分類器判定用戶行為是否異常,包括:
S41、接收判斷信息和行為序列列表中最新行為序列;
S42、根據(jù)判斷信息判斷最新行為序列對應(yīng)的用戶行為是否異常;
S43、若是,則發(fā)送報警判定結(jié)果;
S44、若否,則發(fā)送正常判定結(jié)果。
于本發(fā)明的一實施方式中,一種基于用戶行為模型的身份認(rèn)證系統(tǒng),包括:分析模塊、統(tǒng)計模塊、分類器更新模塊和判斷模塊;分析模塊,用于根據(jù)服務(wù)器端收集的用戶行為信息,按照預(yù)設(shè)時序?qū)υ行袨樾畔⑦M(jìn)行更新并保存,其中用戶行為信息與用戶行為對應(yīng);統(tǒng)計模塊,用于根據(jù)預(yù)設(shè)行為模型,計算用戶行為信息,得出特定行為出現(xiàn)概率并累加,計算出用戶行為信息與預(yù)設(shè)行為模型的相似度信息,統(tǒng)計模塊與分析模塊連接;分類器更新模塊,計算相似度信息,更新用戶行為信息和用戶行為判斷參數(shù),并結(jié)合更新的用戶行為信息進(jìn)行訓(xùn)練用戶行為分類器,分類器更新模塊與統(tǒng)計模塊連接;判斷模塊,用于根據(jù)用戶行為分類器判定用戶行為是否異常,判斷模塊與分類器更新模塊連接。
于本發(fā)明的一實施方式中,判斷模塊在有用戶上線的情況下工作,分析模塊、行為數(shù)據(jù)統(tǒng)計模塊和分類器更新模塊在無用戶上線的情況下工作。
于本發(fā)明的一實施方式中,分析模塊包括:行為采集模塊、識別模塊、列表更新模塊、原序模塊和列表存儲模塊;行為采集模塊,用于按照時間上由近及遠(yuǎn)的順序,以登陸事件和注銷事件作為序列劃分的依據(jù),在服務(wù)器日志中采集用戶行為序列;識別模塊,用于對比原有的行為序列列表,判斷用戶行為序列對應(yīng)的用戶行為是否發(fā)生過;列表更新模塊,用于在用戶行為序列對應(yīng)的用戶行為未發(fā)生過時,將用戶行為序列編入行為序列列表,列表更新模塊與識別模塊連接;原序模塊,用于在用戶行為序列對應(yīng)的用戶行為發(fā)生過時,保留原有的行為序列列表,原序模塊與識別模塊連接;列表存儲模塊,將行為序列列表存入本地,列表存儲模塊與列表更新模塊及原序模塊連接。
于本發(fā)明的一實施方式中,統(tǒng)計模塊,包括:預(yù)設(shè)模型模塊、序列切分模塊、序列輸入模塊、概率累加模塊和相似度計算模塊;預(yù)設(shè)模型模塊,用于預(yù)設(shè)包括一元模型、二元模型、三元模型和決策模型,統(tǒng)計用戶的所有行為子序列在同長度的所有子序列中出現(xiàn)的概率及條件概率;其中元數(shù)為行為子序列長度,決策模型用于計算多元行為序列的條件概率;序列切分模塊,用于按照行為子序列長度對新用戶行為序列進(jìn)行切分,得到切分子序列;序列輸入模塊,用于將特定長度的切分子序列輸入特定元數(shù)的預(yù)設(shè)行為模型,序列輸入模塊與序列切分模塊連接;概率累加模塊,用于根據(jù)新用戶子序列的出現(xiàn)概率得出累加結(jié)果,概率累加模塊與序列輸入模塊連接;相似度計算模塊,用于根據(jù)累加結(jié)果分別計算出新用戶行為序列與四個設(shè)定行為模型的相似度,相似度計算模塊與概率累加模塊連接。
于本發(fā)明的一實施方式中,分類器更新模塊,包括:離線設(shè)定模塊、判斷信息更新模塊和判斷信息發(fā)送模塊;離線設(shè)定模塊,用于預(yù)設(shè)合法用戶的歷史行為序列和任一非法用戶的歷史行為序列作為數(shù)據(jù)集;判斷信息更新模塊,用于根據(jù)邏輯回歸算法循環(huán)更新分類器信息,根據(jù)新的相似度得出線性組合參數(shù),判斷信息更新模塊與離線設(shè)定模塊連接;判斷信息發(fā)送模塊,發(fā)送分類器信息和線性組合參數(shù),判斷信息發(fā)送模塊與判斷信息更新模塊連接。
于本發(fā)明的一實施方式中,判斷模塊包括:判斷信息接收模塊、異常判斷模塊、警報結(jié)果發(fā)送模塊和正常結(jié)果發(fā)送模塊;判斷信息接收模塊,用于接收判斷信息和行為序列列表中最新行為序列;異常判斷模塊,用于根據(jù)判斷信息判斷最新行為序列對應(yīng)的用戶行為是否異常,異常判斷模塊與判斷信息接收模塊連接;警報結(jié)果發(fā)送模塊,用于在最新行為序列對應(yīng)的用戶行為異常時,發(fā)送報警判定結(jié)果,警報結(jié)果發(fā)送模塊與異常判斷模塊連接;正常結(jié)果發(fā)送模塊,用于在最新行為序列對應(yīng)的用戶行為非異常時,發(fā)送正常判定結(jié)果,正常結(jié)果發(fā)送模塊與異常判斷模塊連接。
于本發(fā)明的一實施方式中,一種基于用戶行為模型服務(wù)器端報警方法,包括:
S11’、收集用戶最近的行為序列,生成日志文件;
S12’、發(fā)送日志文件;
S13’、接收判斷結(jié)果;
S14’、判斷是否收到警報結(jié)果;
S15’、若是,則對異常狀態(tài)報警,判斷用戶身份非法;
S16’、若否,則判斷用戶身份合法。
于本發(fā)明的一實施方式中,一種服務(wù)器端包括:日志生成模塊、行為序列輸入模塊、判斷結(jié)果接收模塊、報警判定模塊、服務(wù)器報警模塊和合法身份識別模塊;日志生成模塊,用于收集用戶最近的行為序列,生成日志文件;行為序列輸入模塊,用于發(fā)送日志文件,行為序列輸入模塊與日志生成模塊連接;判斷結(jié)果接收模塊,用于接收判斷結(jié)果;報警判定模塊,判斷是否收到警報結(jié)果;服務(wù)器報警模塊,用于在收到報警結(jié)果時,對異常狀態(tài)報警,判斷用戶身份非法,服務(wù)器報警模塊與報警判定模塊連接;合法身份識別模塊,用于在收到正常結(jié)果時,判斷用戶身份合法,合法身份識別模塊與報警判定模塊連接。
如上所述,本發(fā)明提供的一種基于用戶行為模型的身份認(rèn)證方法及系統(tǒng),具有以下有益效果:本發(fā)明利用用戶特征信息作為用戶的行為模式生成依據(jù),利用分類器進(jìn)行用戶合法性的認(rèn)證,可有效地避免傳統(tǒng)技術(shù)中身份認(rèn)證模式認(rèn)證條件單一且需額外的硬件設(shè)備進(jìn)行采集的技術(shù)局限性。本發(fā)明在用戶上線使用網(wǎng)絡(luò)平臺的過程中即可對對用戶行為特征的識別分類判斷該用戶是否為合法用戶,消除了傳統(tǒng)技術(shù)中“用戶名-密碼”方法的漏洞,可以在有用戶在線時進(jìn)行對用戶身份進(jìn)行認(rèn)證,同時減少了傳統(tǒng)技術(shù)中系統(tǒng)使用生物信息方法的附加的硬件使得使用成本。
本發(fā)明提供的一種基于用戶行為模型的身份認(rèn)證方法及系統(tǒng)的身份認(rèn)證技術(shù)針對用戶身份的可信性問題,完全基于用戶行為特征模型,避免了傳統(tǒng)的基于密碼及生物信息識別身份認(rèn)證系統(tǒng)及方法在識別用戶身份時身份非法判定條件較為單一,認(rèn)證過程的準(zhǔn)確性較低的缺點,考慮用戶行為模式之間的差距。在遭到非法程序或已盜取合法身份信息的非法用戶的入侵時,能夠采取有效的身份認(rèn)證安全防護(hù)措施以阻止可疑用戶。
綜上,本發(fā)明解決了現(xiàn)有技術(shù)中的身份認(rèn)證方法及系統(tǒng)存在認(rèn)證方式簡單、對硬件依賴性較大、認(rèn)證過程精確度較低及系統(tǒng)安全性低的技術(shù)問題,具有較好的自適應(yīng)性、可拓展性和安全性。
附圖說明
圖1顯示為一種基于用戶行為模型的身份認(rèn)證方法步驟示意圖。
圖2顯示為本發(fā)明的行為信息更新步驟示意圖。
圖3顯示為本發(fā)明的行為序列統(tǒng)計模型示意圖。
圖4顯示為本發(fā)明的分類判斷信息計算步驟示意圖。
圖5顯示為本發(fā)明的基于用戶行為模型的身份認(rèn)證系統(tǒng)異常判斷步驟示意圖。
圖6顯示為本發(fā)明的一種基于用戶行為模型的身份認(rèn)證系統(tǒng)模塊示意圖。
圖7顯示為本發(fā)明的分析模塊示意圖。
圖8顯示為本發(fā)明的統(tǒng)計模塊示意圖。
圖9顯示為本發(fā)明的分類器更新模塊示意圖。
圖10顯示為本發(fā)明的判斷模塊示意圖。
圖11顯示為本發(fā)明的一種基于用戶行為模型服務(wù)器報警方法步驟示意圖。
圖12顯示為一種服務(wù)器端模塊示意圖。
元件標(biāo)號說明
1 基于用戶行為模型的身份認(rèn)證系統(tǒng)
11 分析模塊
12 統(tǒng)計模塊
13 分類器更新模塊
14 判斷模塊
111 行為采集模塊
112 識別模塊
113 列表更新模塊
114 原序模塊
115 列表存儲模塊
121 預(yù)設(shè)模型模塊
122 序列切分模塊
123 序列輸入模塊
124 概率累加模塊
125 相似度計算模塊
131 離線設(shè)定模塊
132 判斷信息更新模塊
133 判斷信息發(fā)送模塊
141 判斷信息接收模塊
142 異常判斷模塊
143 警報結(jié)果發(fā)送模塊
144 正常結(jié)果發(fā)送模塊
21 日志生成模塊
22 行為序列輸入模塊
23 判斷結(jié)果接收模塊
24 報警判定模塊
25 服務(wù)器報警模塊
26 合法身份識別模塊
步驟標(biāo)號說明
圖1 S1~S4
圖2 S11~S15
圖3 S21~S25
圖4 S31~S33
圖5 S41~S44
圖11 S11’~S16’
具體實施方式
以下由特定的具體實施例說明本發(fā)明的實施方式,熟悉此技術(shù)的人士可由本說明書所揭露的內(nèi)容輕易地了解本發(fā)明的其他優(yōu)點及功效。
請參閱圖1至圖12,須知,本說明書所附圖式所繪示的結(jié)構(gòu),均僅用以配合說明書所揭示的內(nèi)容,以供熟悉此技術(shù)的人士了解與閱讀,并非用以限定本發(fā)明可實施的限定條件,故不具技術(shù)上的實質(zhì)意義,任何結(jié)構(gòu)的修飾、比例關(guān)系的改變或大小的調(diào)整,在不影響本發(fā)明所能產(chǎn)生的功效及所能達(dá)成的目的下,均應(yīng)仍落在本發(fā)明所揭示的技術(shù)內(nèi)容所能涵蓋的范圍內(nèi)。同時,本說明書中所引用的如”上”、”下”、”左”、”右”、”中間”及”一”等的用語,亦僅為便于敘述的明了,而非用以限定本發(fā)明可實施的范圍,其相對關(guān)系的改變或調(diào)整,在無實質(zhì)變更技術(shù)內(nèi)容下,當(dāng)亦視為本發(fā)明可實施的范疇。
請參閱圖1,顯示本發(fā)明的一種基于用戶行為模型的身份認(rèn)證方法步驟示意圖,如圖1所示,本發(fā)明的目的在于提供一種基于用戶行為模型的身份認(rèn)證方法及系統(tǒng)。一種基于用戶行為模型的身份認(rèn)證方法,包括:
S1、根據(jù)服務(wù)器端發(fā)送的日志文件收集用戶行為信息,按照預(yù)設(shè)時序?qū)υ行袨樾畔⑦M(jìn)行更新并保存,其中用戶行為信息與用戶行為對應(yīng),所述日志文件在服務(wù)器中,作為認(rèn)證輸入數(shù)據(jù);
S2、根據(jù)預(yù)設(shè)行為模型,計算用戶行為信息,得出特定行為出現(xiàn)概率并累加,計算出用戶行為信息與預(yù)設(shè)行為模型的相似度信息,用戶行為信息與序列對應(yīng),對按照特點長度切分的子序列得出各個長度序列出現(xiàn)的概率,將概率累加;
S3、計算相似度信息,更新用戶行為信息和用戶行為判斷參數(shù),并結(jié)合更新的用戶行為信息訓(xùn)練用戶行為分類器,對用戶行為分類器進(jìn)行循環(huán)訓(xùn)練動態(tài)更新;
S4、根據(jù)用戶行為分類器判定用戶行為是否異常,判斷異常過程的輸出數(shù)據(jù)為對用戶身份的認(rèn)證結(jié)果。
步驟S4、根據(jù)用戶行為分類器判定用戶行為是否異常是在有用戶上線的情況下進(jìn)行的,步驟S1、步驟S2及步驟S3在無用戶上線的情況下進(jìn)行。
請參閱圖2,顯示為本發(fā)明的行為信息更新步驟示意圖,如圖2所示,步驟S1、根據(jù)服務(wù)器端發(fā)送的日志文件收集用戶行為信息,按照預(yù)設(shè)時序?qū)υ行袨樾畔⑦M(jìn)行更新并保存,其中用戶行為信息與用戶行為對應(yīng),包括:
S11、按照時間上由近及遠(yuǎn)的順序,以登陸事件和注銷事件作為序列劃分的依據(jù),在服務(wù)器日志中采集用戶行為序列,系統(tǒng)的分析模塊將按照時間上由近及遠(yuǎn)的順序,以登陸/注銷事件作為序列劃分的依據(jù),在服務(wù)器日志中采集用戶u的n條行為序列(n可以根據(jù)用戶來調(diào)整)。其中每一個數(shù)字和字符串(用戶u點擊過的URL)都是一一對應(yīng)關(guān)系;
S12、對比原有的行為序列列表,判斷用戶行為序列對應(yīng)的用戶行為是否發(fā)生過;
S13、若否,則將用戶行為序列編入行為序列列表,這里的行為是指用戶點擊網(wǎng)站鏈接的行為,然后將字符串形式的行為序列轉(zhuǎn)化成數(shù)字形式的行為序列;
S14、若是,則保留原有的行為序列列表;
S15、將行為序列列表存入本地。
請參閱圖3,顯示為本發(fā)明的行為序列統(tǒng)計模型示意圖,如圖3所示,步驟S2、根據(jù)預(yù)設(shè)行為模型,計算用戶行為信息,得出特定行為出現(xiàn)概率并累加,計算出用戶行為信息與預(yù)設(shè)行為模型的相似度信息,包括:
S21、預(yù)設(shè)行為模型包括一元模型、二元模型、三元模型和決策模型,統(tǒng)計該用戶的所有行為子序列在同長度的所有子序列中出現(xiàn)的概率及條件概率,其中元數(shù)為行為子序列長度,決策模型用于計算多元行為序列的條件概率,本系統(tǒng)包括四種行為模型:一元模型、二元模型、三元模型和決策模型,不同的行為模型相當(dāng)于對行為模式的不同描述方式;
S22、按照行為子序列長度對新用戶行為序列進(jìn)行切分,得到切分子序列,一元、二元和三元模型是指按照長度1(1=1,2,3)把收集到的行為序列切分成子序列(當(dāng)1=1時是只由一個行為構(gòu)成的子“序列”),當(dāng)用戶u的一條新序列s出現(xiàn)時,將s也按照長度1(1=1,2,3)進(jìn)行切分,作為各個行為模型的輸入數(shù)據(jù);
S23、將特定長度的切分子序列輸入特定元數(shù)的預(yù)設(shè)行為模型,統(tǒng)計該用戶的所有長度為1的行為子序列在同長度的所有子序列中出現(xiàn)的概率,最終得到各個子序列和其出現(xiàn)概率的一一對應(yīng)關(guān)系,即為一種行為模型;決策模型是一種馬爾可夫模型,它是一條二元子序列和概率的對應(yīng)關(guān)系。這里的概率是二元序列(a,b)在已知行為a出現(xiàn)的條件下行為b出現(xiàn)的概率;
S24、四個預(yù)設(shè)行為模型根據(jù)新用戶子序列的出現(xiàn)概率得出累加結(jié)果,四個行為模型將根據(jù)子序列的出現(xiàn)概率,對s的所有子序列的概率進(jìn)行累加,從而計算出s和相應(yīng)模型的相似程度;
S25、根據(jù)累加結(jié)果分別計算出新用戶行為序列與四個設(shè)定行為模型的相似度,統(tǒng)計模塊將計算出四個相似度。
請參閱圖4,顯示為本發(fā)明的分類判斷信息計算步驟示意圖,如圖4所示,步驟S3、計算相似度信息,更新用戶行為信息和用戶行為判斷參數(shù),并結(jié)合更新的用戶行為信息訓(xùn)練用戶行為分類器,包括:
S31、預(yù)設(shè)合法用戶的歷史行為序列和任一非法用戶的歷史行為序列作為數(shù)據(jù)集,將統(tǒng)計模塊計算出來的四個相似度進(jìn)行線性組合,得到的就是對新序列進(jìn)行判定的依據(jù),但是這個線性組合的參數(shù)是未知的,當(dāng)用戶u處于線下狀態(tài)時,機(jī)器學(xué)習(xí)模塊將會使用用戶u的歷史行為序列(正樣本)和另外一名和用戶u行為模式相差較大的用戶u^’的歷史行為序列(負(fù)樣本)作為數(shù)據(jù)集;
S32、采用邏輯回歸算法循環(huán)更新分類器信息,根據(jù)新的相似度得出線性組合參數(shù),機(jī)器學(xué)習(xí)模塊的任務(wù)就是根據(jù)收集到的數(shù)據(jù)來學(xué)習(xí)這個線性組合的參數(shù);
S33、發(fā)送分類器信息和線性組合參數(shù),采用邏輯回歸算法來訓(xùn)練分類器,得到線性組合的參數(shù),并進(jìn)一步優(yōu)化身份認(rèn)證的準(zhǔn)確率。隨著用戶u不斷地訪問網(wǎng)站,機(jī)器學(xué)習(xí)模塊將會根據(jù)更新的數(shù)據(jù)來重新訓(xùn)練分類器,得到新的線性組合參數(shù),使其能實時對用戶進(jìn)行監(jiān)控,從而避免因為行為模型過時而造成的錯誤判斷。
請參閱圖5,顯示為本發(fā)明的基于用戶行為模型的身份認(rèn)證系統(tǒng)異常判斷步驟示意圖,如圖5所示,步驟S4、根據(jù)用戶行為分類器判定用戶行為是否異常,包括:
S41、接收判斷信息和行為序列列表中最新行為序列,當(dāng)用戶u處于線上狀態(tài)時,判定模塊從日志文件中提取出用戶u的最新行為序列s_n,用其余三個模塊工作得到的分類器來判定s_n是否異常;
S42、根據(jù)判斷信息判斷最新行為序列對應(yīng)的用戶行為是否異常;
S43、若是,則發(fā)送報警判定結(jié)果,一旦出現(xiàn)異常,則服務(wù)器報警,以便阻止可疑用戶繼續(xù)從服務(wù)器請求數(shù)據(jù);
S44、若否,則發(fā)送正常判定結(jié)果。
請參閱圖6,顯示為本發(fā)明的一種基于用戶行為模型的身份認(rèn)證系統(tǒng)示意圖,如圖6所示,一種基于用戶行為模型的身份認(rèn)證系統(tǒng)1,包括:分析模塊11、統(tǒng)計模塊12、分類器更新模塊13和判斷模塊14;分析模塊11,用于根據(jù)服務(wù)器端收集的用戶行為信息,按照預(yù)設(shè)時序?qū)υ行袨樾畔⑦M(jìn)行更新并保存,其中用戶行為信息與用戶行為對應(yīng);統(tǒng)計模塊12,用于根據(jù)預(yù)設(shè)行為模型,計算用戶行為信息,得出特定行為出現(xiàn)概率并累加,計算出用戶行為信息與預(yù)設(shè)行為模型的相似度信息,統(tǒng)計模塊12與分析模塊11連接;分類器更新模塊13,計算相似度信息,更新用戶行為信息和用戶行為判斷參數(shù),并結(jié)合更新的用戶行為信息進(jìn)行訓(xùn)練用戶行為分類器,分類器更新模塊13與統(tǒng)計模塊12連接;判斷模塊14,用于根據(jù)用戶行為分類器判定用戶行為是否異常,判斷模塊14與分類器更新模塊13連接。
判斷模塊在有用戶上線的情況下工作,分析模塊、行為數(shù)據(jù)統(tǒng)計模塊和分類器更新模塊在無用戶上線的情況下工作。
請參閱圖7,顯示為本發(fā)明的分析模塊示意圖,如圖7所示,分析模塊11包括:行為采集模塊111、識別模塊112、列表更新模塊113、原序模塊114和列表存儲模塊115;行為采集模塊111,用于按照時間上由近及遠(yuǎn)的順序,以登陸事件和注銷事件作為序列劃分的依據(jù),在服務(wù)器日志中采集用戶行為序列;識別模塊112,用于對比原有的行為序列列表,判斷用戶行為序列對應(yīng)的用戶行為是否發(fā)生過;列表更新模塊113,用于在用戶行為序列對應(yīng)的用戶行為未發(fā)生過時,將用戶行為序列編入行為序列列表,列表更新模塊113與識別模塊112連接;原序模塊114,用于在用戶行為序列對應(yīng)的用戶行為發(fā)生過時,保留原有的行為序列列表,原序模塊114與識別模塊112連接;列表存儲模塊115,將行為序列列表存入本地,列表存儲模塊115與列表更新模塊113及原序模塊114連接,用正則表達(dá)式限制IP地址,比較已經(jīng)收集到的行為序列數(shù)量m和系統(tǒng)設(shè)定的目標(biāo)數(shù)量n,判斷序列數(shù)量是否小于目標(biāo)數(shù)量,若是,則在未分析的日志條目中,從后往前分析一行,若否,將行為序列列表存入本地;當(dāng)未發(fā)現(xiàn)Login事件時繼續(xù)遍歷日志,當(dāng)發(fā)現(xiàn)Login事件時,新建一個空序列,從前往后分析下一行,如果發(fā)現(xiàn)Logout事件時,將新事件加入行為序列列表中,若未發(fā)現(xiàn)Logout事件,則對比已經(jīng)出現(xiàn)過的行為序列列表,若此行為從未發(fā)生過,則將此行為添加到行為序列列表并編號,其中編號置于該序列末尾。
請參閱圖8,顯示為本發(fā)明的統(tǒng)計模塊示意圖,如圖8所示,統(tǒng)計模塊12,包括:預(yù)設(shè)模型模塊121、序列切分模塊122、序列輸入模塊123、概率累加模塊124和相似度計算模塊125;預(yù)設(shè)模型模塊121,用于預(yù)設(shè)包括一元模型、二元模型、三元模型和決策模型,統(tǒng)計用戶的所有行為子序列在同長度的所有子序列中出現(xiàn)的概率及條件概率,其中元數(shù)為行為子序列長度,決策模型用于計算多元行為序列的條件概率;序列切分模塊122,用于按照行為子序列長度對新用戶行為序列進(jìn)行切分,得到切分子序列;序列輸入模塊123,用于將特定長度的切分子序列輸入特定元數(shù)的預(yù)設(shè)行為模型,序列輸入模塊123與序列切分模塊122連接;概率累加模塊124,用于根據(jù)新用戶子序列的出現(xiàn)概率得出累加結(jié)果,概率累加模塊124與序列輸入模塊123連接;相似度計算模塊125,用于根據(jù)累加結(jié)果分別計算出新用戶行為序列與四個設(shè)定行為模型的相似度,相似度計算模塊125與概率累加模塊124連接,系統(tǒng)的統(tǒng)計模塊將采用統(tǒng)計方法從收集到的n條行為序列中挖掘出用戶u的行為模式。。一元、二元和三元模型是指按照長度1(1=1,2,3)把收集到的行為序列切分成子序列(當(dāng)1=1時是只由一個行為構(gòu)成的子“序列”)。統(tǒng)計該用戶的所有長度為1的行為子序列在同長度的所有子序列中出現(xiàn)的概率,最終得到各個子序列和其出現(xiàn)概率的一一對應(yīng)關(guān)系,即為一種行為模型;決策模型是一種馬爾可夫模型,它是一條二元子序列和概率的對應(yīng)關(guān)系。這里的概率是二元序列(a,b)在已知行為a出現(xiàn)的條件下行為b出現(xiàn)的概率。行為模型的構(gòu)建流程如圖4所示。當(dāng)用戶u的一條新序列s出現(xiàn)時,將s也按照長度l(1=1,2,3)進(jìn)行切分,作為各個行為模型的輸入數(shù)據(jù)。
請參閱圖9,顯示為本發(fā)明的分類器更新模塊示意圖,如圖9所示,分類器更新模塊13,包括:離線設(shè)定模塊131、判斷信息更新模塊132和判斷信息發(fā)送模塊133;離線設(shè)定模塊131,用于預(yù)設(shè)合法用戶的歷史行為序列和任一非法用戶的歷史行為序列作為數(shù)據(jù)集;判斷信息更新模塊132,用于根據(jù)邏輯回歸算法循環(huán)更新分類器信息,根據(jù)新的相似度得出線性組合參數(shù),判斷信息更新模塊132與離線設(shè)定模塊131連接;判斷信息發(fā)送模塊133,發(fā)送分類器信息和線性組合參數(shù),判斷信息發(fā)送模塊133與判斷信息更新模塊連接132,將統(tǒng)計模塊計算出來的四個相似度進(jìn)行線性組合,得到的就是對新序列進(jìn)行判定的依據(jù),但是這個線性組合的參數(shù)是未知的。機(jī)器學(xué)習(xí)模塊的任務(wù)就是根據(jù)收集到的數(shù)據(jù)來學(xué)習(xí)這個線性組合的參數(shù)。機(jī)器學(xué)習(xí)模塊的工作原理如圖5所示。當(dāng)用戶u處于線下狀態(tài)時,機(jī)器學(xué)習(xí)模塊將會使用用戶u的歷史行為序列(正樣本)和另外一名和用戶u行為模式相差較大的用戶u^′的歷史行為序列(負(fù)樣本)作為數(shù)據(jù)集。采用邏輯回歸算法來訓(xùn)練分類器,得到線性組合的參數(shù),并進(jìn)一步優(yōu)化身份認(rèn)證的準(zhǔn)確率。隨著用戶u不斷地訪問網(wǎng)站,機(jī)器學(xué)習(xí)模塊將會根據(jù)更新的數(shù)據(jù)來重新訓(xùn)練分類器,得到新的線性組合參數(shù),使其能實時對用戶進(jìn)行監(jiān)控,從而避免因為行為模型過時而造成的錯誤判斷。
請參閱圖10,顯示為本發(fā)明的判斷模塊示意圖,如圖10所示,判斷模塊14包括:判斷信息接收模塊141、異常判斷模塊142、警報結(jié)果發(fā)送模塊143和正常結(jié)果發(fā)送模塊144;判斷信息接收模塊141,用于接收判斷信息和行為序列列表中最新行為序列;異常判斷模塊142,用于根據(jù)判斷信息判斷最新行為序列對應(yīng)的用戶行為是否異常,異常判斷模塊142與判斷信息接收模塊141連接;警報結(jié)果發(fā)送模塊143,用于在最新行為序列對應(yīng)的用戶行為異常時,發(fā)送報警判定結(jié)果,警報結(jié)果發(fā)送模塊143與異常判斷模塊142連接;正常結(jié)果發(fā)送模塊144,用于在最新行為序列對應(yīng)的用戶行為非異常時,發(fā)送正常判定結(jié)果,正常結(jié)果發(fā)送模塊144與異常判斷模塊143連接。根據(jù)將四個相似度線性組合,得到的中和相似度,判斷身份認(rèn)證是否出現(xiàn)異常。當(dāng)用戶u處于線上狀態(tài)時,此時系統(tǒng)實時監(jiān)控用戶的新行為序列,并進(jìn)行身份認(rèn)證,此時判定模塊工作,其余三個模塊暫時停止工作,當(dāng)用戶u處于線上狀態(tài)時,判定模塊從日志文件中提取出用戶u的最新行為序列s_n,用其余三個模塊工作得到的分類器來判定s_n是否異常。
請參閱圖11,顯示為本發(fā)明的一種基于用戶行為模型服務(wù)器報警方法,如圖11所示,一種基于用戶行為模型服務(wù)器端報警方法,包括:
S11’、收集用戶最近的行為序列,生成日志文件,日志文件在服務(wù)器中管理,對用戶的URL等行為信息進(jìn)行記錄和更新;
S12’、發(fā)送日志文件,將日志文件作為輸入數(shù)據(jù)輸入基于用戶行為模型的身份認(rèn)證方法及系統(tǒng);
S13’、接收判斷結(jié)果,基于用戶行為模型的身份認(rèn)證系統(tǒng)安裝于服務(wù)器中,將身份認(rèn)證結(jié)果作為輸出,輸出至服務(wù)器;
S14’、判斷是否收到警報結(jié)果;
S15’、若是,則對異常狀態(tài)報警,判斷用戶身份非法,阻止可疑用戶繼續(xù)從服務(wù)器請求數(shù)據(jù);
S16’、若否,則判斷用戶身份合法,允許合法用戶繼續(xù)處于登錄狀態(tài)。
請參閱圖12,顯示為一種服務(wù)器端模塊示意圖,如圖12所示,一種服務(wù)器端2包括:日志生成模塊21、行為序列輸入模塊22、判斷結(jié)果接收模塊23、報警判定模塊24、服務(wù)器報警模塊25和合法身份識別模塊26;日志生成模塊21,用于收集用戶最近的行為序列,生成日志文件;行為序列輸入模塊22,用于發(fā)送日志文件,行為序列輸入模塊22與日志生成模塊連接21;判斷結(jié)果接收模塊23,用于接收判斷結(jié)果;報警判定模塊24,判斷是否收到警報結(jié)果;服務(wù)器報警模塊25,用于在收到報警結(jié)果時,對異常狀態(tài)報警,判斷用戶身份非法,服務(wù)器報警模塊25與報警判定模塊24連接;合法身份識別模塊26,用于在收到正常結(jié)果時,判斷用戶身份合法,合法身份識別模塊26與報警判定模塊連接24,一旦出現(xiàn)異常,則服務(wù)器報警,以便阻止可疑用戶繼續(xù)從服務(wù)器請求數(shù)據(jù)。
綜上所述,本發(fā)明提供的一種基于用戶行為模型的身份認(rèn)證方法及系統(tǒng)。本發(fā)明具有以下有益效果:本發(fā)明利用用戶的特征信息作為用戶的行為模式生成依據(jù),利用分類器進(jìn)行用戶合法性的認(rèn)證,可有效地避免傳統(tǒng)技術(shù)中身份認(rèn)證模式認(rèn)證條件單一且需額外的硬件設(shè)備進(jìn)行采集的技術(shù)局限性。本發(fā)明在用戶上線使用網(wǎng)絡(luò)平臺的過程中即可對對用戶行為特征的識別分類判斷該用戶是否為合法用戶,消除了傳統(tǒng)技術(shù)中“用戶名-密碼”方法的漏洞,可以在有用戶在線時進(jìn)行對用戶身份進(jìn)行認(rèn)證,同時減少了傳統(tǒng)技術(shù)中系統(tǒng)使用生物信息方法的附加的硬件使得使用成本。本發(fā)明提供的一種基于用戶行為模型的身份認(rèn)證方法及系統(tǒng)的身份認(rèn)證技術(shù)針對用戶身份的可信性問題,完全基于用戶行為特征模型,避免了傳統(tǒng)的基于密碼及生物信息識別身份認(rèn)證系統(tǒng)及方法在識別用戶身份時身份非法判定條件較為單一,認(rèn)證過程的準(zhǔn)確性較低的缺點,考慮用戶行為模式之間的差距。在遭到非法程序或已盜取合法身份信息的非法用戶的入侵時,能夠采取有效的身份認(rèn)證安全防護(hù)措施以阻止可疑用戶。綜上,本發(fā)明解決了現(xiàn)有技術(shù)中的身份認(rèn)證方法及系統(tǒng)存在認(rèn)證方式簡單、對硬件依賴性較大、認(rèn)證過程精確度較低及系統(tǒng)安全性低的技術(shù)問題,具有較好的自適應(yīng)性、可拓展性和安全性,具有很高的商業(yè)價值和實用性。