本發(fā)明涉及一種基于unicode編碼的密碼輸入方法。
背景技術(shù):
近些年來隨著信息技術(shù)的高速發(fā)展,特別是移動互聯(lián)的極速發(fā)展,人們對信息資源的依賴程度越來越大,不僅每天從網(wǎng)絡(luò)上獲取各種信息資源,也將自己的各種信息存儲或共享在網(wǎng)絡(luò)上。這些信息中包含了大量個人或是企事業(yè)單位的隱私信息,有個人的銀行帳號信息、企業(yè)的財物報表或是事業(yè)單位的各種政策文件等等,這些隱私信息需要通過合法的授權(quán)訪問才能保證這些信息的安全。常用的一種授權(quán)方案就是進行身份認證。目前應(yīng)用最為廣泛的身份認證方式為輸入用戶名和密碼來進行身份認證,這是一種基于文本密碼的身份認證方式,只需要通過鍵盤就可以輸入由文本構(gòu)成的用戶名和密碼,簡單易用,通用性強。然而,由于這些文本本身沒有太多的含意,如果設(shè)置位數(shù)較長而且又沒有任何規(guī)律的高強度密碼,用戶很難長時間記住這樣的密碼。特別是在用戶有多個不同類型的賬戶,這些賬戶又要設(shè)置不同密碼的情況下,這些密碼更難以記住和區(qū)分。于是用戶為了能夠較容易地記住這些密碼,不得不設(shè)置一些有規(guī)律的或是有意義的數(shù)字或英文單詞作為密碼,像“123456”、“888888”及“password”等這樣有規(guī)律有意義的弱口令深得許多用戶的偏愛。同時,這些密碼的密碼空間較少,較容易受到暴力破解。這些文本密碼的密碼空間雖然有95n(n為密碼的長度),但實際上大多數(shù)人較喜歡用單純的數(shù)字或是小字的字母或是數(shù)字加小寫字母,所以密碼空間通常只有36n,可見這個密碼空間要比實際的密碼空間小很多,更易受到暴力破解。
為解決上述問題,出現(xiàn)了許多的密碼方案,如生物密碼、聲音密碼及圖形密碼等,這些密碼中大多都受到各種條件的限制未能普及,目前較普及的一種替代方案為圖形密碼,最常用的圖形密碼為手機的手勢解鎖密碼,這些密碼都使用了圖形作為密碼的輸入,而且輸入也很方便,不過這兩種方法的使用都在智能終端或是手機上,需要有專門的輸入設(shè)備(如觸摸屏等)。
技術(shù)實現(xiàn)要素:
有鑒于此,本發(fā)明的目的在于提供一種基于unicode編碼的密碼輸入方法,不需要專門的輸入設(shè)備,跟當前的文本密碼輸入一樣方便,并且兼容了當前的文本密碼輸入方案。
為實現(xiàn)上述目的,本發(fā)明采用如下技術(shù)方案:
一種基于unicode編碼的密碼輸入方法,其特征在于,包括以下步驟:
步驟s1:對密碼字符進行分類,具體分為數(shù)字與符號、大寫字母、小寫字母、圖形、語言和印刷數(shù)字六大類;
步驟s2:將分類好的密碼字符設(shè)置在輸入面板上,通過點擊輸入面板上的字符進行密碼的輸入;
步驟s3:在輸入面板上每輸入一個密碼字符,輸入面板上的字符位置隨機重新排列以便增加密碼輸入的安全性。
進一步的,所述輸入面板上分布有若干子面板分別用于設(shè)置分類后的密碼字符。
進一步的,所述語言包括漢語、拉丁語和日語。
進一步的,所述密碼字符為unicode編碼字符。
本發(fā)明與現(xiàn)有技術(shù)相比具有以下有益效果:本發(fā)明主要解決當前文字密碼的密碼空間小且不易記憶的問題。當前最常用的密碼為文本密碼,文本密碼簡單易用,但該密碼的輸入字符只有95個,根據(jù)一般用戶的習(xí)慣,常用的字符約為40個左右,所以文本密碼空間較小,較易通過暴力破解的方式破解,并且文本密碼本身不具體太多的含義,不便于記憶,如果設(shè)置為有規(guī)律的字符串,則安全性大大降低,較容易被破解。于是,增加密碼空間和便于用戶記憶就成了對當前文本密碼方案改進方向。采用unicode編碼的字符方案很好的解決了當前文本存在的問題。unicode密碼可以將當前的文本密碼空間由95n擴展到60000n大大提高了密碼的密碼空間從而也大大提高了密碼的安全性。并且這些密碼字符中不僅包含了常用的文本和數(shù)字,還包括了大量的各國文字和各種圖形,這些圖形和文字本身包含了較多的意義,便于用戶的記憶。
附圖說明
圖1是本發(fā)明一實施例的輸入面板示意圖。
圖2是本發(fā)明輸入面板上另一子面板的示意圖。
圖3是本發(fā)明一實施例重新排列的密碼字符示意圖。
圖4是本發(fā)明另一實施例重新排列的密碼字符示意圖。
具體實施方式
下面結(jié)合附圖及實施例對本發(fā)明做進一步說明。
本發(fā)明提供一種基于unicode編碼的密碼輸入方法,包括以下步驟:
步驟s1:對密碼字符進行分類,具體分為數(shù)字與符號、大寫字母、小寫字母、圖形、語言和印刷數(shù)字六大類;其中語言可根據(jù)用戶的實際需求進行設(shè)置,如不同國家可以設(shè)置不同的語言,如圖2所示,包括漢語、拉丁語和日語;
步驟s2:請參照圖1至圖4,提供一輸入面板,將分類好的密碼字符設(shè)置在輸入面板上,通過點擊輸入面板上的字符進行密碼的輸入;由于字符密碼較多,優(yōu)選的,所述輸入面板上分布有若干子面板分別用于設(shè)置分類后的密碼字符;本實例中把阿拉伯數(shù)字、大小字英文字母各分為一類,各設(shè)置在一塊子面板上,常用符號分散在這三塊面板上,除此之外還有圖形、語言和印刷數(shù)字各分一類,并且都獨立分布在一塊子面板上,其中語言又分了中文、拉丁和日語三個語言的子類。
步驟s3:在輸入面板上每輸入一個密碼字符,輸入面板上的字符位置隨機重新排列以便增加密碼輸入的安全性;一實施例中,在輸入密碼字符“1”后,輸入面板上的字符排列如圖3所示,這個排列是隨機的;另一實施例中,再輸入“2”后,輸入面板上的字符再一次隨機排列,如圖4所示。
于本實施例中,所述密碼字符為unicode編碼字符。本實施例中除了常用0-9這10個阿拉伯數(shù)字,aa-zz這52個大小寫英文字符及!·#¥%……—*()等33符號之外,還包含有??????♀?♂???????????等26個圖形,一丁丂七丄丅丆萬丈三上下丌不與等30個中文字符、25拉丁字符和25日語字符以及①②③④⑤⑥⑦⑧⑨⑩????等40個印刷數(shù)字,如圖1和圖2所示。
較多用戶喜歡用自己的生日為密碼,這種密碼有實際的意義所以容易記住,但這種密碼方式較易被破解,因為生日的組合數(shù)量較少,較容易暴力破解。采用unicode編碼之后會增加密碼的組合數(shù)量,這樣增加被破解的難度從而提高安全性。就以1990年1月1日出生的人設(shè)置生日密碼為19900101為例,以前的寫法只有一種,那就是19900101,而在本實施例中,有19900101、?90010⑴、⒆⑼00①0⑴、⑴⑼⑼00⑴0⑴、一⑼⑼00⑴0⑴等成千上萬種寫法,大大提高了密碼空間的數(shù)量,提高了密碼的安全性;
除上使用上述的字符作為了密碼之外,還可以使用圖形來作為密碼,起到增強記憶的作用,使得密碼更容易記住,如19900101密碼可以設(shè)置星座的圖形作為密碼,1月1日出生的為摩羯座,圖形為?,則可以設(shè)置密碼為1990?或1990?01等。使用這種圖形作為密碼不僅提高了密碼的趣味性,還有利于用戶對密碼的記憶,以增加了用戶對密碼的記憶性。
以上所述僅為本發(fā)明的較佳實施例,凡依本發(fā)明申請專利范圍所做的均等變化與修飾,皆應(yīng)屬本發(fā)明的涵蓋范圍。