滑行輸入圖形密碼的認(rèn)證方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明提出一種滑行輸入圖形認(rèn)證方法及系統(tǒng),在用戶正確輸入圖形密碼之后,還需要認(rèn)證用戶輸入圖形密碼的行為特征,只有行為特征符合才通過(guò)用戶認(rèn)證,否則即使用戶畫出了正確的圖形密碼,也無(wú)法通過(guò)認(rèn)證。本發(fā)明從圖形密碼的劃線序列中提取用戶行為特征,并進(jìn)行歸一化距離比對(duì),識(shí)別輸入圖形密碼的行為是否為用戶本人輸入,從而驗(yàn)證用戶的身份。本發(fā)明還包括自學(xué)習(xí)模塊,對(duì)用戶每次認(rèn)證成功的樣本進(jìn)行學(xué)習(xí)和特征數(shù)據(jù)更新,從而用戶使用次數(shù)越多,越能保證認(rèn)證成功率。本發(fā)明相比傳統(tǒng)僅基于輸入密碼圖形的認(rèn)證方法,有更高的安全性。
【專利說(shuō)明】
滑行輸入圖形密碼的認(rèn)證方法及系統(tǒng)
技術(shù)領(lǐng)域
[0001] 本發(fā)明涉及密碼技術(shù),特別涉及滑行輸入圖形密碼的認(rèn)證方法及系統(tǒng)。
【背景技術(shù)】
[0002] 在移動(dòng)互聯(lián)網(wǎng)時(shí)代的手機(jī)和便攜式平板電腦上,人們已經(jīng)廣泛使用九宮格圖形密 碼,通過(guò)對(duì)屏幕上的點(diǎn)進(jìn)行劃線連接實(shí)現(xiàn)圖形密碼設(shè)置或輸入。圖形密碼優(yōu)點(diǎn)是易于用戶 記憶且易于輸入,但是圖形密碼的缺點(diǎn)也比較明顯,其容易被他人偷看或采用試湊的方法 暴力破解,因此需要在現(xiàn)有的密碼輸入與驗(yàn)證方式上進(jìn)一步提高其安全性。
[0003] 基于用戶密碼輸入特征的身份認(rèn)證方法具有較高的隱蔽性,如專利CN95115394.3 中提出一種利用用戶輸入密碼時(shí)敲擊鍵盤的行為特征比對(duì)來(lái)加強(qiáng)密碼認(rèn)證的安全性。但是 目前在廣泛應(yīng)用的圖形密碼上還沒(méi)有有效的融合用戶輸入特征。在專利CN201410295075.7 提出一種在圖像上點(diǎn)擊行為進(jìn)行用戶驗(yàn)證方法,但該方法是一種用于區(qū)別人與機(jī)器行為的 驗(yàn)證碼,不能進(jìn)行單個(gè)人用戶的身份驗(yàn)證。
【發(fā)明內(nèi)容】
[0004] 為此,本發(fā)明提出一種滑行輸入圖形密碼的認(rèn)證方法及系統(tǒng),在用戶正確輸入圖 形密碼之后,還需要認(rèn)證用戶畫出圖形密碼的行為特征,只有行為特征符合才通過(guò)用戶認(rèn) 證,否則即使用戶畫出了正確的圖形密碼,也無(wú)法通過(guò)認(rèn)證,以進(jìn)一步提高安全性,具體方 案如下:
[0005] 滑行輸入圖形密碼的認(rèn)證方法,包括以下步驟:
[0006] S1、構(gòu)建滑行輸入行為的標(biāo)準(zhǔn)特征模板;
[0007] S2、認(rèn)證用戶輸入的圖形密碼,若圖形密碼認(rèn)證通過(guò)則進(jìn)入S3;
[0008] S3、將用戶在輸入圖形密碼過(guò)程中的滑行輸入行為特征與標(biāo)準(zhǔn)特征模板進(jìn)行對(duì) 比,若對(duì)比后符合認(rèn)證需求,則通過(guò)認(rèn)證,若不符合則認(rèn)證不通過(guò)。
[0009] 進(jìn)一步的,還包括一自學(xué)習(xí)的步驟,在用戶輸入的圖形密碼通過(guò)認(rèn)證后,將用戶當(dāng) 前通過(guò)認(rèn)證的該次滑行輸入過(guò)程的輸入行為數(shù)據(jù)與標(biāo)準(zhǔn)特征模板的數(shù)據(jù)更新合并,生成新 的標(biāo)準(zhǔn)特征模板。
[0010]其中,所述的用戶輸入密碼的滑行輸入行為特征包括而不限于以下的一個(gè)或多 個(gè):滑行的平均速度、滑行的平方速度平均值、滑行的最大速度、滑行的最小速度、樣本學(xué)習(xí) 個(gè)數(shù)、樣本滑行平均速度的方差。
[0011] 滑行輸入圖形密碼的認(rèn)證系統(tǒng),其特征在于,包括:
[0012] 特征模板構(gòu)建模塊,用于構(gòu)建滑行輸入行為的標(biāo)準(zhǔn)特征模板;
[0013] 圖形認(rèn)證模塊,用于認(rèn)證用戶輸入的圖形密碼,若圖形密碼認(rèn)證通過(guò)則進(jìn)入特征 認(rèn)證模塊;
[0014] 特征認(rèn)證模塊,用于將用戶在輸入圖形密碼過(guò)程中的滑行輸入行為特征與標(biāo)準(zhǔn)特 征模板進(jìn)行對(duì)比,若對(duì)比后符合認(rèn)證需求,則通過(guò)認(rèn)證,若不符合則認(rèn)證不通過(guò)。
[0015] 進(jìn)一步的,還包括一自學(xué)習(xí)模塊,用于在用戶輸入的圖形密碼通過(guò)認(rèn)證后,將用戶 當(dāng)前通過(guò)認(rèn)證的該次滑行輸入過(guò)程的輸入行為數(shù)據(jù)與標(biāo)準(zhǔn)特征模板的數(shù)據(jù)更新合并,生成 新的標(biāo)準(zhǔn)特征模板。
[0016] 其中,所述的用戶輸入密碼的滑行輸入行為特征包括而不限于以下的一個(gè)或多 個(gè):滑行的平均速度、滑行的平方速度平均值、滑行的最大速度、滑行的最小速度、樣本學(xué)習(xí) 個(gè)數(shù)、樣本滑行平均速度的方差。
[0017] 與現(xiàn)有技術(shù)相比,本發(fā)明提出的方法及系統(tǒng),在用戶正確畫出圖形密碼之后,還需 要認(rèn)證用戶畫出圖形密碼的行為特征,只有行為特征符合才通過(guò)用戶認(rèn)證,否則即使用戶 畫出了正確的圖形密碼,也無(wú)法通過(guò)認(rèn)證。本發(fā)明還由一個(gè)自學(xué)習(xí)模塊構(gòu)成,對(duì)用戶每次認(rèn) 證成功的樣本進(jìn)行學(xué)習(xí)和特征數(shù)據(jù)更新,從而用戶使用次數(shù)越多,越能保證認(rèn)證成功率。本 發(fā)明大大提高了移動(dòng)設(shè)備上利用圖形密碼進(jìn)行用戶合法身份認(rèn)證的安全性。
【附圖說(shuō)明】
[0018] 圖1為本發(fā)明方法的主要流程圖;
[0019] 圖2A為本發(fā)明一實(shí)施例滑行行為45度拐彎示意圖;
[0020]圖2B為本發(fā)明一實(shí)施例滑行行為90度拐彎示意圖;
[0021]圖2C為本發(fā)明一實(shí)施例滑行行為26.565度拐彎示意圖。
【具體實(shí)施方式】
[0022]為進(jìn)一步說(shuō)明各實(shí)施例,本發(fā)明提供有附圖。這些附圖為本發(fā)明揭露內(nèi)容的一部 分,其主要用以說(shuō)明實(shí)施例,并可配合說(shuō)明書的相關(guān)描述來(lái)解釋實(shí)施例的運(yùn)作原理。配合參 考這些內(nèi)容,本領(lǐng)域普通技術(shù)人員應(yīng)能理解其他可能的實(shí)施方式以及本發(fā)明的優(yōu)點(diǎn)?,F(xiàn)結(jié) 合附圖和【具體實(shí)施方式】對(duì)本發(fā)明進(jìn)一步說(shuō)明。
[0023]本發(fā)明的滑行輸入圖形密碼是指對(duì)具有接受滑行輸入行為的電子裝置(如觸屏手 機(jī)、平板電腦等)在其界面上呈現(xiàn)出待驗(yàn)證的圖形(如九宮格,但不限于此),用戶需滑行至 圖形上的若干設(shè)定位置,以形成圖形密碼的輸入行為。下面以九宮格圖形密碼解鎖進(jìn)行說(shuō) 明,其實(shí)施例如下:參閱圖1,示出該方法的主要步驟:
[0024] 一、用戶密碼輸入行為特征模板構(gòu)建
[0025] 步驟一:為模板 Vector 建立一個(gè) 11 維空緩存{K1,K2,K3,K4,K5,K6,K7,K8,K9,K10, Κ11}。其中Κ1,表代0度方向移動(dòng)速度(即水平從左到右劃線),Κ2代表45度移動(dòng)方向速度(即 從左下到右上劃線),Κ3代表90度移動(dòng)方向速度(即從下到上劃線),Κ4代表135度移動(dòng)方向 速度(即從右下到左上劃線),Κ5代表180度移動(dòng)方向速度(即從右到左劃線),Κ6代表225度 移動(dòng)方向速度(即從右上到左下劃線),Κ7代表270度移動(dòng)方向速度(上到下劃線),Κ8代表 315度移動(dòng)方向速度(即從左上到右下劃線)。如圖2Α所示,Κ9代表45度拐彎速度,如圖2Β所 示,Κ10代表90度拐彎速度,如圖2C所示,Κ11代表26.565度拐彎速度。在緩存下的所有元素 值置為〇;用戶開始輸入三次圖形密碼。除記錄圖形密碼形狀外,還對(duì)輸入行為構(gòu)建特征向 量。
[0026] 步驟二:用戶開始進(jìn)行第η次(η<3)圖形密碼輸入:
[0027] 將圖形密碼的點(diǎn)位記為PN(i,j)。其中Ν為順序標(biāo)識(shí),代表圖形密碼劃過(guò)的第Ν個(gè) 點(diǎn),i,j為點(diǎn)位坐標(biāo),i代表行坐標(biāo),j代表列坐標(biāo)。對(duì)于九宮格密碼,i = l,2,3;j = l,2,3;
[0028] 記錄下劃出的圖形密碼的坐標(biāo)序列{Pi,P2,……,PN}。
[0029] 記錄下對(duì)應(yīng)的劃到每個(gè)點(diǎn)時(shí)候的時(shí)間信息{T^Ts,……,TN}。其中T為毫秒,代表從 1970年1月1號(hào)起到當(dāng)前的毫秒數(shù)。
[0030] 計(jì)算一階速度,即Pk到Pk+1的速虔
形 c 成一階速度序列{Vi,v2,……,ν^}。
[0031] 計(jì)算二階速度,即Pk到Pk+2的速度 形 成二階速度序列{Wi,W2,……,WN-2}。
[0032] 其中Mh代表行坐標(biāo)間隔為1時(shí)對(duì)應(yīng)的像素間隔,Mv代表列坐標(biāo)間隔為1時(shí)對(duì)應(yīng)的像 素間隔。
[0033]步驟三、特征模塊元素更新:
[0034] 對(duì)一階速度序列進(jìn)行循環(huán)判斷,取出Vk,判斷Vk對(duì)應(yīng)的起終點(diǎn)Pk,Pk+Ι的方向,將 Vk歸到對(duì)應(yīng)的K1到K8緩存中處理。在對(duì)應(yīng)緩存中,對(duì)六個(gè)元素進(jìn)行更新:
[0035] l、Va=(Va*C+Vk)/(C+l);
[0036] 2、Vs = (Vs*C+Vk*Vk)/(C+l);
[0037] 3、D = Vs_Va*Va;
[0038] 4、如果Vmax = 0則Vmax = Vk,否則:if (Vk>Vmax) Vmax = Vk; e 1 se不更新Vmax。
[0039] 5、如果¥111;[11 = 0則¥111;[11 = \%,否則:丨;1^(\%〈¥111;[11)¥111;[11 = \%;6186不更新¥111;[11。
[0040] 6、C = C+1;
[0041] 判斷是否速度序列中所有元素均已歸到對(duì)應(yīng)的K1到K8緩存中并處理,如果是則處 理二階序列。
[0042] 對(duì)二階速度序列進(jìn)行循環(huán)判斷,取出速度Wk,判斷對(duì)應(yīng)的三個(gè)點(diǎn)Pk,Pk+l,Pk+2夾 角,將Vn與Vn+Ι的均值歸到對(duì)應(yīng)的K9到ΚΙ 1緩存中處理,更新緩存中的六個(gè)元素:
[0043] l、Va=(Va*C+Wk)/(C+l);
[0044] 2、Vs = (Vs*C+Wk*Wk)/(C+l);
[0045] 3、D = Vs_Va*Va;
[0046] 4、如果Vmax = 0則Vmax=Wk,否則:if (Wk>Vmax) Vmax=Wk; e 1 se不更新Vmax。
[0047] 5、如果¥111;[11 = 0則¥111;[11=¥1<:,否則:丨;1^(¥1<:〈¥111;[11)¥111;[11=¥1<:;6186不更新¥111;[11。
[0048] 6、C = C+1;
[0049] 判斷是否速度序列中所有元素均已歸到對(duì)應(yīng)的K9到Kll緩存中并處理,如果是則 結(jié)束該次處理。
[0050] 步驟四:返回步驟二,直到用戶輸入完三次圖形密碼,結(jié)束操作。構(gòu)建完成Vector ={K1,K2,K3,K4,K5,K6,K7,K8,K9,K10,K11}。
[0051] 在構(gòu)建完成用戶行為特征模板后,進(jìn)行圖形密碼的認(rèn)證,若圖形密碼認(rèn)證不通過(guò) 則直接認(rèn)證失敗,若認(rèn)證成功進(jìn)入用戶行為特征對(duì)比的步驟。
[0052] 二:用戶行為特征比對(duì)認(rèn)證。
[0053] 步驟一:用戶輸入一次密碼,按前述"用戶密碼輸入行為特征模板構(gòu)建"步驟一, 二,三的處理步驟,生成當(dāng)前密碼輸入特征Vector' = {K'l,K'2,K'3,K'4,K'5,K'6,K'7,K' 8,K,9,K,10,K,11}〇
[0054] 步驟二:將用戶模板Vector與當(dāng)前輸入特征Vector'中的每一維對(duì)應(yīng)特征進(jìn)行對(duì) 比比較認(rèn)證:
[0055]假設(shè)Ki特征模板內(nèi)的6個(gè)元素表示為{Ki I Va,Vs,Vmax,Vmin,C,D}。對(duì)應(yīng)的當(dāng)前輸 入特征K' i內(nèi)的6個(gè)元素表示為{K' i I Va',Vs',Vmax',Vmin',C',D'}
[0056] 如果C小于10。則VminSVa' <Vmax則該維特征認(rèn)證通過(guò),反之認(rèn)證不通過(guò)。如果C 大于10,則Va-3D<Va'<Va+3D則該維特征認(rèn)證通過(guò),反之認(rèn)證不通過(guò)。
[0057]在總共11維特征中,如果9個(gè)以上(含9個(gè))通過(guò),則該次用戶的總體行為特征認(rèn)證 通過(guò),反之認(rèn)證不通過(guò)。
[0058]如果總體認(rèn)證通過(guò),將該次用戶行為特征向量Vector'納入進(jìn)自學(xué)習(xí)階段。
[0059]三:自學(xué)習(xí)階段
[0000]將用戶當(dāng)前通過(guò)認(rèn)證的輸入行為數(shù)據(jù)Vector'與特征模板數(shù)據(jù)Vector更新合并。 更新K1到ΚΙ 1每個(gè)特征下的6個(gè)參數(shù):
[0061 ] 1、Va = (Va*C+Va,*C,)/(C+C,);
[0062] 2、Vs = (Vs*C+V,s*C,)/(C+C,);
[0063] 3、D = Vs_Va*Va;
[0064] 4、if(Vmax'>Vmax)Vmax = Vmax' ;else不更新Vmax。
[0065] 5、if(Vmin'〈Vmin)Vmin = Vmin' ;else不更新Vmin。
[0066] 6、C = C+C'。
[0067] 本發(fā)明所述的基于輸入特征的圖形密碼認(rèn)證系統(tǒng)包括下述幾個(gè)模塊:
[0068] 1)特征模板構(gòu)建模塊:
[0069] 為用戶的密碼輸入行為特征構(gòu)建特征模板。特征模板為11維行為特征向量Vector {1(1,1(2,1(3,1(4,1(5,1(6,1(7,1(8,1(9,1(10,1(11}。11個(gè)維度分別代表用戶0度、45度、90度、135度、 180度、225度、270度、315度共8方向一階畫線速度特征,和45度、90度、26.565度三類二階角 度過(guò)彎速度特征。每個(gè)維度下有6個(gè)元素構(gòu)成,分別是在該維度下的劃線平均速度Va、平方 速度平均值Vs、最大速度Vmax、最小速度Vmin、樣本學(xué)習(xí)個(gè)數(shù)C、樣本劃線速度方差D。表示為 {Ki|Va,Vs,Vmax,Vmin,C,D}〇
[0070] 2)圖形認(rèn)證模塊:
[0071] 與用戶預(yù)設(shè)的圖形密碼進(jìn)行比對(duì),若通過(guò)則進(jìn)入特征模塊,將用戶輸入密碼的行 為特征與特征模板進(jìn)行對(duì)比,不通過(guò)即認(rèn)證失敗。
[0072] 3)特征認(rèn)證模塊:
[0073] 每次輸入密碼認(rèn)證,在傳統(tǒng)的圖形認(rèn)證通過(guò)后,需進(jìn)行用戶密碼輸入特征比對(duì)認(rèn) 證。通過(guò)構(gòu)造當(dāng)前輸入的行為特征向量Vector'與特征模板Vector進(jìn)行比較。對(duì)當(dāng)前輸入的 每一維特征的數(shù)據(jù)IK'i | Va',Vs',Vmax',Vmin',C',D'}和特征模板對(duì)應(yīng)的每一維度的特征 數(shù)據(jù){燈|\%,¥8,¥11^,¥111;[11,(],0}進(jìn)行比較,在(]的個(gè)數(shù)小于10時(shí),以¥111;[11<\%'^^11^為認(rèn) 證通過(guò);當(dāng)C的個(gè)數(shù)大于10時(shí),以Va-3D<Va' <Va+3D范圍內(nèi)為認(rèn)證通過(guò)。11維特征中,有8維 以上認(rèn)證通過(guò),則認(rèn)為用戶認(rèn)證成功。否則認(rèn)證失敗。
[0074] 4)自學(xué)習(xí)模塊:
[0075] 用戶在每次認(rèn)證成功后,以該次密碼輸入的數(shù)據(jù)進(jìn)行累加學(xué)習(xí),更新特征模板中 的平均速度Va、平方速度均值Vs,最大速度Vmax、最小速度Vmin、樣本學(xué)習(xí)個(gè)數(shù)C、樣本速度 方差D的值。
[0076] 盡管結(jié)合優(yōu)選實(shí)施方案具體展示和介紹了本發(fā)明,但所屬領(lǐng)域的技術(shù)人員應(yīng)該明 白,在不脫離所附權(quán)利要求書所限定的本發(fā)明的精神和范圍內(nèi),在形式上和細(xì)節(jié)上可以對(duì) 本發(fā)明做出各種變化,均為本發(fā)明的保護(hù)范圍。
【主權(quán)項(xiàng)】
1. 滑行輸入圖形密碼的認(rèn)證方法,其特征在于,包括以下步驟: 51、 構(gòu)建滑行輸入行為的標(biāo)準(zhǔn)特征模板; 52、 認(rèn)證用戶輸入的圖形密碼,若圖形密碼認(rèn)證通過(guò)則進(jìn)入S3; 53、 將用戶在輸入圖形密碼過(guò)程中的滑行輸入行為特征與標(biāo)準(zhǔn)特征模板進(jìn)行對(duì)比,若 對(duì)比后符合認(rèn)證需求,則通過(guò)認(rèn)證,若不符合則認(rèn)證不通過(guò)。2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括一自學(xué)習(xí)的步驟,在用戶輸入的圖 形密碼通過(guò)認(rèn)證后,將用戶當(dāng)前通過(guò)認(rèn)證的該次滑行輸入過(guò)程的輸入行為數(shù)據(jù)與標(biāo)準(zhǔn)特征 模板的數(shù)據(jù)更新合并,生成新的標(biāo)準(zhǔn)特征模板。3. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述的用戶輸入密碼的滑行輸入行為特征 包括而不限于以下的一個(gè)或多個(gè):滑行的平均速度、滑行的平方速度平均值、滑行的最大速 度、滑行的最小速度、樣本學(xué)習(xí)個(gè)數(shù)、樣本滑行的平均速度的方差。4. 滑行輸入圖形密碼的認(rèn)證系統(tǒng),其特征在于,包括: 特征模板構(gòu)建模塊,用于構(gòu)建滑行輸入行為的標(biāo)準(zhǔn)特征模板; 圖形認(rèn)證模塊,用于認(rèn)證用戶輸入的圖形密碼,若圖形密碼認(rèn)證通過(guò)則進(jìn)入特征認(rèn)證 豐旲塊; 特征認(rèn)證模塊,用于將用戶在輸入圖形密碼過(guò)程中的滑行輸入行為特征與標(biāo)準(zhǔn)特征模 板進(jìn)行對(duì)比,若對(duì)比后符合認(rèn)證需求,則通過(guò)認(rèn)證,若不符合則認(rèn)證不通過(guò)。5. 根據(jù)權(quán)利要求4所述的系統(tǒng),其特征在于,還包括一自學(xué)習(xí)模塊,用于在用戶輸入的 圖形密碼通過(guò)認(rèn)證后,將用戶當(dāng)前通過(guò)認(rèn)證的該次滑行輸入過(guò)程的輸入行為數(shù)據(jù)與標(biāo)準(zhǔn)特 征模板的數(shù)據(jù)更新合并,生成新的標(biāo)準(zhǔn)特征模板。6. 根據(jù)權(quán)利要求4所述的系統(tǒng),其特征在于,所述的用戶輸入密碼的滑行輸入行為特征 包括而不限于以下的一個(gè)或多個(gè):滑行的平均速度、滑行的平方速度平均值、滑行的最大速 度、滑行的最小速度、樣本學(xué)習(xí)個(gè)數(shù)、樣本滑行的平均速度的方差。
【文檔編號(hào)】G06F21/31GK105975822SQ201610285455
【公開日】2016年9月28日
【申請(qǐng)日】2016年5月3日
【發(fā)明人】涂巖愷, 曹洪霞, 羅明宇, 呂偉煌, 劉炯鐘
【申請(qǐng)人】廈門雅迅網(wǎng)絡(luò)股份有限公司