一種隨機電子密碼系統及方法
【專利摘要】本發明提供一種隨機電子密碼系統及方法,其中,隨機電子密碼系統包括主機、顯示模塊、輸入模塊、存儲器和信號輸出模塊,主機包括用戶信息單元、二維隨機數組生成單元、質數生成單元、尋碼單元、即時密碼校驗單元、計數單元和密碼校驗單元。本發明在使用過程中無需隨身攜帶任何設備,任何人在目睹用戶輸入密碼全過程后,仍然無法竊取用戶密碼。
【專利說明】一種隨機電子密碼系統及方法
【技術領域】
[0001]本發明涉及一種密碼系統及方法,尤其是一種能夠防止密碼被偷窺竊取的電子密碼系統及方法。
【背景技術】
[0002]目前,ATM機上的密碼輸入系統在密碼輸入時,易被竊取,為此又在機器上安裝防窺護罩和在機器前拉設警戒線,但仍存在采用針孔攝像機拍攝輸入過程竊取密碼的行為,甚至還有安裝電子鍵盤覆蓋在原有鍵盤表面來記錄用戶輸入信息的盜取密碼現象。
[0003]為了應對網絡上木馬病毒盛行的現象,各家銀行為網銀用戶提供了“動態ロ令牌”,以固定時間變換一次密碼,為用戶提供身份驗證,但仍存在“動態ロ令牌”攜帶不方便、遺失“動態ロ令牌”沒法正常交易以及銀行増加硬件投資成本等問題。
[0004]相對應的,游戲公司也推行了“密碼保護卡”功能,用戶在進行身份驗證時,需輸入登錄密碼,并根據顯示屏上的提示,輸入“密碼保護卡”上對應的數字,以確認用戶身份,但仍也存在“密碼保護卡”攜帶不方便、“密碼保護卡”易遺失、游戲公司増加硬件投資成本等問題。
【發明內容】
[0005]本發明要解決的技術問題是:普通密碼在使用時一旦被偷窺就有可能造成賬號被竊取的問題;使用“動態ロ令牌”或“密碼保護卡”時需要攜帯其他設備,使用不方便的問題。
[0006]為解決上述問題,本發明提供了一種隨機電子密碼系統,包括主機、顯示模塊、輸入模塊、存儲器和信號輸出模塊,主機包括用戶信息単元、二維隨機數組生成単元、質數生成單元、尋碼單元、即時密碼校驗單元、計數單元和密碼校驗單元,
[0007]用戶信息単元分別與輸入模塊、存儲器、二維隨機數組生成単元和計數單元相連,用于接收用戶從輸入模塊輸入的用戶ID,并從存儲器中讀取該用戶的用戶密碼,用戶密碼包括至少ー個密碼單元,密碼單元設定了尋碼路徑,用于用戶在二維隨機數組中尋找ー個元素作為用戶即時密碼,尋碼路徑由起點位、方向位、距離位和垂直位四位數字組成,起點位為1、2、3或4中的一位數字,分別表示將二維隨機數組的第一行第一列位置、第一行最后一列位置、最后一行最后一列位置或最后一行第一列位置作為尋碼起點,方向位為I或2,I表示以二維隨機數組的第一行第一列位置所在行、第一行最后一列位置所在列、最后一行最后一列位置所在行或最后一行第一列位置所在列作為尋碼方向,2表示以二維隨機數組的第一行第一列位置所在列、第一行最后一列位置所在行、最后一行最后一列位置所在列或最后一行第一列位置所在行作為尋碼方向,距離位為3~9中任意一位數字,表示以尋碼起點位作為起點,按照尋碼方向進行尋碼的行數或列數,垂直位為3~9中任意一位數字,表示以尋碼方向進行尋碼的最后一位作為拐點,以尋碼方向的垂直方向進行尋碼的行數或列數,用戶信息單元還用于提取與用戶ID相匹配的密碼信息,密碼信息包括用戶密碼中包含密碼單元的個數、密碼單元中距離位的最大值以及密碼單元中垂直位的最大值,并將密碼單元的個數發送給計數単元,將密碼単元中距離位的最大值和密碼單元中垂直位的最大值發送給ニ維隨機數組生成単元;
[0008]ニ維隨機數組生成単元還與顯示模塊、尋碼単元和計數單元相連,用于根據用戶信息單元發送的密碼單元中距離位的最大值和密碼單元中垂直位的最大值,生成行列數均大于距離位的最大值或垂直位的最大值的ニ維隨機數組,ニ維隨機數組中的元素互不相同,并將生成的ニ維隨機數組發送給顯示模塊和尋碼單元;
[0009]質數生成単元與存儲器相連,用于設定每個密碼單元對應的質數,并將這些質數作為系統質數寫入存儲器中,系統質數互不相等,且部分系統質數和不等于其余系統質數;
[0010]尋碼單元還與存儲器相連,用于在接收的ニ維隨機數組中按照每個密碼單元的尋碼路徑尋找對應的元素作為系統即時密碼,并將系統及時密碼寫入存儲器中;
[0011]即時密碼校驗単元與存儲器相連,用于讀取存儲器中的用戶即時密碼和系統即時密碼并進行比較,若用戶即時密碼與某一密碼單元對應的系統即時密碼相同,則將該密碼単元所對應的系統質數作為校驗質數寫入存儲器中,若用戶即時密碼與所有密碼單元對應的系統即時密碼都不相同,則不寫入任何數據,在完成一次比較后清除存儲器中的系統即時密碼和用戶即時密碼;
[0012]計數單元還與密碼校驗単元相連,用于判斷用戶輸入用戶即時密碼的次數與用戶信息單元發送的密碼單元的個數是否相等,如果相等則觸發密碼校驗單元,如果不等則觸發ニ維隨機數組生成単元;
[0013]密碼校驗單元還與顯示模塊、存儲器和信號輸出模塊相連,用于讀取存儲器中的系統質數,并進行累加,得到系統質數累加和,再讀取存儲器中的校驗質數,并進行累加,得到校驗質數累加和,再判斷系統質數累加和與校驗質數累加和是否相等,若相等,則通過顯示模塊提示密碼輸入成功并由信號輸出模塊輸出控制信號,若不相等,則清除存儲器中的用戶即時密碼、系統即時密碼、系統質數和校驗質數以及計數単元的計數值。
[0014]采用該隨機電子密碼系統,通過ニ維隨機數組生成單元隨機生成適合對應用戶的ニ維隨機數組,該ニ維隨機數組的大小和數組元素在毎次生成時都會出現變化,使偷窺者或針孔攝像機獲取的用戶每次輸入的密碼無效,同樣使得安裝的電子鍵盤盜取的輸入信息也無效;通過密碼單元來設定用戶的尋碼路徑,由于在ニ維隨機數組中尋找到ー個元素的路徑實在太多,起點位、方向位、距離位和垂直位都是未知的,即使偷窺者完完全全看到或者錄制了密碼的輸入過程,甚至通過安裝的電子鍵盤盜取輸入信息,都很難獲得準確的尋碼路徑來竊取密碼;通過即時密碼校驗單元將用戶即時密碼與系統即時密碼進行比較,若用戶即時密碼與某一位系統即時密碼相同,則記錄該位系統即時密碼所對應的系統質數,根據記錄系統質數來判斷用戶是根據哪個密碼單元輸入的用戶即時密碼,這樣用戶就能夠不按照密碼單元的順序隨機輸入用戶即時密碼,從而増加了電子密碼被竊取的難度。
[0015]作為本發明的進ー步限定方案,ニ維隨機數組中的元素為字母、數字、標點或標示符號。采用字母、數字、標點或標示符號作為ニ維隨機數組中的元素,增加偷窺者記憶的難度,有效提高了電子密碼的加密效果。
[0016]作為本發明的進ー步限定方案,密碼單元的個數大于等于3小于等于6。采用ー個用戶密碼中包含大于等于3小于等于6個密碼単元,不僅能夠達到加密效果,也能夠減少用戶記憶用戶密碼的難度。
[0017]作為本發明的進ー步限定方案,系統質數大于等于2小于等于97。采用2?97大小的系統質數,降低了密碼校驗單元的校驗難度,提高系統的工作效率。
[0018]作為本發明的進ー步限定方案,主機為ATM機、計算機或POS機。采用ATM機、計算機或POS機來實現本發明的主機功能,能夠有效提高ATM機、計算機或POS機對用戶賬戶及用戶密碼的保護功能。
[0019]作為本發明的進ー步限定方案,顯示模塊為顯示屏或觸摸屏。采用顯示屏或觸摸屏作為本發明的顯示模塊,實現對用戶輸入信息和密碼提示信息的顯示。
[0020]作為本發明的進ー步限定方案,輸入模塊為鍵盤或觸摸屏。采用鍵盤或觸摸屏作為本發明的輸入模塊,實現用戶對相關信息的輸入。
[0021]本發明還提供了ー種隨機電子密碼方法,包括如下步驟:
[0022]步驟1,在用戶驗證電子密碼前,首先通過輸入模塊輸入用戶ID,用戶信息単元接收用戶ID,并從存儲器中讀取該用戶的用戶密碼,再由用戶信息單元提取該用戶的密碼信息,并將密碼信息中密碼單元的個數發送給主機的計數單元,將密碼単元中距離位的最大值和密碼單元中垂直位的最大值發送給主機的ニ維隨機數組生成単元,再由質數生成単元設定每個密碼單元對應的質數,并將這些質數作為系統質數寫入存儲器中;
[0023]步驟2,在用戶驗證電子密碼時,由ニ維隨機數組生成単元根據用戶信息單元發送的距離位的最大值和垂直位的最大值生成隨機ニ維數組,并通過顯示模塊進行顯示;
[0024]步驟3,尋碼單元在ニ維隨機數組中按照每個密碼單元的尋碼路徑尋找對應的元素作為系統即時密碼,并將系統即時密碼寫入存儲器中;
[0025]步驟4,用戶在用戶密碼中不重復選擇ー個密碼単元,井根據該密碼單元的尋碼路徑在ニ維隨機數組中尋找ー個元素作為用戶即時密碼,再通過輸入模塊寫入存儲器中;
[0026]步驟5,即時密碼校驗單元讀取存儲器中的用戶即時密碼和系統即時密碼并進行比較,若用戶即時密碼與某一密碼單元對應的系統即時密碼相同,則將該密碼單元所對應的系統質數作為校驗質數寫入存儲器中,若用戶即時密碼與所有密碼單元對應的系統即時密碼都不相同,則不寫入任何數據;
[0027]步驟6,即時密碼校驗単元清除存儲器中的系統即時密碼和用戶即時密碼;
[0028]步驟7,計數單元根據用戶信息單元發送的密碼單元的個數,判斷輸入用戶即時密碼的次數與密碼單元的個數是否相等,如果不相等則重復步驟2、3、4、5和6,如果相等則進行步驟8 ;
[0029]步驟8,密碼校驗單元將存儲器中的系統質數相累加,得到系統質數累加和,將存儲器中的校驗質數相累加,得到校驗質數累加和,若系統質數累加和與校驗質數累加和相等,則通過顯示模塊提示密碼輸入成功并由信號輸出模塊輸出控制信號,若系統質數累加和與校驗質數累加和不相等,則提示密碼輸入錯誤,井清除存儲器中的用戶即時密碼、系統即時密碼、系統質數和校驗質數以及計數単元的計數值,同時返回步驟2。
[0030]采用該種隨機電子密碼方法,步驟2中的ニ維隨機數組生成単元能夠隨機生成適合對應用戶的ニ維隨機數組,該ニ維隨機數組的大小和數組元素在毎次生成時都會出現變化,使偷窺者或針孔攝像機獲取的用戶每次輸入的密碼無效,同樣使得安裝的電子鍵盤盜取的輸入信息也無效;步驟5中的即時密碼校驗單元將用戶即時密碼與系統即時密碼進行比較,若用戶即時密碼與某一位系統即時密碼相同,則記錄該位系統即時密碼所對應的系統質數,根據記錄系統質數來判斷用戶是根據哪個密碼單元輸入的用戶即時密碼,這樣用戶就能夠不按照密碼單元的順序隨機輸入用戶即時密碼,從而増加了電子密碼被竊取的難度。
[0031]作為本發明所提供的隨機電子密碼方法的進ー步限定,當用戶首次使用時,在步驟I前還包括如下步驟:
[0032]步驟a,由顯示模塊顯示用戶ID設定界面,用戶通過輸入模塊輸入用戶ID,所述用戶ID存儲在存儲器中;
[0033]步驟b,顯示模塊顯示用戶密碼設定界面,用戶通過輸入模塊輸入用戶密碼,所述用戶密碼存儲在存儲器中并與用戶ID相關聯。
[0034]采用步驟a和b來設定用戶ID和用戶密碼,并將用戶ID與用戶密碼相關聯,在用戶驗證電子密碼時,只要用戶輸入用戶ID系統便通過該用戶ID在存儲器中尋找對應的用戶密碼,從而實現后續的即時密碼校驗步驟。
[0035]本發明的有益效果在于:(I)用戶在使用該電子密碼時無需攜帯任何設備,不僅使用方便,而且節省成本;(2)用戶在隨機生成的適合該用戶的ニ維隨機數組上尋找元素作為用戶即時密碼,由于ニ維隨機數組大小和數組元素在毎次生成時都會出現變化,使偷窺者或針孔攝像機獲取的用戶每次輸入的密碼無效,同樣使得安裝的電子鍵盤盜取的輸入信息也無效,大大増加了密碼被竊取的難度;(3)用戶在輸入用戶即時密碼時,所依據的密碼單元的順序是不固定的,這樣也増加了密碼被竊取的難度;(4)采用密碼單元設定用戶的尋碼路徑,由于在ニ維隨機數組中尋找到ー個元素的路徑實在太多,起點位、方向位、距離位和垂直位都是未知的,即使偷窺者完完全全看到或者錄制了密碼的輸入過程,甚至通過安裝的電子鍵盤盜取輸入信息,都很難獲得準確的尋碼路徑來竊取密碼,仍然不能對用戶的財產造成危害。
【專利附圖】
【附圖說明】
[0036]圖1為本發明的隨機電子密碼系統;
[0037]圖2為本發明的操作流程圖;
[0038]圖3為本發明的密碼單元示意圖;
[0039]圖4為本發明的ニ維隨機數組示意圖。
【具體實施方式】
[0040]如圖1所示,本發明提供的一種隨機電子密碼系統,包括主機、顯示模塊、輸入模塊、存儲器和信號輸出模塊,主機可以是ATM機、計算機或POS機,顯示模塊可以是顯示屏或觸摸屏,輸入模塊可以是鍵盤或觸摸屏,主機包括用戶信息単元、ニ維隨機數組生成単元、質數生成單元、尋碼單元、即時密碼校驗單元、計數單元和密碼校驗單元,
[0041]用戶信息単元分別與輸入模塊、存儲器、ニ維隨機數組生成単元和計數單元相連,用于接收用戶從輸入模塊輸入的用戶ID,并從存儲器中讀取該用戶的用戶密碼,用戶密碼包括至少ー個密碼單元,密碼單元設定了尋碼路徑,用于用戶在ニ維隨機數組中尋找ー個元素作為用戶即時密碼,尋碼路徑由起點位、方向位、距離位和垂直位四位數字組成,起點位為1、2、3或4中的一位數字,分別表示將ニ維隨機數組的第一行第一列位置、第一行最后一列位置、最后一行最后一列位置或最后一行第一列位置作為尋碼起點,方向位為I或2,I表示以ニ維隨機數組的第一行第一列位置所在行、第一行最后一列位置所在列、最后一行最后一列位置所在行或最后一行第一列位置所在列作為尋碼方向,2表示以ニ維隨機數組的第一行第一列位置所在列、第一行最后一列位置所在行、最后一行最后一列位置所在列或最后一行第一列位置所在行作為尋碼方向,距離位為3?9中任意一位數字,表示以尋碼起點位作為起點,按照尋碼方向進行尋碼的行數或列數,垂直位為3?9中任意一位數字,表示以尋碼方向進行尋碼的最后一位作為拐點,以尋碼方向的垂直方向進行尋碼的行數或列數,用戶信息單元還用于提取與用戶ID相匹配的密碼信息,密碼信息包括用戶密碼中包含密碼單元的個數、密碼單元中距離位的最大值以及密碼單元中垂直位的最大值,并將密碼單元的個數發送給計數単元,將密碼単元中距離位的最大值和密碼單元中垂直位的最大值發送給ニ維隨機數組生成単元;
[0042]ニ維隨機數組生成単元還與顯示模塊、尋碼単元和計數單元相連,用于根據用戶信息單元發送的密碼單元中距離位的最大值和密碼單元中垂直位的最大值,生成行列數均大于距離位的最大值或垂直位的最大值的ニ維隨機數組,ニ維隨機數組中的元素互不相同,可以為字母、數字、標點或標示符號,并將生成的ニ維隨機數組發送給顯示模塊和尋碼單元;
[0043]質數生成単元與存儲器相連,用于設定每個密碼單元對應的質數,并將這些質數作為系統質數寫入存儲器中,系統質數互不相等,且部分系統質數和不等于其余系統質數;
[0044]尋碼單元還與存儲器相連,用于在接收的ニ維隨機數組中按照每個密碼單元的尋碼路徑尋找對應的元素作為系統即時密碼,并將系統及時密碼寫入存儲器中;
[0045]即時密碼校驗単元與存儲器相連,用于讀取存儲器中的用戶即時密碼和系統即時密碼并進行比較,若用戶即時密碼與某一密碼單元對應的系統即時密碼相同,則將該密碼単元所對應的系統質數作為校驗質數寫入存儲器中,若用戶即時密碼與所有密碼單元對應的系統即時密碼都不相同,則不寫入任何數據,在完成一次比較后清除存儲器中的系統即時密碼和用戶即時密碼;
[0046]計數單元還與密碼校驗単元相連,用于判斷用戶輸入用戶即時密碼的次數與用戶信息單元發送的密碼單元的個數是否相等,如果相等則觸發密碼校驗單元,如果不等則觸發ニ維隨機數組生成単元;
[0047]密碼校驗單元還與顯示模塊、存儲器和信號輸出模塊相連,用于讀取存儲器中的系統質數,并進行累加,得到系統質數累加和,再讀取存儲器中的校驗質數,并進行累加,得到校驗質數累加和,再判斷系統質數累加和與校驗質數累加和是否相等,若相等,則通過顯示模塊提示密碼輸入成功并由信號輸出模塊輸出控制信號,若不相等,則清除存儲器中用戶即時密碼、系統即時密碼、系統質數和校驗質數。
[0048]本發明的系統的工作過程為:在用戶進行密碼驗證時,當用戶通過輸入模塊輸入用戶ID后,首先由用戶信息単元接收用戶ID,同時從存儲器中讀取該用戶的用戶密碼,并提取與用戶ID相匹配的用戶密碼中包含密碼單元的個數、密碼單元中距離位的最大值以及密碼單元中垂直位的最大值,再將密碼単元的個數發送給計數単元,將密碼単元中距離位的最大值和密碼單元中垂直位的最大值發送給二維隨機數組生成単元;然后由二維隨機數組生成単元根據用戶信息單元發送的密碼單元中距離位的最大值和密碼單元中垂直位的最大值,生成行列數均大于距離位的最大值或垂直位的最大值的二維隨機數組,并將生成的二維隨機數組發送給顯示模塊和尋碼單元,顯示模塊顯示二維隨機數組;然后再由質數生成単元設定每個密碼單元對應的質數,并將這些質數作為系統質數寫入存儲器中,由尋碼單元在接收的二維隨機數組中按照每個密碼單元的尋碼路徑尋找對應的元素作為系統即時密碼,并將系統及時密碼寫入存儲器中;用戶根據用戶密碼中的密碼單元設定的尋碼路徑在二維隨機數組中尋找用戶即時密碼,再由即時密碼校驗單元對用戶即時密碼與系統即時密碼進行比較,若用戶即時密碼與某一密碼單元對應的系統即時密碼相同,則將該密碼單元所對應的系統質數作為校驗質數寫入存儲器中,若用戶即時密碼與所有密碼單元對應的系統即時密碼都不相同,則不寫入任何數據,在完成一次比較后清除存儲器中的系統即時密碼和用戶即時密碼;當計數單元判斷用戶輸入用戶即時密碼的次數與用戶信息單元發送的密碼單元的個數相等,則觸發密碼校驗單元,否則觸發二維隨機數組生成単元?’最后由密碼校驗單元讀取存儲器中的系統質數,并進行累加,得到系統質數累加和,再讀取存儲器中的校驗質數,并進行累加,得到校驗質數累加和,再判斷系統質數累加和與校驗質數累加和是否相等,若相等,則通過顯示模塊提示密碼輸入成功并由信號輸出模塊輸出控制信號,若不相等,則清除存儲器中用戶即時密碼、系統即時密碼、系統質數和校驗質數。
[0049]采用該隨機電子密碼系統,通過二維隨機數組生成單元隨機生成適合對應用戶的二維隨機數組,該二維隨機數組的大小和數組元素在毎次生成時都會出現變化,使偷窺者或針孔攝像機獲取的用戶每次輸入的密碼無效,同樣使得安裝的電子鍵盤盜取的輸入信息也無效;通過密碼單元來設定用戶的尋碼路徑,由于在二維隨機數組中尋找到ー個元素的路徑實在太多,起點位、方向位、距離位和垂直位都是未知的,即使偷窺者完完全全看到或者錄制了密碼的輸入過程,甚至通過安裝的電子鍵盤盜取輸入信息,都很難獲得準確的尋碼路徑來竊取密碼;通過即時密碼校驗單元將用戶即時密碼與系統即時密碼進行比較,若用戶即時密碼與某一位系統即時密碼相同,則記錄該位系統即時密碼所對應的系統質數,根據記錄系統質數來判斷用戶是根據哪個密碼單元輸入的用戶即時密碼,這樣用戶就能夠不按照密碼單元的順序隨機輸入用戶即時密碼,從而増加了電子密碼被竊取的難度。
[0050]如圖2所示,本發明所提供的隨機電子密碼方法,包括如下步驟:
[0051]步驟1,在用戶驗證電子密碼前,首先通過輸入模塊輸入用戶ID,用戶信息単元接收用戶ID,并從存儲器中讀取該用戶的用戶密碼,再由用戶信息單元提取該用戶的密碼信息,并將密碼信息中密碼單元的個數發送給主機的計數單元,將密碼単元中距離位的最大值和密碼單元中垂直位的最大值發送給主機的二維隨機數組生成単元,再由質數生成単元設定每個密碼單元對應的質數,并將這些質數作為系統質數寫入存儲器中;
[0052]步驟2,在用戶驗證電子密碼時,由二維隨機數組生成単元根據用戶信息單元發送的距離位的最大值和垂直位的最大值生成隨機二維數組,并通過顯示模塊進行顯示;
[0053]步驟3,尋碼單元在二維隨機數組中按照每個密碼單元的尋碼路徑尋找對應的元素作為系統即時密碼,并將系統即時密碼寫入存儲器中;
`[0054]步驟4,用戶在用戶密碼中不重復選擇ー個密碼単元,井根據該密碼單元的尋碼路徑在二維隨機數組中尋找ー個元素作為用戶即時密碼,再通過輸入模塊寫入存儲器中;[0055]步驟5,即時密碼校驗單元讀取存儲器中的用戶即時密碼和系統即時密碼并進行比較,若用戶即時密碼與某一密碼單元對應的系統即時密碼相同,則將該密碼單元所對應的系統質數作為校驗質數寫入存儲器中,若用戶即時密碼與所有密碼單元對應的系統即時密碼都不相同,則不寫入任何數據;
[0056]步驟6,即時密碼校驗単元清除存儲器中的系統即時密碼和用戶即時密碼;
[0057]步驟7,計數單元根據用戶信息單元發送的密碼單元的個數,判斷輸入用戶即時密碼的次數與密碼單元的個數是否相等,如果不相等則重復步驟2、3、4、5和6,如果相等則進行步驟8 ;
[0058]步驟8,密碼校驗單元將存儲器中的系統質數相累加,得到系統質數累加和,將存儲器中的校驗質數相累加,得到校驗質數累加和,若系統質數累加和與校驗質數累加和相等,則通過顯示模塊提示密碼輸入成功并由信號輸出模塊輸出控制信號,若系統質數累加和與校驗質數累加和不相等,則提示密碼輸入錯誤,井清除存儲器中的用戶即時密碼、系統即時密碼、系統質數和校驗質數以及計數単元的計數值,同時返回步驟2。
[0059]采用該種隨機電子密碼方法,步驟2中的ニ維隨機數組生成単元能夠隨機生成適合對應用戶的ニ維隨機數組,該ニ維隨機數組的大小和數組元素在毎次生成時都會出現變化,使偷窺者或針孔攝像機獲取的用戶每次輸入的密碼無效,同樣使得安裝的電子鍵盤盜取的輸入信息也無效;步驟5中的即時密碼校驗單元將用戶即時密碼與系統即時密碼進行比較,若用戶即時密碼與某一位系統即時密碼相同,則記錄該位系統即時密碼所對應的系統質數,根據記錄系統質數來判斷用戶是根據哪個密碼單元輸入的用戶即時密碼,這樣用戶就能夠不按照密碼單元的順序隨機輸入用戶即時密碼,從而増加了電子密碼被竊取的難度。
[0060]如圖3所示,本發明所設計的用戶密碼包括四個密碼単元,每個密碼單元為四個數字,左上的密碼單元中:“1”為起點位,表示將ニ維隨機數組的第一行第一列位置作為尋碼起點,“2”為方向位,表示以尋碼起點所在的列作為尋碼方向,“3”為距離位,表示從尋碼起點起按照尋碼方向進行尋碼的行數值為3,“4”為垂直位,表示以尋碼方向進行尋碼的最后一位作為拐點,以該拐點為起點,以該拐點所在的行進行尋碼的列數值為4 ;右上的密碼単元中:“2”為起點位,表示將ニ維隨機數組的第一行最后一列位置作為尋碼起點,“I”為方向位,表示以尋碼起點所在的列作為尋碼方向,“4”為距離位,表示從尋碼起點起按照尋碼方向進行尋碼的行數值為4,“5”為垂直位,表示以尋碼方向進行尋碼的最后一位作為拐點,以該拐點為起點,以該拐點所在的行進行尋碼的列數值為5 ;左下的密碼單元中:“3”為起點位,表示將ニ維隨機數組的最后一行最后一列位置作為尋碼起點,“2”為方向位,表示以尋碼起點所在的列作為尋碼方向,“ 5”為距離位,表示從尋碼起點按照尋碼方向進行尋碼的行數值為5,“4”為垂直位,表示以尋碼方向進行尋碼的最后一位作為拐點,以該拐點為起點,以該拐點所在的行進行尋碼的列數值為4 ;右下的密碼單元中:“4”為起點位,表示將ニ維隨機數組的最后一行第一列位置作為尋碼起點,“ I”為方向位,表示以尋碼起點的所在列作為尋碼方向,“7”為距離位,表示從尋碼起點按照尋碼方向進行尋碼的行數值為7,“3”為垂直位,表示以尋碼方向進行尋碼的最后一位作為拐點,以該拐點為起點,以該拐點所在的行進行尋碼的列數值為3。
[0061]如圖4所示,ニ維隨機數組生成単元生成了ー個9行5列的ニ維隨機數組,數組的元素包括數字、字母、標點或標示符號,四個虛線框所在的位置分別對應ニ維隨機數組的四個尋碼起點,每個尋碼起點都有對應的行或列作為尋碼的方向,與每個尋碼起點所在的行或列相垂直的列或行作為對應的垂直方向。
[0062]如圖3和圖4所示,按照圖3中左上的密碼單元進行尋碼的過程為:先確定起點位為“1”,表示將圖4中的第一行第一列位置“ 11”作為尋碼起點,再確定方向位為“2”,表示按照圖4中的第一行第一列位置“ 11”的所在列作為尋碼方向,再確定距離位為“3”,表示按照圖4中的第一行第一列位置“ 11”的所在列進行尋碼的行數為3,得到圖4中第一列位置“$”作為拐點,最后確定垂直位為“4”,表示以圖4中第一列位置“$”為起點,以第一列位置“$”所在行作為垂直方向進行尋碼的列數為4,得到圖4中第三行位置“ 12”作為該密碼單元所對應的系統即時密碼;
[0063]按照圖3中右上的密碼單元進行尋碼的過程為:先確定起點位為“2”,表示將圖3中的第一行最后一列位置“22”作為尋碼起點,再確定方向位為“1”,表示按照圖4中的第一行最后一列位置“22”的所在列作為尋碼方向,再確定距離位為“4”,表示按照圖4中的第一行最后一列位置“22”的所在列進行尋碼的行數為4,得到圖4中最后一列位置“&”作為拐點,最后確定垂直位為“5”,表示以圖4中最后一列位置“&”為起點,以最后一列位置“&”所在行作為垂直方向進行尋碼的列數為5,得到圖4中第四行位置“5”作為該密碼單元所對應的系統即時密碼;
[0064]按照圖3中左下的密碼單元進行尋碼的過程為:先確定起點位為“3”,表示將圖4中的最后一行最后一列位置“33”作為尋碼起點,再確定方向位為“2”,表示按照圖4中的最后一行最后一列位置“33”的所在列作為尋碼方向,再確定距離位為“5”,表示按照圖4中的最后一行最后一列位置“33”的所在列進行尋碼的行數為5,得到圖4中最后一列位置“ぎ’作為拐點,最后確定垂直位為“4”,表示以圖4中最后一列位置“ぎ’為起點,以最后一列位置“ぎ’所在行作為垂直方向進行尋碼的列數為4,得到圖4中第五行位置“ + ”作為該密碼單元所對應的系統即時密碼;
[0065]按照圖3中右下的密碼單元進行尋碼的過程為:先確定起點位為“4”,表示將圖4中的最后一行第一列位置“44”作為尋碼起點,再確定方向位為“1”,表示按照圖4中的最后一行第一列位置“44”的所在列作為尋碼方向,再確定距離位為“7”,表示按照圖4中的最后一行第一列位置“44”的所在列進行尋碼的行數為7,得到圖4中第一列位置“$”作為拐點,最后確定垂直位為“3”,表示以圖4中第一列位置“$”為起點,以第一列位置“$”所在行作為垂直方向進行尋碼的列數為3,得到圖4中第三行位置“6”作為該密碼單元所對應的系統即時密碼。經過圖3中四個密碼単元所設定的尋碼路徑,在圖4中的ニ維隨機數組進行尋碼得到的系統即時密碼為:“ 12”、“5”、“ + ”和“6”。
[0066]質數生成単元設定的四個密碼単元所對應的質數分別為2、3、7和11,設定的質數互不相同,兩兩相加或者三三相加都不等于其他任何ー個質數,當用戶四次輸入的用戶即時密碼分別與第一、ニ、三和四位系統即時密碼相同時,得到的系統質數累加和與校驗質數累加和都為23,則提示密碼輸入正確。
[0067]如果質數生成單元設定四個密碼單元所對應的質數分別為2、2、3和11,其中前兩個質數相同,得到的系統質數累加和為18,當用戶輸入兩次左上密碼單元所對應的用戶即時密碼、輸入一次左下密碼單元所對應的用戶即時密碼以及輸入一次右下密碼單元所對應的用戶即時密碼時,系統記錄的質數同樣為2、2、3和11,得到的校驗質數累加和也為18,此時也會提示輸入密碼正確,這樣便會存在即使密碼輸入錯誤也能進入系統的問題。所以,需要進ー步限定系統設定的質數中各個質數互不相等。
[0068]如果質數生成單元設定四個密碼單元所對應的質數分別為2、3、5和7,其中2加3等于5,出現兩兩相加和等于其中ー個質數,得到的系統質數累加和為17,當用戶輸入兩次左下密碼單元所對應的用戶即時密碼、輸入一次右下密碼單元所對應的用戶即時密碼以及輸入一次錯誤用戶即時密碼時,系統記錄的質數分別為5、5和7,得到的校驗質數累加和也為17,此時也會提示輸入密碼正確,這樣便會存在即使密碼輸入錯誤也能進入系統的問題。所以,需要進ー步限定系統設定的質數中部分質數的和不等于設定的其他任何ー個質數。
【權利要求】
1.一種隨機電子密碼系統,其特征在于:包括主機、顯不模塊、輸入模塊、存儲器和信號輸出模塊,所述主機包括用戶信息単元、二維隨機數組生成単元、質數生成単元、尋碼單元、即時密碼校驗單元、計數單元和密碼校驗單元, 所述用戶信息単元分別與輸入模塊、存儲器、二維隨機數組生成単元和計數單元相連,用于接收用戶從輸入模塊輸入的用戶ID,并從存儲器中讀取該用戶的用戶密碼,所述用戶密碼包括至少ー個密碼單元,所述密碼單元設定了尋碼路徑,用于用戶在二維隨機數組中尋找ー個元素作為用戶即時密碼,所述尋碼路徑由起點位、方向位、距離位和垂直位四位數字組成,所述起點位為1、2、3或4中的一位數字,分別表示將二維隨機數組的第一行第一列位置、第一行最后一列位置、最后一行最后一列位置或最后一行第一列位置作為尋碼起點,所述方向位為I或2,1表不以二維隨機數組的第一行第一列位置所在行、第一行最后一列位置所在列、最后一行最后一列位置所在行或最后一行第一列位置所在列作為尋碼方向,2表示以二維隨機數組的第一行第一列位置所在列、第一行最后一列位置所在行、最后一行最后一列位置所在列或最后一行第一列位置所在行作為尋碼方向,所述距離位為3~9中任意一位數字,表示以尋碼起點位作為起點,按照尋碼方向進行尋碼的行數或列數,所述垂直位為3~9中任意一位數字,表示以尋碼方向進行尋碼的最后一位作為拐點,以尋碼方向的垂直方向進行尋碼的行數或列數,所述用戶信息單元還用于提取與用戶ID相匹配的密碼信息,所述密碼信息包括用戶密碼中包含密碼單元的個數、密碼單元中距離位的最大值以及密碼單元中垂直位的最大值,并將密碼單元的個數發送給計數単元,將密碼単元中距離位的最大值和密碼單元中垂直位的最大值發送給二維隨機數組生成単元; 所述二維隨機數組生成単元還與顯示模塊、尋碼単元和計數單元相連,用于根據用戶信息單元發送的密碼單元中距離位的最大值和密碼單元中垂直位的最大值,生成行列數均大于距離位的最大值或垂直位的最大值的二維隨機數組,所述二維隨機數組中的元素互不相同,并將生成的二維隨機數組發送給顯示模塊和尋碼單元; 所述質數生成単元與存儲器相連,用于設定每個密碼單元對應的質數,并將這些質數作為系統質數寫入存儲器中,所述系統質數互不相等,且部分系統質數和不等于其余系統質數;` 所述尋碼單元還與存儲器相連,用于在接收的二維隨機數組中按照每個密碼單元的尋碼路徑尋找對應的元素作為系統即時密碼,并將系統及時密碼寫入存儲器中; 所述即時密碼校驗單元與存儲器相連,用于讀取存儲器中的用戶即時密碼和系統即時密碼并進行比較,若用戶即時密碼與某一密碼單元對應的系統即時密碼相同,則將該密碼単元所對應的系統質數作為校驗質數寫入存儲器中,若用戶即時密碼與所有密碼單元對應的系統即時密碼都不相同,則不寫入任何數據,在完成一次比較后清除存儲器中的系統即時密碼和用戶即時密碼; 所述計數單元還與密碼校驗單元相連,用于判斷用戶輸入用戶即時密碼的次數與用戶信息單元發送的密碼單元的個數是否相等,如果相等則觸發密碼校驗單元,如果不等則觸發二維隨機數組生成単元; 所述密碼校驗單元還與顯示模塊、存儲器和信號輸出模塊相連,用于讀取存儲器中的系統質數,并進行累加,得到系統質數累加和,再讀取存儲器中的校驗質數,并進行累加,得到校驗質數累加和,再判斷系統質數累加和與校驗質數累加和是否相等,若相等,則通過顯示模塊提示密碼輸入成功并由信號輸出模塊輸出控制信號,若不相等,則清除存儲器中的用戶即時密碼、系統即時密碼、系統質數和校驗質數以及計數単元的計數值。
2.根據權利要求1所述的隨機電子密碼系統,其特征在于:所述二維隨機數組中的元素為字母、數字、標點或標示符號。
3.根據權利要求1或2所述的隨機電子密碼系統,其特征在于:所述密碼単元的個數大于等于3小于等于6。
4.根據權利要求1或2所述的隨機電子密碼系統,其特征在于:所述系統質數大于等于2小于等于97。
5.根據權利要求1或2所述的隨機電子密碼系統,其特征在于:所述主機為ATM機、計算機或POS機。
6.根據權利要求1或2所述的隨機電子密碼系統,其特征在于:所述顯示模塊為顯示屏或觸摸屏。
7.根據權利要求1或2所述的隨機電子密碼系統,其特征在于:所述輸入模塊為鍵盤或觸摸屏。
8.ー種用于權利要求1所述隨機電子密碼系統的方法,其特征在于,包括如下步驟: 步驟1,在用戶驗證電子密碼前,首先通過輸入模塊輸入用戶ID,用戶信息単元接收用戶ID,并從存儲器中讀取該用戶的用戶密碼,再由用戶信息單元提取該用戶的密碼信息,并將密碼信息中密碼單元的個數發送給主機的計數單元,將密碼単元中距離位的最大值和密碼單元中垂直位的最大值發送給主機的二維隨機數組生成単元,再由質數生成単元設定每個密碼單元對應的質數,并將這些質數作為系統質數寫入存儲器中; 步驟2,在用戶驗證電子密碼時,由二維隨機數組生成単元根據用戶信息單元發送的距離位的最大值和垂直位的最大值生成隨機二維數組,并通過顯示模塊進行顯示; 步驟3,尋碼單元在二維隨機數組中按照每個密碼單元的尋碼路徑尋找對應的元素作為系統即時密碼,并將系統即時密碼寫入存儲器中; 步驟4,用戶在用戶密碼中不重復選擇ー個密碼単元,井根據該密碼單元的尋碼路徑在二維隨機數組中尋找ー個元素作為用戶即時密碼,再通過輸入模塊寫入存儲器中; 步驟5,即時密碼校驗單元讀取存儲器中的用戶即時密碼和系統即時密碼并進行比較,若用戶即時密碼與某一密碼單元對應的系統即時密碼相同,則將該密碼單元所對應的系統質數作為校驗質數寫入存儲器中,若用戶即時密碼與所有密碼單元對應的系統即時密碼都不相同,則不寫入任何數據; 步驟6,即時密碼校驗単元清除存儲器中的系統即時密碼和用戶即時密碼; 步驟7,計數單元根據用戶信息單元發送的密碼單元的個數,判斷輸入用戶即時密碼的次數與密碼單元的個數是否相等,如果不相等則重復步驟2、3、4、5和6,如果相等則進行步驟8; 步驟8,密碼校驗單元將存儲器中的系統質數相累加,得到系統質數累加和,將存儲器中的校驗質數相累加,得到校驗質數累加和,若系統質數累加和與校驗質數累加和相等,則通過顯示模塊提示密碼輸入成功并由信號輸出模塊輸出控制信號,若系統質數累加和與校驗質數累加和不相等,則提示密碼輸入錯誤,井清除存儲器中的用戶即時密碼、系統即時密碼、系統質數和校驗質數以及計數単元的計數值,同時返回步驟2。
9.根據權利要求8所述的電子密碼方法,其特征在于,當用戶首次使用時,在步驟I前還包括如下步驟: 步驟a,由顯示模塊顯示用戶ID設定界面,用戶通過輸入模塊輸入用戶ID,所述用戶ID存儲在存儲器中; 步驟b,顯示模塊顯示用戶密碼設定界面,用戶通過輸入模塊輸入用戶密碼,所述用戶密碼存儲在存儲器中并與用戶ID相關聯。
【文檔編號】G06F21/31GK103500299SQ201310476532
【公開日】2014年1月8日 申請日期:2013年10月12日 優先權日:2013年10月12日
【發明者】陳璞 申請人:陳璞