本發(fā)明屬于信息安全技術(shù)領(lǐng)域,涉及一種基于位置信息的加密式輸入方法,將該方法應(yīng)用于各類民用設(shè)備、工業(yè)設(shè)備、航空航天設(shè)備及軍事設(shè)備等的電子密碼輸入,為其建立更加安全的密碼輸入體系,并有效地提高密碼輸入的安全性,防范密碼泄露后的非法使用,達(dá)到有效地保護(hù)用戶的設(shè)備安全和生命財(cái)產(chǎn)安全、有效地防范網(wǎng)絡(luò)詐騙等。
背景技術(shù):
:
在當(dāng)今信息社會(huì),密碼無(wú)處不在,如各種電子設(shè)備啟動(dòng)需要輸入密碼、電子鎖需要輸入密碼、金融銀行交易系統(tǒng)需要輸入密碼、網(wǎng)上支付系統(tǒng)需要輸入密碼、各種管理平臺(tái)需要輸入密碼等等,密碼成為保護(hù)家庭、工業(yè)、商業(yè)、軍事等領(lǐng)域安全生產(chǎn)的主要方法和核心技術(shù)。當(dāng)前的密碼體系主要包括兩個(gè)部分,第一部分是需要用戶輸入的密碼;第二部分是接受用戶輸入密碼的密碼輸入設(shè)備;常用的密碼主要有靜態(tài)密碼和動(dòng)態(tài)密碼,其中,靜態(tài)密碼主要包括字符密碼(如,ATM機(jī)通常設(shè)置為6位數(shù)字密碼)、圖案密碼、人體特征密碼(如,指紋密碼等);動(dòng)態(tài)密碼主要包括隨機(jī)密碼(如,通過(guò)手機(jī)等通訊設(shè)備動(dòng)態(tài)從系統(tǒng)獲取的一次性有效的密碼或動(dòng)態(tài)驗(yàn)證碼等)、密碼卡(如銀行的密碼卡)等,密碼技術(shù)主要是通過(guò)改進(jìn)用戶密碼編碼方式來(lái)提高密碼的自身安全性,如提高密碼的復(fù)雜的等。
現(xiàn)有的密碼輸入方式主要包括顯式輸入和盲輸入,其中,顯式輸入主要是在輸入設(shè)備上顯示一個(gè)密碼輸入域,用戶把密碼輸入到密碼輸入域中,輸入域中以(*)等代替用戶輸入的每位密碼字符,密碼不可見(jiàn)但密碼位數(shù)是可見(jiàn)的;盲輸入主要是在輸入設(shè)備的指定位置上輸入密碼,密碼輸入設(shè)備上不顯示任何輸入信息,密碼輸入的位數(shù)也是不可見(jiàn)的,具有一定保密性(不知道是幾位密碼);在網(wǎng)絡(luò)終端上,密碼輸入系統(tǒng)還會(huì)使用軟鍵盤(pán),將鍵盤(pán)上的數(shù)字重排序供用戶用鼠標(biāo)挑選輸入,防止了通過(guò)截取鍵盤(pán)輸入信息來(lái)獲取密碼。在密碼輸入過(guò)程中,密碼輸入設(shè)備上會(huì)呈現(xiàn)一個(gè)密碼輸入域(輸入框)供用戶輸入自己的密碼,其自身不具有任何加密輸入等安全措施,密碼輸入的安全性主要依靠用戶自身的防范能力或者外界監(jiān)控等措施來(lái)保證。用戶密碼能夠提供保護(hù)安全性,但是密碼輸入設(shè)備不能提供密碼輸入安全性;用戶密碼一旦泄露或被盜,密碼獲取者就可能成為實(shí)際“用戶”,可以通過(guò)密碼進(jìn)入系統(tǒng)來(lái)進(jìn)行非法操作,因此會(huì)給用戶造成極大的損失。
技術(shù)實(shí)現(xiàn)要素:
:
本發(fā)明的目的在于克服現(xiàn)有技術(shù)存在的缺點(diǎn),尋求設(shè)計(jì)提供一種基于位置信息的密碼加密輸入方法,在密碼輸入設(shè)備上實(shí)現(xiàn)對(duì)密碼加密輸入功能,提供由密碼和密碼輸入的雙重安全性。
為了實(shí)現(xiàn)上述目的,本發(fā)明包括密碼規(guī)則設(shè)置、密碼輸入和密碼驗(yàn)證三個(gè)步驟,具體實(shí)現(xiàn)過(guò)程為:
(1)密碼規(guī)則設(shè)置:密碼規(guī)則包括規(guī)范密碼規(guī)則和非規(guī)范密碼規(guī)則,在密碼規(guī)則初始設(shè)置與修改時(shí),用戶需要設(shè)置與修改包括字符密碼組段規(guī)則、密碼輸入規(guī)則和密碼段與輸入域匹配規(guī)則(分別簡(jiǎn)稱為組段規(guī)則、輸入規(guī)則、匹配規(guī)則)的密碼規(guī)則,其中密碼組段規(guī)則包括密碼的選擇與組段;密碼輸入規(guī)則包括密碼的子輸入域序列的選擇與排序;密碼段與輸入域匹配規(guī)則建立密碼段與子輸入域序列之間的對(duì)應(yīng)輸入關(guān)系;在密碼輸入設(shè)備不同位置上提供多個(gè)密碼輸入域或輸入框,每個(gè)密碼輸入域或輸入框具有唯一的域標(biāo)識(shí)信息FID[n],每個(gè)輸入域能夠接收一個(gè)密碼段MSG[m],具體設(shè)置過(guò)程為:
①在規(guī)范密碼規(guī)則下,先建立密碼組段規(guī)則,將一個(gè)M位字符密碼PWD[M]分組為K個(gè)密碼段,記為MSG[m1,m2,…,mK],其中mk為每個(gè)密碼段的長(zhǎng)度,∑mk=M,k∈[1,K];再建立密碼輸入規(guī)則,在N個(gè)輸入域中任選K個(gè)輸入域組成一個(gè)子輸入域序列,記為FID[n1,n2,…,nK],其中,nk為域標(biāo)識(shí),k∈[1,K];然后建立密碼段與輸入域之間的匹配規(guī)則,將MSG[m1,m2,…,mK]匹配到FID[n1,n2,…,nK]的方案記為FMR[(n1,m1),(n2,m3),…,(nK,mK)],即第k個(gè)mk位密碼段輸入到第nk個(gè)輸入域,并記錄用戶所設(shè)置的規(guī)范密碼規(guī)則SCH{…}={FID[n1,n2,…,nK],MSG[m1,m2,…,mK],FMR[(n1,m1),(n2,m3),…,(nK,mK)]}(簡(jiǎn)記為SCH{…}),所預(yù)置的密碼規(guī)則只有用戶自己擁有;
②在非規(guī)范密碼規(guī)則下,先建立密碼組段規(guī)則,把M位字符密碼PWD[M]視為1個(gè)組元,每個(gè)輸入域輸入p遍密碼組合成一個(gè)密碼段MSG[p],K個(gè)密碼段記為MSG[p1,p2,…,pK],K≤M,pk無(wú)約束,k∈[1,K];再建立密碼輸入規(guī)則,在N個(gè)輸入域中任選K個(gè)輸入域組成一個(gè)子輸入域序列,記為FID[n1,n2,…,nK];然后建立密碼段與輸入域之間的匹配規(guī)則,將MSG[p1,p2,…,pK]匹配到FID[n1,n2,…,nK]的方式記為FMR[(n1,p1),(n2,p2),…,(nK,pK)],并記錄用戶所設(shè)置的非規(guī)范密碼規(guī)則SCP{…}={FID[n1,n2,…,nK],MSG[p1,p2,…,pK],FMR[(n1,p1),(n2,p2),…,(nK,pK)]}(簡(jiǎn)記為SCP{…}),所預(yù)置的密碼規(guī)則只有用戶自己擁有;
(2)密碼輸入:選擇具有輸入功能和安裝有實(shí)現(xiàn)密碼規(guī)則(包括規(guī)范密碼規(guī)則和非規(guī)范密碼規(guī)則)軟件的密碼輸入設(shè)備實(shí)現(xiàn)用戶密碼輸入、設(shè)置與修改,具體過(guò)程為:先進(jìn)入密碼輸入界面選取子輸入域序列,在使用觸摸屏或者鼠標(biāo)的設(shè)備上用戶直接點(diǎn)擊輸入域選擇,在使用鍵盤(pán)設(shè)備上用戶依次輸入各個(gè)輸入域的域標(biāo)識(shí)選擇,直至按下確認(rèn)鍵并在輸入界面上自動(dòng)生成子輸入域序列,其輸入域的域標(biāo)識(shí)自動(dòng)隱藏;然后用戶按照預(yù)置的密碼輸入規(guī)則,依次在各個(gè)輸入域中輸入密碼段,并生成輸入密碼規(guī)則iSCH{…}={iFID[n1,n2,…,nK],iMSG[m1,m2,…,mK],iFMR[(n1,m1),(n2,m3),…,(nK,mK)]}或iSCP{…}={iFID[n1,n2,…,nK],iMSG[p1,p2,…,pK],iFMR[(n1,p1),(n2,p2),…,(nK,pK)]},分別簡(jiǎn)記為iSCH{…}或iSCP{…};
(3)密碼驗(yàn)證:用戶在密碼輸入設(shè)備上輸入密碼后,密碼輸入設(shè)備將自動(dòng)生成的輸入密碼規(guī)則iSCH{…}或iSCP{…}與預(yù)置的密碼規(guī)則oSCH{…}或oSCP{…}進(jìn)行比較驗(yàn)證,具體過(guò)程為:在規(guī)范密碼規(guī)則或非規(guī)范密碼規(guī)則下,密碼輸入將自動(dòng)生成的輸入密碼規(guī)則iSCH{…}或iSCP{…}與預(yù)置的密碼規(guī)則oSCH{…}或oSCP{…}進(jìn)行比較驗(yàn)證密碼的正確性;或者將輸入密碼規(guī)則iSCH{…}或iSCP{…}加密發(fā)送給系統(tǒng)后臺(tái),由系統(tǒng)后臺(tái)解密后與預(yù)置的密碼規(guī)則oSCH{…}或oSCP{…}進(jìn)行比較驗(yàn)證密碼的正確性,然后將驗(yàn)證結(jié)果反饋至密碼輸入設(shè)備,當(dāng)輸入密碼規(guī)則iSCH{…}或iSCP{…}與預(yù)置的密碼規(guī)則oSCH{…}或oSCP{…}完全匹配時(shí)完成密碼的輸入。
本發(fā)明步驟(2)選取子輸入域序列時(shí),密碼輸入設(shè)備上以有序方式顯示N個(gè)輸入域或以重排序方式顯示N個(gè)輸入域,以提高選擇輸入域的保密性;用戶在選擇K個(gè)子輸入域時(shí)按照預(yù)置的模式選擇K個(gè)輸入域,或選擇K個(gè)以上輸入域,所選擇的輸入域序列中必須包含預(yù)置的子輸入域序列且能按序生成,進(jìn)一步提高選擇輸入域的保密性;例如,預(yù)置的子輸入域序列為oFID[3,6,1],則用戶在選擇子輸入域序列時(shí)可以冗余選擇tFID[5,3,2,6,1,4](其中包含了[3,6,1]),當(dāng)相應(yīng)的輸入域[3,6,1]正確輸入密碼段后,輸入設(shè)備能夠自動(dòng)生成正確的子輸入域序列iFID[3,6,1]。
本發(fā)明步驟(2)進(jìn)行密碼輸入時(shí),在規(guī)范密碼規(guī)則下,第k個(gè)密碼段MSG[mk]直接輸入到第nk個(gè)輸入域FID[nk]中。在非規(guī)范密碼規(guī)則下,第一種輸入方式是在第nk個(gè)輸入域FID[nk]中輸入pk遍密碼PWD[M];第二種輸入方式是在第nk個(gè)輸入域FID[nk]中輸入[PWD[M]][pk],即輸入密碼PWD[M]后緊跟著輸入遍數(shù)pk,對(duì)由K(K≤M)個(gè)輸入域構(gòu)成的輸入域子序列,由輸入遍數(shù)pk(k∈[1,K],pk∈[1,P])自動(dòng)構(gòu)成輸入級(jí)的域標(biāo)識(shí)密碼PWD[K]=[p1][p2]…[pK],實(shí)現(xiàn)用域標(biāo)識(shí)密碼對(duì)用戶密碼輸入的保護(hù)技術(shù),也能將PWD[K]定義為附加識(shí)別碼或附加密碼,P是任意的大于0自然數(shù)。
本發(fā)明設(shè)置的密碼規(guī)則具有密碼復(fù)雜度,密碼復(fù)雜度包括規(guī)范密碼規(guī)則下的總復(fù)雜度FGH(N,M)和非規(guī)范密碼規(guī)則下的總復(fù)雜度FGP(N,M,P),其中FGH(N,M)根據(jù)字符密碼復(fù)雜度FM(Q,M)、密碼輸入規(guī)則復(fù)雜度FN∑(N,MN)、密碼組段規(guī)則復(fù)雜度FS∑(M,M)和匹配規(guī)則復(fù)雜度FA(N,M)四個(gè)因素確定;FGP(N,M,P)主要由字符密碼復(fù)雜度FM(Q,M)、密碼輸入規(guī)則復(fù)雜度FN∑(N,N)、密碼組段規(guī)則復(fù)雜度FS∑(P,P)和匹配規(guī)則復(fù)雜度FA(N,P)四個(gè)因素確定,具體確定過(guò)程為:
(1)FM(Q,M):由Q種字符組成M位字符密碼PWD[M]的數(shù)量為FM(Q,M),則字符密碼PWD[M]的復(fù)雜度定義為FM(Q,M)=Q^M,其中“^”表示次冪;例如,如果用(0~9)這10個(gè)數(shù)字組成6位密碼,則FM(10,6)=10^6,PWD[M]是用戶的第一級(jí)保護(hù)密碼,只有用戶自己掌握;
(2)FN∑(N,MN)和FN∑(N,N):分別計(jì)算規(guī)范密碼規(guī)則下的密碼輸入規(guī)則復(fù)雜度FN∑(N,MN)和非規(guī)范密碼規(guī)則下的密碼輸入規(guī)則復(fù)雜度FN∑(N,N):
①在規(guī)范密碼規(guī)則下,定義在N個(gè)密碼輸入域中選取K個(gè)輸入域、組合排列成一個(gè)子輸入域序列的數(shù)量為FN(N,K),則FN(N,K)為N的K排列,即FN(N,K)=N!/(N-K)!,則全部子輸入域序列數(shù)為∑FN(N,K),K∈[1,N],其中K為求和變量,∑表示按求和變量K求和,M位密碼的一個(gè)子輸入域序列的最大長(zhǎng)度為M,則M位密碼輸入到N個(gè)輸入域的輸入規(guī)則復(fù)雜度FN∑(N,MN)=∑FN(N,K),K∈[1,MIN(N,M)],MIN(N,M)為取(N,M)的最小值,F(xiàn)N(N,K)計(jì)算實(shí)例如表1所示。
②在非規(guī)范密碼規(guī)則下,定義在N個(gè)密碼輸入域中選取K個(gè)輸入域、組合排列成一個(gè)子輸入域序列的數(shù)量為FN(N,K),則FN(N,K)為N的K排列,即FN(N,K)=N!/(N-K)!,由于K不受密碼位數(shù)M的約束,則輸入規(guī)則復(fù)雜度為全部子輸入域序列數(shù)FN∑(N,N)=∑FN(N,K),K∈[1,N],其中K為求和變量,∑表示按求和變量K求和,F(xiàn)N(N,K)計(jì)算實(shí)例如表1所示;
(3)FS∑(M,M)或FS∑(P,P):分別計(jì)算規(guī)范密碼規(guī)則下的密碼組段規(guī)則復(fù)雜度FS∑(M,M)和非規(guī)范密碼規(guī)則下的密碼組段規(guī)則復(fù)雜度FS∑(P,P):
①在規(guī)范密碼規(guī)則下,M位密碼分組為K個(gè)密碼段的方式數(shù)為FS(M,K),假設(shè)第k個(gè)密碼段包含mk個(gè)字符、輸入到第nk個(gè)輸入域,則∑mk=M,k∈[1,K],那么FS(M,K)是滿足約束方程∑mk=M的非零解(所有mk≠0)的數(shù)量,則密碼組段規(guī)則復(fù)雜度為M位字符密碼分組成密碼段的總方式數(shù)FS∑(M,M)=∑FS(M,K),K∈[1,M]。其中,數(shù)學(xué)推導(dǎo)得FS(M,K)滿足遞推關(guān)系FS(M,K)=FS(M-1,K)+FS(M-1,K-1),K∈[1,M],初始值FS(M,1)=1;FS(M,K)計(jì)算實(shí)例如表2所示。FS(M,K)的遞推關(guān)系如FS(8,5)=FS(7,5)+FS(7,4)=15+20=35;
②在非規(guī)范密碼規(guī)則下,雖然M位字符密碼為一個(gè)組元,但是在一個(gè)輸入域FID[nk]中可以重復(fù)輸入pk∈[1,P]遍M位密碼,P為最大輸入遍數(shù),這樣就由pk遍M位密碼首尾相連組合成一個(gè)密碼段,與FID[n1,n2,…,nK]相對(duì)應(yīng),建立密碼組段規(guī)則MSG[p1,p2,…,pK],M位字符密碼組合成K個(gè)密碼段的方式數(shù)為FS(P,K)=P^K,“^”表示P的K次冪,則密碼組段規(guī)則復(fù)雜度為組合成密碼段的總方式數(shù)FS∑(P,P)=∑FS(P,K),K∈[1,P],其中,F(xiàn)S(P,K)=P^K;
(4)FA(N,M)和FA(N,P):分別計(jì)算規(guī)范密碼規(guī)則下的匹配規(guī)則復(fù)雜度FA(N,M)和非規(guī)范密碼規(guī)則下的匹配規(guī)則復(fù)雜度FA(N,P):
①在規(guī)范密碼規(guī)則下,設(shè)密碼段MSG[m1,m2,…,mK]與子輸入域序列FID[n1,n2,…,nK]之間的輸入關(guān)系為同順序輸入,即第k個(gè)密碼段MSG[mk]輸入到子序列的第nk個(gè)輸入域FID[nk],建立二者的匹配規(guī)則為FMR[(n1,m1),(n2,m3),…,(nK,mK)],定義其FS(M,K)個(gè)密碼段與FN(N,K)子輸入域序列匹配規(guī)則復(fù)雜度為FA(N,M,K),則FA(N,M,K)=FN(N,K)*FS(M,K);
②在非規(guī)范密碼規(guī)則下,設(shè)密碼段MSG[p1,p2,…,pK]與子輸入域序列FID[n1,n2,…,nK]之間的輸入關(guān)系為同順序輸入,即第k個(gè)密碼段MSG[pk]輸入到子序列的第nk個(gè)輸入域FID[nk],建立二者的匹配規(guī)則為FMR[(n1,p1),(n2,p2),…,(nK,pK)],定義其FS(P,K)個(gè)密碼段與FN(N,K)子輸入域序列匹配規(guī)則復(fù)雜度為FA(N,P,K),則FA(N,P,K)=FN(N,K)*FS(P,K);
(5)FGH(N,M)和FGP(N,M,P):分別計(jì)算規(guī)范密碼規(guī)則下的總復(fù)雜度FGH(N,M)和非規(guī)范密碼規(guī)則下的總復(fù)雜度FGP(N,M,P)。
①在規(guī)范密碼規(guī)則下,由N個(gè)密碼輸入域組成一個(gè)包含K個(gè)輸入域的子序列的數(shù)量為FN(N,K),M位密碼分組為K個(gè)密碼段的數(shù)量為FS(M,K),密碼匹配規(guī)則為FA(N,M,K)=FN(N,K)*FS(M,K),則M位密碼輸入到N個(gè)密碼輸入域的總密碼復(fù)雜度FGH(N,M):
FGH(N,M)=FM(Q,M)*∑FA(N,M,K),K∈[1,MIN(N,M)]
=FM(Q,M)*∑[FN(N,K)*FS(M,K)],K∈[1,MIN(N,M)]
式中,F(xiàn)N(N,K)=N!/(N-K)!,遞推FS(M,K)=FS(M-1,K)+FS(M-1,K-1),FS(M,1)=1;FGH(N,M)計(jì)算實(shí)例如表3所示。
如表1、表2、表3所示,當(dāng)Q=10、N=6、M=6、K∈[1,6]時(shí):
FGH(6,6)=10^6*[∑FN(6,K)*FS(6,K)]=10^6*9276,6位密碼輸入到6個(gè)輸入域中,其輸入方式為9276種,其總密碼復(fù)雜度提高了9276倍;
當(dāng)Q=10、N=10、M=6、K∈[1,6]時(shí):
FGH(10,6)=10^6*∑[FN(10,K)*FS(6,K)]=10^6*360460,6位密碼輸入到10個(gè)輸入域中,其輸入方式為360460種,其總密碼復(fù)雜度提高了360460倍;
②在非規(guī)范密碼規(guī)則下,由N個(gè)密碼輸入域組成一個(gè)包含K個(gè)輸入域的子序列的數(shù)量為FN(N,K),由M位密碼組成最大重復(fù)輸入遍數(shù)為P的K個(gè)密碼段的數(shù)量為FS(P,K),密碼匹配規(guī)則為FA(N,P,K)=FN(N,K)*FS(P,K)。則M位密碼輸入到N個(gè)密碼輸入域的總密碼復(fù)雜度定義為FGP(N,M,P):
FGP(N,M,P)=FM(Q,M)*∑FA(N,P,K),K∈[1,N]
=FM(Q,M)*∑[FN(N,K)*FS(P,K)],K∈[1,N]
式中,F(xiàn)N(N,K)=N!/(N-K)!,F(xiàn)S(P,K)=P^K為P的K次冪;FGH(N,M)計(jì)算實(shí)例如表4所示;
如表4所示,當(dāng)Q=10、M=6、N=6、P=6、K∈[1,6]時(shí):
FGP(6,6,6)=10^6*[∑FP(6,K)*6^K]=10^6*39684636,6位密碼輸入到6個(gè)輸入域中,密碼段最大重復(fù)遍數(shù)為6,其輸入方式為39684636種,其總密碼復(fù)雜度提高了39684636倍。顯然,在同樣條件下(Q=10、N=6、M=P=6),非規(guī)范密碼規(guī)則下的安全性比規(guī)范密碼規(guī)則下的安全性大約再提高了39684636/9276=4278倍,具有更高的安全性。
本發(fā)明所述實(shí)現(xiàn)密碼規(guī)則軟件還包括如下功能:一是實(shí)現(xiàn)用戶設(shè)置、修改、輸入密碼規(guī)則等各種界面;二是能夠按照用戶的選擇生成子輸入域序列、接收用戶輸入的密碼、生成用戶輸入密碼規(guī)則;三是實(shí)現(xiàn)在本地(密碼輸入設(shè)備上)直接驗(yàn)證輸入密碼規(guī)則的正確性或者將輸入密碼規(guī)則發(fā)送到后臺(tái)驗(yàn)證其準(zhǔn)確性;四是完成密碼規(guī)則的設(shè)置、修改、輸入等功能。
本發(fā)明所述密碼復(fù)雜度與非加密輸入情況下的總密碼復(fù)雜度FM(Q,M)相比,在規(guī)范密碼規(guī)則下提高了∑FA(N,M,K)倍;在非規(guī)范密碼規(guī)則下提高了∑FA(N,P,K)倍。在非法獲取了某一用戶密碼后、但并不知道用戶密碼輸入規(guī)則的情況下,輸入者總共需要嘗試[∑FA(N,M,K)+∑FA(N,P,K)]次才能正確輸入密碼,如在普通情況下(Q=10、M=6、N=6、P=6),需要嘗試(39684636+9276)次,如果用戶密碼遺失,特別是在有限嘗試次數(shù)(如銀行系統(tǒng)通常為3次)下,用戶密碼得到了有效地保護(hù);在同樣條件下(相同Q、N、M=P),非規(guī)范密碼規(guī)則下的安全性要比規(guī)范密碼規(guī)則下的安全性大約提高了∑[FN(N,K)*FS(P,K)]/∑[FN(N,K)*FS(M,K)]倍,具有更高的安全性。
本發(fā)明與現(xiàn)有技術(shù)相比,一是構(gòu)建了三層密碼保護(hù)體系:第一層是用戶密碼選擇規(guī)則保護(hù),其安全性由復(fù)雜度為FM(Q,M)決定;第二層是密碼分段規(guī)則保護(hù),規(guī)范密碼規(guī)則下的分段規(guī)則保護(hù)的安全性由復(fù)雜度FS∑(M,M)決定,非規(guī)范密碼規(guī)則下的組段保護(hù)的安全性由復(fù)雜度為FS∑(P,P)決定;第三層是密碼輸入規(guī)則保護(hù),規(guī)范密碼規(guī)則下的輸入規(guī)則保護(hù)的安全性由復(fù)雜度為FN∑(N,MN)決定,非規(guī)范密碼規(guī)則下的輸入規(guī)則保護(hù)的安全性由復(fù)雜度為FN∑(N,N)決定,三個(gè)層次實(shí)現(xiàn)了對(duì)密碼系統(tǒng)聯(lián)合保護(hù),第一層實(shí)現(xiàn)用戶密碼級(jí)的保護(hù),第二層和第三層在密碼輸入設(shè)備上實(shí)現(xiàn)密碼輸入級(jí)的保護(hù),也就是說(shuō),如果用戶密碼泄露或被盜、用戶密碼級(jí)保護(hù)失效,但是密碼輸入級(jí)的保護(hù)仍然有效,盜取密碼者無(wú)法破解密碼輸入級(jí)的保護(hù),仍然無(wú)法使用密碼進(jìn)入系統(tǒng)實(shí)時(shí)非法操作;二是分別推導(dǎo)了規(guī)范密碼規(guī)則下總密碼復(fù)雜度FGH(N,M)、非規(guī)范密碼規(guī)則下總密碼復(fù)雜度FGP(N,M,P)和密碼輸入設(shè)備的總復(fù)雜度FG(N,M)算法;三是提出了密碼輸入設(shè)備實(shí)現(xiàn)方案,依據(jù)密碼三層保護(hù)體系在同一輸入設(shè)備中,通過(guò)規(guī)范密碼規(guī)則和非規(guī)范密碼規(guī)則兩種方案實(shí)現(xiàn)用戶密碼的三層保護(hù),與非加密輸入情況下的總密碼復(fù)雜度FM(Q,M)比較,其加密輸入情況下總密碼復(fù)雜度提高了(∑[FN(N,K)*FS(M,K)]+∑[FN(N,K)*FS(P,K)])倍;四是提出域標(biāo)識(shí)密碼保護(hù)技術(shù),在非規(guī)范密碼規(guī)則下,基于M位字符密碼為一個(gè)組元、在一個(gè)輸入域FID[nk]中可以重復(fù)輸入pk∈[1,P]遍M位密碼組成一個(gè)密碼組段,則與FID[n1,n2,…,nK]相對(duì)應(yīng),建立分段規(guī)則MSG[p1,p2,…,pK]與同順序輸入規(guī)則FMR[(n1,p1),(n2,p2),…,(nK,pK)]。在輸入域FID[nk]中需要同時(shí)識(shí)別M位密碼PWD[M]和輸入遍數(shù)pk,因此在FID[nk]中輸入pk遍密碼可以等價(jià)為在FID[nk]中輸入用戶密碼一遍PWD[M]后再輸入遍數(shù)pk,即在FID[nk]中用戶可以輸入新密碼[PWD[M][pk]。對(duì)于K(K≤N)個(gè)輸入域子序列,由輸入遍數(shù)pk(k∈[1,K],pk∈[1,P])構(gòu)成輸入級(jí)的域標(biāo)識(shí)密碼PWD[K]=[p1][p2]…[pK]。這樣,用戶級(jí)密碼PWD[M]與輸入級(jí)密碼PWD[K]聯(lián)合構(gòu)成域標(biāo)識(shí)密碼保護(hù)技術(shù),PWD[K]可定義為附加識(shí)別碼或附加密碼,理論上P是任意的自然數(shù);五是非規(guī)范密碼規(guī)則具有更高安全性:在相同條件(Q、N、M=P)下比較,非規(guī)范密碼規(guī)則下的安全性比規(guī)范密碼規(guī)則下的安全性提高了[∑[FN(N,K)*FS(P,K)]]/[∑[FN(N,K)*FS(M,K)]]倍,具有更高的安全性,能夠廣泛地應(yīng)用于網(wǎng)絡(luò)、金融、工業(yè)、軍事等需要密碼保護(hù)的領(lǐng)域,有效地提高了網(wǎng)絡(luò)、人民財(cái)產(chǎn)、工業(yè)生產(chǎn)、軍事設(shè)備等的安全性,與傳統(tǒng)密碼輸入方式相比較,用戶獲得了密碼輸入級(jí)的安全性,其安全性提高(∑[FN(N,K)*FS(M,K)]+∑[FN(N,K)*FS(P,K)])倍;其方法簡(jiǎn)單,密碼復(fù)雜度高,安全性好,密碼破解概率小,在同一輸入設(shè)備中,實(shí)現(xiàn)規(guī)范密碼規(guī)則和非規(guī)范密碼規(guī)則兩種方案,提高了密碼和密碼輸入的安全性。
附圖說(shuō)明:
圖1為本發(fā)明所述密碼輸入域原理示意圖,其中[1],[2],[…],[N-1],[N]是N個(gè)字符密碼輸入域,每個(gè)輸入域分左右兩個(gè)格子:左側(cè)格內(nèi)的數(shù)字1~N是該輸入域的編號(hào)(即為域標(biāo)識(shí))、右側(cè)格內(nèi)的數(shù)字[0~M]表示該輸入域內(nèi)可以輸入的密碼字符數(shù)。
圖2為本發(fā)明所述密碼輸入設(shè)備輸入界面原理示意圖,其中[S1]是密碼輸入設(shè)備開(kāi)機(jī)用戶界面示意圖,[1],[2],[3],[4],[5],[6]是6個(gè)字符密碼輸入域,[K1]是數(shù)字鍵盤(pán),[K2]是密碼設(shè)置鍵,[K3]是確認(rèn)鍵。
圖3為本發(fā)明所述密碼輸入過(guò)程原理示意圖,其中[S1]是密碼輸入設(shè)備的輸入界面示意圖,[S2]是密碼規(guī)則設(shè)置與修改界面示意圖,[S3]是等待用戶輸入密碼的輸入界面示意圖,[S4]是在規(guī)范密碼規(guī)則下用戶輸入密碼的界面示意圖,[S5]是在非規(guī)范密碼規(guī)則下用戶使用第一種輸入法輸入密碼后的界面示意圖,[S6]是在非規(guī)范密碼規(guī)則下用戶使用第二種輸入法輸入密碼后的界面示意圖,[1]~[6]是6個(gè)字符密碼輸入域,[K1]是數(shù)字鍵盤(pán),[K2]是密碼設(shè)置鍵,[K3]是確認(rèn)鍵,[K4]是重置鍵。
具體實(shí)施方式:
下面通過(guò)實(shí)施例并結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步說(shuō)明。
實(shí)施例:
本實(shí)施例基于位置信息的加密式輸入過(guò)程為:
(1)建立密碼規(guī)則:用戶設(shè)置由(0~9)十個(gè)數(shù)字組成的M=6位數(shù)字密碼;密碼輸入設(shè)備提供N=6個(gè)輸入域,域標(biāo)識(shí)信息為FID[6,5,4,3,2,1];①在規(guī)范密碼規(guī)則下,一個(gè)密碼最大段長(zhǎng)度為MIN(N,M)=6,建立密碼規(guī)則SCH{…}={FID[n1,n2,…,nK],MSG[m1,m2,…,mK],FMR[(n1,m1),(n2,m3),…,(nK,mK)],K∈[1,6]};②在非規(guī)范密碼規(guī)則下,一個(gè)輸入域中6位密碼的最大重復(fù)輸入遍數(shù)P=6,建立密碼規(guī)則SCP{…}={FID[n1,n2,…,nK],MSG[p1,p2,…,pK],FMR[(n1,p1),(n2,p3),…,(nK,pK)],K∈[1,6],p∈[1,6]}。
(2)密碼輸入:采用具備接收本實(shí)施例密碼輸入功能的密碼輸入設(shè)備,如圖3所示,用戶在密碼輸入設(shè)備上輸入密碼時(shí),需要按照預(yù)置的密碼規(guī)則來(lái)輸入密碼,[S1]是密碼輸入設(shè)備的初始界面,[1]~[6]為6個(gè)密碼輸入域,[K1]是數(shù)字鍵盤(pán),[K2]是密碼設(shè)置鍵,[K3]是確認(rèn)鍵,進(jìn)入密碼輸入界面后,用戶先選取子輸入域序列,在使用觸摸屏或者鼠標(biāo)的設(shè)備上用戶直接點(diǎn)擊輸入域[1]~[6]來(lái)選擇K個(gè)輸入域,在使用鍵盤(pán)設(shè)備[K1]上用戶依次輸入各個(gè)輸入域左端的編號(hào)來(lái)選擇K個(gè)輸入域,直至按下確認(rèn)鍵[K3]并在輸入界面上自動(dòng)生成有K個(gè)輸入域的子輸入域序列,其輸入域編號(hào)自動(dòng)隱藏;再按照預(yù)置的密碼輸入規(guī)則,依次在各個(gè)輸入域中輸入密碼段。用戶按下密碼設(shè)置鍵[K2]后,完成密碼規(guī)則設(shè)置,其過(guò)程與密碼輸入類似,密碼輸入過(guò)程為:①在規(guī)范密碼規(guī)則下,假設(shè)用戶初置或修改后的6位數(shù)字密碼為[013579]、三個(gè)密碼段為MSG[3,1,2]=[013,6,79]、三個(gè)密碼段分別設(shè)置到子輸入域序列FID[1,6,5]=[1][6][5]中;[S2]是設(shè)置與修改密碼規(guī)則的用戶界面示意圖,則生成預(yù)置密碼規(guī)則oSCH{…}={oFID[1,6,5],oMSG[3,1,2],oFMR[(1,3),(6,1),(5,2)]};[S3]是用戶選擇子輸入域序列后等待輸入密碼的界面示意圖,生成輸入iFID[1,6,5](輸入正確時(shí)),輸入域的編號(hào)不再顯示;[S4]是用戶選擇的子輸入域序列輸入密碼后等待按確認(rèn)鍵的界面示意圖,在輸入域[1]輸入密碼段[013]、輸入域[6]輸入密碼段[6]、輸入域[5]輸入密碼段[79],生成輸入的密碼信息iMSG[3,1,2]=[013,6,79](輸入正確時(shí)),用*號(hào)代替輸入的密碼字符,輸入域的編號(hào)不再顯示,按下確認(rèn)鍵后生成輸入密碼規(guī)則iSCH{…}={iFID[1,6,5],iMSG[3,1,2],iFMR[(1,3),(6,1),(5,2)]};②在非規(guī)范密碼規(guī)則下,假設(shè)用戶已經(jīng)設(shè)置或修改了密碼規(guī)則為oSCP{…}={oFID[1,6,5],oMSG[2,1,3],oFMR[(1,2),(6,1),(5,3)]},第一種輸入法是在輸入域[1]輸入2遍密碼、輸入域[6]輸入1遍密碼、輸入域[5]輸入3遍密碼,[S5]是用戶在選擇的子輸入域序列輸入密碼后等待按確認(rèn)鍵的界面示意圖,按下確認(rèn)鍵后兩種輸入法都會(huì)生成輸入的密碼規(guī)則iSCP{…}={iFID[1,6,5],iMSG[2,1,3],iFMR[(1,2),(6,1),(5,3)]};第二種輸入法是在輸入域[1]輸入7位密碼[0135792]、輸入域[6]輸入7位密碼[0135791]、輸入域[5]輸入7位密碼[0135793],[S6]是用戶在選擇的子輸入域序列輸入密碼后等待按確認(rèn)鍵的界面示意圖,按下確認(rèn)鍵后兩種輸入法都會(huì)生成輸入的密碼規(guī)則iSCP{…}={iFID[1,6,5],iMSG[2,1,3],iFMR[(1,2),(6,1),(5,3)]};
(4)密碼驗(yàn)證:按下確認(rèn)鍵后,密碼輸入設(shè)備接收到用戶輸入的密碼規(guī)則(規(guī)范密碼規(guī)則下為iSCH{…}={iFID[1,6,5],iMSG[3,1,2],iFMR[(1,3),(6,1),(5,2)]}、非規(guī)范密碼規(guī)則下為iSCP{…}={iFID[1,6,5],iMSG[2,1,3],iFMR[(1,2),(6,1),(5,3)]})后,在本地與預(yù)置的密碼信息oSCH{…}或oSCP{…}相比較,完成密碼解析和驗(yàn)證;或者將所使用的輸入密碼規(guī)則iSCH{…}或iSCP{…}加密發(fā)送給系統(tǒng)后臺(tái),由系統(tǒng)后臺(tái)來(lái)完成解析和驗(yàn)證密碼的正確性。
本實(shí)施例涉及的密碼規(guī)則復(fù)雜度計(jì)算過(guò)程為:
①在規(guī)范密碼規(guī)則下,Q=10、N=6、M=6、K∈[1,6]時(shí):FGH(6,6)=10^6*∑[FN(6,K)*FS(6,K)]=10^6*9276,即密碼的安全性調(diào)高了9276倍;
②在非規(guī)范密碼規(guī)則下,Q=10、N=6、M=6、K∈[1,6]、P∈[1,6]時(shí):FGP(6,6,6)=10^6*∑[FP(6,K)*6^K],K∈[1,6]=39684636,即密碼的安全性調(diào)高了39684636倍。
本實(shí)施例在密碼輸入設(shè)備上同時(shí)實(shí)現(xiàn)了規(guī)范密碼規(guī)則和非規(guī)范密碼規(guī)則下的密碼輸入,則密碼輸入設(shè)備的密碼復(fù)雜度合計(jì)提高了(39684636+9276)倍。