專利名稱:隨機字符表密碼驗證技術(shù)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用戶身份驗證技術(shù),適用于任何信息化安全系統(tǒng)。
背景技術(shù):
隨著社會的快速發(fā)展和信息化的迅速普及,身份驗證成了社會生活中不可或缺的一部分,而用戶密碼則成為身份驗證的簡單而廣泛應(yīng)用的一種手段。
但是,傳統(tǒng)的密碼由于是固定的字符輸入,比較容易造成泄密。如用戶在輸入密碼時有他人在旁邊偷窺,從而記住所輸入的密碼信息,造成密碼泄密;有的通過利用計算機軟、硬件技術(shù)對用戶密碼窮舉、機器內(nèi)歷史紀(jì)錄破解、鍵盤物理跟蹤、鍵盤軟件跟蹤等方式獲取目標(biāo)密碼,造成密碼泄密,對用戶的信息安全造成極大威脅。目前各類金融卡、電信卡、服務(wù)消費卡、電子密碼鎖、軟件、電子信箱、網(wǎng)絡(luò)游戲等領(lǐng)域都在大量使用密碼作為用戶身份驗證的唯一手段,用戶密碼一旦泄露,就有可能使用戶蒙受巨大損失。因此,傳統(tǒng)密碼驗證技術(shù)已經(jīng)不能完全滿足現(xiàn)代信息化安全的需要。
為解決以上問題,目前銀行、電信、醫(yī)院等方面為用戶使用密碼提供了一些簡易保護裝置,如一米線限制(用戶輸入密碼時要求其他人站在一米線外)、密碼輸入鍵盤上安裝遮擋盒等等,這些措施有一定的作用,但還不是十分理想;互聯(lián)網(wǎng)上的帳戶密碼輸入基本上處于無任何保護措施狀態(tài)中。國內(nèi)也有人提出了一些動態(tài)隨機密碼的身份驗證技術(shù),但卻都需要改變目前的密碼設(shè)定方式和習(xí)慣,推廣受到一定限制,有的甚至需要配備若干密碼輸入專用設(shè)備或設(shè)施,從而造成硬件投資加大,更加增大了推廣難度。
發(fā)明內(nèi)容
本發(fā)明是以解決現(xiàn)有傳統(tǒng)密碼身份驗證技術(shù)的安全隱患而產(chǎn)生的,該技術(shù)的目的是提供一種進行身份驗證時不暴露用戶密碼,同時又不需改變現(xiàn)有的密碼和密碼設(shè)置方法的簡單易行的身份驗證技術(shù)。
根據(jù)上述目的,本發(fā)明的技術(shù)方案是這樣實現(xiàn)的在身份驗證時,系統(tǒng)由原密碼生成一定數(shù)目的密碼字符串、非密碼字符串及其對應(yīng)的隨機字符,并將它們組成字符表顯示在硬件設(shè)備上;用戶根據(jù)約定規(guī)則在字符表中讀出密碼字符串,輸入其對應(yīng)的隨機字符作為驗證字符后確認(rèn);系統(tǒng)通過數(shù)據(jù)處理系統(tǒng)對驗證字符或驗證字符反求的密碼組進行對比驗證,身份驗證完成。
所述原密碼是指用戶在身份建立時設(shè)定的,由一定數(shù)目的字符組成的用于身份驗證的密碼,例如“346781”、“wangli78”、“fhz_780858”等等。
所述密碼字符串是指按一定規(guī)則包含有原密碼中某些字符信息的字符串。比如密碼“wangli78”的密碼字符串可以是“wangli”、“wang”、“realwang”等等,密碼字符串以外的其他字符串均為非密碼字符串。密碼字符串和非密碼字符串由系統(tǒng)事先規(guī)定好的相應(yīng)規(guī)則產(chǎn)生。
所述隨機字符是指隨機產(chǎn)生的與字符串表中的字符串對應(yīng)的字符,它也可以是按照一定規(guī)則產(chǎn)生。
所述字符串表包括字符串和隨機字符兩部分,字符串和隨機字符存在對應(yīng)關(guān)系,字符表中的字符串包括密碼字符串和非密碼字符串。
所述驗證字符是指密碼字符串所對應(yīng)的隨機字符,由用戶將其輸入到系統(tǒng)中用來進行用戶身份驗證。
所述對比驗證包括兩種方式,一是系統(tǒng)在產(chǎn)生隨機字符后記錄下密碼字符串對應(yīng)的隨機字符,然后和用戶輸入的字符進行對比,如果所輸入的字符完全符合,則驗證通過,否則不通過;二是系統(tǒng)根據(jù)用戶輸入的字符反算出該字符所有可能對應(yīng)的密碼,然后同原密碼對比,如果包含原密碼,則驗證通過,否則不通過。
具體實施例方式
為了使本發(fā)明的技術(shù)方案和優(yōu)點更加清楚明白,以下舉實施例對本發(fā)明進一步詳細說明。
本實施例是以銀行信用卡在ATM機上取現(xiàn)時身份驗證過程作為范例,以此具體舉例說明本技術(shù)的實施過程。本實施例預(yù)先有如下約定1.信用卡原密碼由數(shù)字組成,且長度不超過6位,字符串和隨機字符均為數(shù)字;2.ATM機上設(shè)定的密碼字符串生成規(guī)則為依次取2位數(shù)字(字符)作為字符串,字符串之間無字符首尾聯(lián)系,當(dāng)密碼位數(shù)為奇數(shù)時,尾數(shù)與自身自成一個字符串。比如密碼“346019”的密碼字符串為34、60、19;密碼“84637”的密碼字符串為84、63、77;3.密碼字符輸入次數(shù)為6次(為保證密碼輸入的安全概率),每輸入1次密碼字符其字符表隨機變化1次,變化規(guī)律為每個數(shù)字都加上一個隨機大小的數(shù)字,逢雙位取尾數(shù),其隨機變化的響應(yīng)事件為按鍵,即輸入驗證字符的同時字符表也隨機變化;4.字符表由100個數(shù)字字符串組成,即00~99共100個字符串,每個字符串對應(yīng)一個隨機字符,為客戶讀表方便,將字符串設(shè)置為綠顏色,隨機字符設(shè)置為紅顏色;5.密碼字符串讀取規(guī)則為分解后字符串順序循環(huán)讀取,如密碼“347”輸入驗證字符參考的密碼字符串依次為34、77、34、77、34、77,密碼“97153”輸入驗證字符參考的密碼字符串依次為97、15、33、97、15、33。
6.系統(tǒng)產(chǎn)生隨機字符后,自動記錄密碼字符串對應(yīng)的隨機字符以備身份驗證時同用戶輸入的驗證字符進行對比。
以上規(guī)則都是事先設(shè)定的,需強調(diào)的是以上規(guī)則只需對ATM軟件的身份驗證部分進行修改即可,不需要對密碼設(shè)定方式進行修改,也不需要用戶改變當(dāng)前密碼,而且以上規(guī)則不需要用戶記憶。對于銀行來說,只需要改變ATM的相關(guān)程序和在ATM旁張貼一個操作說明即可,對于用戶來說只要按照ATM旁的操作說明進行操作即可,而且隨著使用次數(shù)的增加,用戶會逐漸習(xí)慣這種密碼輸入方式的,就像當(dāng)年逐漸習(xí)慣取現(xiàn)需要輸入密碼一樣。
假設(shè)某用戶的密碼是“768241”,則該用戶的身份驗證過程如下1.插入卡后,操作到身份驗證步驟,此時ATM提示輸入密碼并根據(jù)用戶身份生成第1張字符表(如表1所示),并記錄下第1個密碼字符串“76”對應(yīng)的隨機字符“0”。
表1 ATM屏幕上顯示的第1張字符表
該用戶輸入根據(jù)表1上的密碼字符串76對應(yīng)的隨機字符“0”,然后ATM上生成第2張字符表(如表2所示)并記錄下第2個密碼字符串“82”對應(yīng)的隨機字符“4”。
表2 ATM屏幕上顯示的第2張字符表
該用戶輸入根據(jù)表2上的密碼字符串82對應(yīng)的隨機字符“4”,然后ATM上生成第3張字符表(如表3所示)并記錄下第3個密碼字符串“41”對應(yīng)的隨機字符“6”。
表3 ATM屏幕上顯示的第3張字符表
該用戶輸入根據(jù)表3上的密碼字符串41對應(yīng)的隨機字符“6”,然后ATM上生成第4張字符表(如表4所示)并記錄下第4個密碼字符串“76”對應(yīng)的隨機字符“2”。
表4 ATM屏幕上顯示的第4張字符表
該用戶輸入根據(jù)表4上的密碼字符串76對應(yīng)的隨機字符“2”,然后ATM上生成第5張字符表(如表4所示)并記錄下第5個密碼字符串“82”對應(yīng)的隨機字符“6”。
表5 ATM屏幕上顯示的第5張字符表
該用戶輸入根據(jù)表5上的密碼字符串82對應(yīng)的隨機字符“6”,然后ATM上生成第6張字符表(如表6所示)并記錄下第6個密碼字符串“41”對應(yīng)的隨機字符“9”。
表6 ATM屏幕上顯示的第6張字符表
該用戶輸入根據(jù)表6上的字符串41對應(yīng)的隨機字符“9”后根據(jù)系統(tǒng)提示確認(rèn)。
至此,該用戶共根據(jù)字符串76、82、41、76、82、41所對應(yīng)的隨機字符分別輸入了0、4、6、2、6、9共6個字符,計算機根據(jù)記錄的驗證字符同用戶輸入的字符進行對比,結(jié)果完全符合,身份驗證通過,可以進行下面的操作。
下面我們對該身份驗證技術(shù)可行性進行分析,還以上面實施例為例。
1.該技術(shù)的推廣難度。以實施例為例,銀行方面只需對密碼輸入設(shè)備(本實施例為ATM)軟件進行改造以及編寫一個操作說明張貼在ATM旁邊即可,與傳統(tǒng)身份驗證系統(tǒng)相比較,無任何外部設(shè)備投入;銀行在進行該方法推廣時,不需要一次將整個大的系統(tǒng)進行改造,可以逐步推廣,因此改造過程不會對正常的交易產(chǎn)生較大影響;銀行也沒必要將用戶召回重新輸入密碼,對正常的營業(yè)秩序也沒有影響。因此,對于銀行來說,該技術(shù)的推廣難度很小。
2.用戶操作時的方便性。在實施例中,用戶依然只輸入了6個字符,與傳統(tǒng)方法相比沒有任何改變;只是用戶在輸入密碼時相對于傳統(tǒng)密碼輸入方法多了一個“讀”的過程,即閱讀字符表,但該過程不需要計算,也不需要記憶除了密碼以外的任何信息,而且由于該身份驗證技術(shù)的特殊性,用戶理論上最少只需要記住1位數(shù)字或取自己的熟悉數(shù)字作為密碼即可達到復(fù)雜密碼相同的目的,因此,用戶操作比較方便。
3.操作時的密碼泄漏的可能性。我們通過以下幾種情況進行分析
I.在不知道密碼也沒有看到真正用戶輸入密碼的情況下,對密碼進行猜測。假設(shè)ATM規(guī)定輸入10次錯誤密碼則不再允許輸入密碼,則傳統(tǒng)6位密碼被猜對的概率為10/1000000,即十萬分之一,若ATM規(guī)定的容許錯誤次數(shù)越多,則被猜對的概率越高;而本身份驗證技術(shù)由于其字符表為隨機產(chǎn)生,因此無論試驗多少次,它的被猜對的概率均為1/1000000,即百萬分之一,因此,安全性比傳統(tǒng)密碼輸入方式有了大幅度提高;II.有其他人在旁邊偷窺但沒有錄像的情況下,對密碼進行猜測。以上面實施例為例,某用戶在第1張字符表中找到密碼字符串76對應(yīng)的字符為“0”,但反過來對于該字符表來說,字符“0”對應(yīng)的字符串?dāng)?shù)目為10個,如表1所示字符串05、12、29、34、47、51、63、76、80、98對應(yīng)的字符均為“0”,而且對于非法用戶來說,需要在數(shù)秒的時間內(nèi)記住100個隨機數(shù)的順序,也是不現(xiàn)實的事情,即使記住了,非法用戶依然無法判斷出字符“0”對應(yīng)的是10個字符串中的哪個字符串,猜對的概率還是1/10,即十分之一,以此同理推廣到6位數(shù),其被猜對的概率仍然是1/1000000,即百萬分之一;而傳統(tǒng)身份驗證技術(shù)在這種情況下已經(jīng)造成了密碼泄漏。
III.有其他人在旁邊偷窺并將身份驗證全過程錄像,但不知道密碼長度的情況下,對密碼進行猜測。假設(shè)身份驗證全過程都被攝錄下來,但不知道密碼長度,則同沒有錄像一樣無法進行數(shù)學(xué)推導(dǎo),被猜對的概率仍然為百萬分之一;而傳統(tǒng)身份驗證技術(shù)在這種情況下已經(jīng)造成了密碼泄漏。
IV.有其他人在旁邊偷窺并將身份驗證全過程錄像,而且知道密碼長度的情況下,對密碼進行猜測。例如在本實施例中非法用戶知道密碼長度為6位,即知道第1位驗證字符和第4位驗證字符所對應(yīng)的字符串完全一樣。那么我們通過查表可得,第1位驗證字符“0”對應(yīng)的可能字符串為05、12、29、34、47、51、63、76、80、98,第4位驗證字符“2”對應(yīng)的可能字符串為05、12、29、34、47、51、63、76、80、98,其對應(yīng)的字符串完全一樣,因此在這種情況下,非法用戶也只能是將原來的猜測范圍由6個字符串縮小為3個字符串,但對于每個字符串來說,依然還是十分之一的概率,3個字符串也就是千分之一的概率,依然對密碼起到相當(dāng)?shù)谋C茏饔?;而傳統(tǒng)身份驗證技術(shù)在這種情況下已經(jīng)造成了密碼泄漏。
通過對以上4種情況分析,與傳統(tǒng)身份驗證技術(shù)相比,本身份驗證技術(shù)操作時密碼泄漏的可能性大大降低。
綜上所述,本身份驗證技術(shù)方法簡單、操作方便、成本低、易于推廣、保密性大大增強??梢詰?yīng)用在任何需要身份驗證的信息化系統(tǒng),是傳統(tǒng)身份驗證技術(shù)的替代技術(shù)。
在不脫離本發(fā)明精神或本質(zhì)特征的基礎(chǔ)上,本發(fā)明能夠以多種形式實施。因此本發(fā)明實施例在各種情況下都被認(rèn)為是示例性的而不是限制性的,本發(fā)明的范圍由所附權(quán)利要求書而不是前述的說明限定,并且所有落入權(quán)利要求的等同物的意義和范圍內(nèi)的更改將被認(rèn)為包括在權(quán)利要求內(nèi)。
權(quán)利要求
1.一種隨機字符表密碼驗證技術(shù),其特征在于在身份驗證時,系統(tǒng)由原密碼生成一定數(shù)目的密碼字符串、非密碼字符串及其對應(yīng)的隨機字符,并將它們組成字符表顯示在硬件設(shè)備上;用戶根據(jù)約定規(guī)則在字符表中讀出密碼字符串,輸入其對應(yīng)的隨機字符作為驗證字符后確認(rèn);系統(tǒng)通過數(shù)據(jù)處理系統(tǒng)對驗證字符或驗證字符反求的密碼組進行對比驗證,身份驗證完成。
2.如權(quán)利要求1所述的隨機字符表密碼驗證技術(shù),其特征是其中的字符、原密碼、密碼字符串、非密碼字符串、隨機字符和驗證字符可以是任意ASCII字符、GB2312-80字符、Unicode字符,即可以是大小寫字母、數(shù)字、特殊符號和漢字多種符號。顯示的形式可以直接是字符,也可以是圖片的形式。
3.如權(quán)利要求1所述的隨機字符表密碼驗證技術(shù),其特征是其中的密碼字符串的長度可以任意自然數(shù),同原密碼相比可以小于、等于或大于原密碼長度。密碼字符串可以包含原密碼中的某些字符,也可以根據(jù)一定的算法得到密碼字符串而密碼字符串中不包含原密碼中的任何字符。
4.如權(quán)利要求1所述的隨機字符表密碼驗證技術(shù),其特征是用戶在輸入驗證字符時,隨機字符表可以每次輸入都隨機變化一次,也可以多次輸入隨機變化一次,還可以在整個驗證過程字符表都不變化。
5.如權(quán)利要求1所述的隨機字符表密碼驗證技術(shù),其特征是其中的字符表中的字符串(包括密碼字符串和非密碼字符串)與隨機字符之間可以是一一對應(yīng)的關(guān)系,也可以不是一一對應(yīng)的關(guān)系。
6.如權(quán)利要求1所述的隨機字符表密碼驗證技術(shù),其特征是其中的字符串(包括密碼字符串和非密碼字符串)由若干字符組成,其字符間的組合方式可以直接組成字符串,也可以不直接組成字符串而分散開來,用戶身份驗證時再以約定規(guī)則臨時組成字符串從而完成身份驗證過程。
7.如權(quán)利要求1所述的隨機字符表密碼驗證技術(shù),其特征是所述對比驗證包括兩種方式,一是系統(tǒng)在產(chǎn)生隨機字符后記錄下密碼字符串對應(yīng)的隨機字符,然后和用戶輸入的字符進行對比,如果所輸入的字符完全符合,則驗證通過,否則不通過;二是系統(tǒng)根據(jù)用戶輸入的字符反算出該字符所有可能對應(yīng)的密碼,然后同原密碼對比,如果包含原密碼,則驗證通過,否則不通過。
全文摘要
一種應(yīng)用于信息系統(tǒng)的隨機字符表密碼驗證技術(shù),該技術(shù)實現(xiàn)方式為在身份驗證時,系統(tǒng)由原密碼生成一定數(shù)目的密碼字符串、非密碼字符串及其對應(yīng)的隨機字符,并將它們組成字符表顯示在硬件設(shè)備上;用戶根據(jù)約定規(guī)則在字符表中讀出密碼字符串,輸入其對應(yīng)的隨機字符作為驗證字符后確認(rèn);系統(tǒng)通過數(shù)據(jù)處理系統(tǒng)對驗證字符或驗證字符反求的密碼組進行對比驗證,身份驗證完成。該技術(shù)不需要改變現(xiàn)有的密碼和密碼設(shè)置方法且避免了在公開場合密碼輸入時造成泄密的安全風(fēng)險,其方法簡單、操作方便、成本低、易于推廣、保密性大大增強,可以應(yīng)用在任何需要身份驗證的信息化系統(tǒng),是傳統(tǒng)密碼身份驗證技術(shù)的替代技術(shù)。
文檔編號H04L9/32GK1893353SQ20061006491
公開日2007年1月10日 申請日期2006年3月17日 優(yōu)先權(quán)日2006年3月17日
發(fā)明者盧海龍 申請人:盧海龍