智能安全鍵盤軟硬件完整方案
一、系統(tǒng)方案
本文引用地址:http://cafeforensic.com/article/265780.htm隨著計算機及其網(wǎng)絡(luò)應(yīng)用的日益普及,尤其是互聯(lián)網(wǎng)應(yīng)用的迅猛發(fā)展,計算機及其網(wǎng)絡(luò)系統(tǒng)的安全管理問題日顯突出,各種非法的計算機及網(wǎng)絡(luò)入侵事件頻頻發(fā)生。據(jù)統(tǒng)計,網(wǎng)絡(luò)入侵的70%~80%來自于網(wǎng)絡(luò)內(nèi)部,因此加強對計算機使用者身份的監(jiān)督和管理,防止合法用戶的越權(quán)和惡意訪問以及非法用戶的非法訪問都顯得十分重要。
那么,我們怎樣加強對計算機使用者身份的監(jiān)督和管理呢?
首先,傳統(tǒng)的密碼技術(shù)是最常用的用戶訪問控制手段,但密碼又比較容易遺失或被破解。
于是,人們提出了多個基于各種生物特征的用戶身份認證方法,是的身份認證智能化。這些生物特征包括:指紋、虹膜、面部、聲音、掌形(紋)等。但基于這些生物特征的用戶身份認證方法均需要額外價格不菲的硬件設(shè)備(其價格從數(shù)百美元到數(shù)萬美元不等),這也就使得基于這些生物特征的用戶身份認證方法無法得到廣泛的應(yīng)用。
為利用現(xiàn)有普通電腦硬件,完成基于生物特征的用戶身份認證,人們提出了基于用戶擊鍵特征來進行用戶身份認證的方法,該方法利用用戶輸入口令時的擊鍵壓力、擊鍵節(jié)奏等所構(gòu)成的用戶生物特征,來進行用戶身份的認證工作。用戶由于不同的生理特點和習(xí)慣,在使用鍵盤時存在擊鍵力度、鍵盤熟練程度等明顯差異(類似于筆跡、指紋)。
受智能密碼的啟發(fā),即不同用戶的鍵盤使用習(xí)慣、特征存在差異,我們提出一種將用戶鍵盤使用特征和神經(jīng)網(wǎng)絡(luò)技術(shù)相結(jié)合的用戶身份監(jiān)督、管理方法。本系統(tǒng)就是利用這種差異提取特征量, 建立模型, 實現(xiàn)對用戶身份的辨別和監(jiān)控。
目前,國內(nèi)外有關(guān)的基于用戶擊鍵生物特征進行身份認證研究的公開報道并不多:Dunn認為擊鍵時延符合正態(tài)分布并使用了距離分類法;Monrose 和Rubin提出了一種基于K近鄰聚類方法的算法;Kacholia和Pandit提出了一種基于啟發(fā)式聚類的算法,但并沒有給出聚類算法的細節(jié);Ru 和Eloff及Tapiador 和Sigüenza嘗試了模糊數(shù)學(xué)的方法;朱明等人也提出了基于示例學(xué)習(xí)的方法對用戶身份的真?zhèn)芜M行判斷,曲維光和宋如順等人則利用對神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練來區(qū)分不同的用戶,Monrose 等人將這一技術(shù)用于強化用戶身份驗證。但是,他們的研究都是基于軟件層面的,而且采樣數(shù)據(jù)也很有限。
我們提出的智能安全鍵盤將壓力傳感器加入傳統(tǒng)鍵盤中,旨在利用已有的用戶名和密碼,通過用戶特定的擊鍵特征,即按鍵時間長短、時間間隔和壓力三個參數(shù),來判定某一擊鍵序列是否為某特定用戶的行為,進而對用戶身份的真?zhèn)芜M行判斷識別,以此來強化身份驗證的效果,防止密碼被他人非法使用,加強對計算機使用者身份的監(jiān)督和管理,使鍵盤操作更安全,從而達到信息安全的目的。
二、實現(xiàn)方案
(一)理論基礎(chǔ)
根據(jù)一個簡化的統(tǒng)計,人腦由百億條神經(jīng)組成,每條神經(jīng)平均連結(jié)到其它幾千條神經(jīng)。通過這種連結(jié)方式,神經(jīng)可以收發(fā)不同數(shù)量的能量。神經(jīng)的一個非常重要的功能是,它們對能量的接受并不是立即作出響應(yīng),而是將它們累加起來,當(dāng)這個累加的總和達到某個臨界閾值時,將自己的那部分能量發(fā)送給其它的神經(jīng)。大腦通過調(diào)節(jié)這些連結(jié)的數(shù)目和強度進行學(xué)習(xí)。盡管這是個生物行為的簡化描述。但同樣可以充分有力地被看作是神經(jīng)網(wǎng)絡(luò)的模型。
閾值邏輯單元(Threshold Logic Unit,TLU)
理解神經(jīng)網(wǎng)絡(luò)的第一步是從對抽象生物神經(jīng)開始,并把重點放在閾值邏輯單元(TLU)這一特征上。一個TLU是一個對象,它可以輸入一組加權(quán)系數(shù)的量,對它們進行求和,如果這個和達到或者超過了某個閾值,則輸出一個量。用符號標(biāo)注這些功能,首先,輸入值以及它們的權(quán)系數(shù)分別記為X1,X2,...,Xn和W1,W2,...,Wn。接著,求和計算出的Xi*Wi,產(chǎn)生了激發(fā)層a,換一種方法表示:
a = (X1 * W1)+(X2 * W2)+...+(Xi * Wi)+...+ (Xn * Wn)
閾值稱為theta。最后,輸出結(jié)果y。當(dāng)a>=theta時y=1,反之y=0。輸出可以是連續(xù)的,因為它也可以由一個squash函數(shù)s(或 sigma)判定,該函數(shù)的自變量是a,函數(shù)值在0和1之間,y=s(a)。
閾值邏輯單元,帶有 sigma 函數(shù)(頂部)和 cutoff 函數(shù)(底部)
TLU 會分類,假設(shè)一個TLU有兩個輸入值,它們的權(quán)系數(shù)等于1,theta值等于1.5。當(dāng)這個 TLU 輸入<0,0>、<0,1>、<1,0>和<1,1>時,它的輸出分別為0、0、0、1。TLU將這些輸入分為兩組:0組和1組。
TLU 的學(xué)習(xí)原理
神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)機制是模仿大腦調(diào)節(jié)神經(jīng)連結(jié)的原理。TLU通過改變它的權(quán)系數(shù)和閾值來學(xué)習(xí)。當(dāng)SUM(Xi*Wi)>=theta時TLU在臨界點時輸出的是1而不是0,臨界點是出現(xiàn)在SUM(Xi*Wi)+(-1*theta)>=0的時候。所以,我們可以把-1看成一個常量輸入,它的權(quán)系數(shù)theta在學(xué)習(xí)的過程中進行調(diào)整。這樣,當(dāng)SUM(Xi*Wi)+(-1*theta)>=0時,y=1,反之y=0。
在學(xué)習(xí)過程中,神經(jīng)網(wǎng)絡(luò)輸入一系列需要分類的術(shù)語示例和它們的正確分類或者目標(biāo)。
這樣的輸入可以看成一個向量:,這里t是一個目標(biāo)或者正確分類。神經(jīng)網(wǎng)絡(luò)用這些來調(diào)整權(quán)系數(shù),其目的使學(xué)習(xí)中的目標(biāo)與其分類相匹配。更確切地說,這是有指導(dǎo)的學(xué)習(xí),與之相反的是無指導(dǎo)的學(xué)習(xí)。前者是基于帶目標(biāo)的示例,而后者卻只是建立在統(tǒng)計分析的基礎(chǔ)上。權(quán)系數(shù)的調(diào)整有一個學(xué)習(xí)規(guī)則,一個理想化的學(xué)習(xí)算法如下所示:
fully_trained = FALSE
DO UNTIL (fully_trained):
fully_trained = TRUE
FOR EACH training_vector = ::
# Weights compared to theta
a = (X1 * W1)+(X2 * W2)+...+(Xn * Wn) - theta
y = sigma(a)
IF y != target:
fully_trained = FALSE
FOR EACH Wi:
MODIFY_WEIGHT(Wi) # According to the training rule
IF (fully_trained):
BREAK
學(xué)習(xí)規(guī)則有很多,通過對收集的大量資料的研究分析,我們發(fā)現(xiàn),有一條似乎合理的規(guī)則是基于這樣一種思想,即權(quán)系數(shù)和閾值的調(diào)整應(yīng)該由分式(t-y)確定。這個規(guī)則通過引入學(xué)習(xí)率alpha(0
DIY機械鍵盤相關(guān)社區(qū):機械鍵盤DIY
評論