一種密碼安全輸入方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種密碼安全輸入方法及系統(tǒng),其中,密碼安全輸入方法包括:在終端設(shè)備上生成打亂字符順序的虛擬鍵盤;所述終端設(shè)備接收用戶根據(jù)生成的虛擬鍵盤輸入的字符密碼;所述終端設(shè)備對(duì)用戶輸入的字符密碼采用預(yù)定加密算法進(jìn)行加密;將所述加密后的字符密碼顯示于所述終端設(shè)備的交互界面。本發(fā)明提供的方法,采用虛擬鍵盤輸入字符密碼,并對(duì)字符密碼進(jìn)行加密,最后將加密后的字符密碼顯示于交互界面,保證了用戶在輸入密碼的過程中和終端設(shè)備顯示密碼時(shí)的安全性。
【專利說明】—種密碼安全輸入方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)安全【技術(shù)領(lǐng)域】,具體涉及一種密碼安全輸入方法及系統(tǒng)。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)的發(fā)展,人們可以通過終端設(shè)備(比如,計(jì)算機(jī)、移動(dòng)終端設(shè)備等)隨時(shí)連接網(wǎng)絡(luò),在網(wǎng)絡(luò)上進(jìn)行各種操作。
[0003]與此同時(shí),電腦黑客或手機(jī)黑客也越來越普遍,他們侵入計(jì)算機(jī)、移動(dòng)終端,進(jìn)行各種破壞活動(dòng),如何使計(jì)算機(jī)、移動(dòng)終端更加安全一直是伴隨著網(wǎng)絡(luò)發(fā)展的一個(gè)關(guān)鍵問題。
[0004]目前業(yè)界對(duì)使用計(jì)算機(jī)、移動(dòng)終端的防范,一般方法有:使用各種密碼體制,或者在計(jì)算機(jī)、移動(dòng)終端上輸入密碼時(shí)采用虛擬鍵盤。
[0005]以目前采用的虛擬鍵盤輸入密碼為例:當(dāng)用戶在向終端設(shè)備輸入密碼時(shí),采用隨機(jī)生成的虛擬鍵盤來對(duì)用戶的輸入進(jìn)行改造,所以呈現(xiàn)在計(jì)算機(jī)、移動(dòng)終端的密碼是一個(gè)“已被打亂的字符串”。在向認(rèn)證服務(wù)器端發(fā)送密碼時(shí),再對(duì)“已被打亂的字符串”進(jìn)行解碼。
[0006]采用虛擬鍵盤向終端設(shè)備輸入密碼的方法,由于虛擬鍵盤技術(shù)基于一個(gè)隨機(jī)生成的映射表(即虛擬鍵盤鍵值與原始鍵盤鍵值之間的映射關(guān)系表),如果黑客破解了這個(gè)映射表,則可以很容易地竊取密碼。所以,目前的虛擬鍵盤技術(shù)不能滿足較高的安全需求。
【發(fā)明內(nèi)容】
[0007]本發(fā)明所要解決的技術(shù)問題是提供一種密碼安全輸入方法及系統(tǒng),保證了用戶在輸入密碼的過程中和終端設(shè)備顯示密碼時(shí)的安全性。
[0008]本發(fā)明解決上述技術(shù)問題的技術(shù)方案如下:
[0009]一方面,提供了一種密碼安全輸入方法,所述方法包括:
[0010]在終端設(shè)備上生成打亂字符順序的虛擬鍵盤;
[0011]所述終端設(shè)備接收用戶根據(jù)生成的虛擬鍵盤輸入的字符密碼;
[0012]所述終端設(shè)備對(duì)用戶輸入的字符密碼采用預(yù)定加密算法進(jìn)行加密;
[0013]將所述加密后的字符密碼顯示于所述終端設(shè)備的交互界面。
[0014]另一方面,提供了一種密碼安全輸入系統(tǒng),所述系統(tǒng)包括:
[0015]虛擬鍵盤生成模塊,用于在終端設(shè)備上生成打亂字符順序的虛擬鍵盤;
[0016]密碼接收模塊,用于接收用戶根據(jù)生成的虛擬鍵盤輸入的字符密碼;
[0017]加密模塊,用于對(duì)用戶輸入的字符密碼采用預(yù)定加密算法進(jìn)行加密;
[0018]顯示模塊,用于將所述加密后的字符密碼顯示于所述終端設(shè)備的交互界面。
[0019]本發(fā)明提供的一種密碼安全輸入方法及系統(tǒng),首先,在終端設(shè)備上生成虛擬鍵盤,用戶采用生成的虛擬鍵盤向終端設(shè)備輸入字符密碼,隨后終端設(shè)備對(duì)用戶輸入的字符密碼進(jìn)行加密,最后將加密后的密碼顯示于終端設(shè)備的交互界面,對(duì)用戶輸入密碼的過程中和終端設(shè)備顯示密碼的過程中,利用加密算法對(duì)虛擬鍵盤技術(shù)進(jìn)行了加強(qiáng)優(yōu)化,可以有效避免惡意程序(比如,木馬程序、病毒程度)可能對(duì)常規(guī)鍵盤及密碼輸入框的數(shù)字、字符或符號(hào)的截取或竊取,從而提高了密碼輸入的安全性,能夠適應(yīng)更高的安全需求,具有更強(qiáng)的普適性。
【專利附圖】
【附圖說明】
[0020]圖1為本發(fā)明實(shí)施例一的一種密碼安全輸入方法流程圖;
[0021]圖2為本發(fā)明實(shí)施例二的一種密碼安全輸入系統(tǒng)示意圖。
【具體實(shí)施方式】
[0022]以下結(jié)合附圖對(duì)本發(fā)明的原理和特征進(jìn)行描述,所舉實(shí)例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。
[0023]實(shí)施例一、一種密碼安全輸入方法。下面結(jié)合圖1對(duì)本實(shí)施例提供的方法進(jìn)行詳細(xì)說明。
[0024]參見圖1,S101、在終端設(shè)備上生成打亂字符順序的虛擬鍵盤。
[0025]具體的,本實(shí)施例中的終端設(shè)備包括計(jì)算機(jī)、移動(dòng)終端等,尤其包括觸摸型移動(dòng)終端(比如,智能手機(jī)),在用戶向終端設(shè)備輸入密碼前,終端設(shè)備生成隨機(jī)的虛擬鍵盤,該生成的虛擬鍵盤為打亂字符順序的虛擬鍵盤,虛擬鍵盤上的鍵值與原始鍵盤的鍵值具有一一對(duì)應(yīng)的映射關(guān)系,虛擬鍵盤鍵值與原始鍵盤鍵值的映射關(guān)系形成一個(gè)映射表,并將該映射表存儲(chǔ)于終端設(shè)備中。比如,原始鍵盤鍵值依次排列為:QWER...,對(duì)原始鍵盤鍵值的排列順序進(jìn)行隨機(jī)打亂,之后生成虛擬鍵盤,比如,隨機(jī)生成的虛擬鍵盤鍵值的排列順序?yàn)?ERPY...,若用戶輸入的字符為Q,則映射為E。
[0026]S102、終端設(shè)備接收用戶根據(jù)生成的虛擬鍵盤輸入的字符密碼。
[0027]具體的,在終端設(shè)備上生成了虛擬鍵盤后,用戶根據(jù)生成的虛擬鍵盤向終端設(shè)備輸入字符密碼,終端設(shè)備接收用戶輸入的字符密碼。
[0028]S103、終端設(shè)備對(duì)用戶輸入的字符密碼采用預(yù)定加密算法進(jìn)行加密。
[0029]具體的,當(dāng)用戶通過終端設(shè)備生成的虛擬鍵盤向終端設(shè)備輸入了字符密碼后,終端設(shè)備采用預(yù)定的加密算法對(duì)輸入的字符密碼進(jìn)行再次加密。在具體加密的過程中,終端設(shè)備可以采用一種加密算法對(duì)輸入的字符密碼進(jìn)行加密,也可以采用多種相結(jié)合的加密算法對(duì)輸入的字符密碼進(jìn)行加密。以一種加密算法對(duì)輸入的字符密碼進(jìn)行加密為例,終端設(shè)備預(yù)先生成隨機(jī)數(shù),利用隨機(jī)數(shù)生成古典密碼,采用生成的古典密碼對(duì)輸入的字符密碼進(jìn)行加密。
[0030]終端設(shè)備生成古典密碼的一個(gè)具體例子,終端設(shè)備中的比特生成器可以將一個(gè)較短的隨機(jī)比特串(種子)生成一個(gè)較長(zhǎng)的比特串,隨機(jī)數(shù)=“較長(zhǎng)的比特串的二進(jìn)制碼之和” mod 26。
[0031]終端設(shè)備生成隨機(jī)數(shù)之后,利用隨機(jī)數(shù)生成古典密碼,所謂古典密碼是指移位密碼、置換密碼、仿射密碼、維吉尼亞米阿瑪、希爾密碼、置換密碼、流密碼等。本實(shí)施例考慮到對(duì)用戶輸入字符進(jìn)行加密的效率,采用運(yùn)行效率較高的古典密碼算法對(duì)用戶輸入的字符密碼進(jìn)行加密。
[0032]以凱撒密碼算法為例,凱撒密碼加密原理:
[0033]新的字符=(原始字符_k) /m ;
[0034]其中,k為移位的個(gè)數(shù),在本實(shí)施例中為上述終端設(shè)備生成的隨機(jī)數(shù),m為用戶輸入的字符密碼的總的字符數(shù),比如,k為1,則字符E映射為D。
[0035]S104、將加密后的字符密碼顯示于終端設(shè)備的交互界面。
[0036]具體的,當(dāng)終端設(shè)備將用戶輸入的字符密碼加密后,將加密后的字符密碼顯示于終端設(shè)備的交互界面上,由于此時(shí)顯示于終端設(shè)備交互界面的字符密碼是由用戶采用打亂了字符順序的虛擬鍵盤輸入,且經(jīng)過終端設(shè)備加密后的字符密碼,因此密碼的安全性很高,即時(shí)黑客竊取到顯示于交互界面的字符密碼,也很難破解。
[0037]另外,當(dāng)終端設(shè)備將加密后的字符密碼發(fā)送給認(rèn)證服務(wù)器進(jìn)行認(rèn)證時(shí),終端設(shè)備根據(jù)預(yù)先存儲(chǔ)的解密算法以及虛擬鍵盤鍵值與原始鍵盤鍵值的映射關(guān)系,對(duì)加密后的字符密碼進(jìn)行解密,得到原始字符密碼,然后將解密后獲得的原始密碼發(fā)送給認(rèn)證服務(wù)器進(jìn)行認(rèn)證。其中,終端設(shè)備按照認(rèn)證服務(wù)器的相關(guān)協(xié)議將解密后的原始密碼發(fā)送給服務(wù)器,比如,按照 TCP/IP (Transmiss1n Control Protocol/Internet Protocol,傳輸控制協(xié)議 /因特網(wǎng)互聯(lián)協(xié)議)、NetBEUI (NetB1S Extend User Interface, NetB1S 用戶擴(kuò)展接口)協(xié)議、CCID(USB Chip/Smart Card Interface Devices,USB 芯片智能卡接口設(shè)備)協(xié)議或HTTP (Hypertext Transmiss1n Protocol,超文本傳輸協(xié)議)等協(xié)議將解密后的原始密碼發(fā)送給認(rèn)證服務(wù)器,供認(rèn)證服務(wù)器進(jìn)行認(rèn)證。
[0038]需要說明的是,為了保證終端設(shè)備中的敏感數(shù)據(jù)的安全性,終端設(shè)備還對(duì)這些敏感數(shù)據(jù)進(jìn)行加密存儲(chǔ)。
[0039]實(shí)施例二、一種密碼安全輸入系統(tǒng)。下面結(jié)合圖2對(duì)本實(shí)施例提供的系統(tǒng)進(jìn)行詳細(xì)描述。
[0040]參見圖2,本實(shí)施例提供的系統(tǒng)包括虛擬鍵盤生成模塊201、密碼接收模塊202、加密模塊203、顯示模塊204、解密模塊205和發(fā)送模塊206。
[0041]其中,虛擬鍵盤生成模塊201主要用于在終端設(shè)備上生成打亂字符順序的虛擬鍵盤。
[0042]具體的,本實(shí)施例中的終端設(shè)備包括計(jì)算機(jī)、移動(dòng)終端等,在用戶向終端設(shè)備輸入密碼前,終端設(shè)備中的虛擬鍵盤生成模塊201生成隨機(jī)的虛擬鍵盤,該生成的虛擬鍵盤為打亂字符順序的虛擬鍵盤,虛擬鍵盤上的鍵值與原始鍵盤的鍵值具有一一對(duì)應(yīng)的映射關(guān)系,虛擬鍵盤鍵值與原始鍵盤鍵值的映射關(guān)系形成一個(gè)映射表,并將該映射表存儲(chǔ)于終端設(shè)備中。比如,原始鍵盤鍵值依次排列為:QWER...,對(duì)原始鍵盤鍵值的排列順序進(jìn)行隨機(jī)打舌L之后生成虛擬鍵盤,比如,隨機(jī)生成的虛擬鍵盤鍵值的排列順序?yàn)?ERPY...,若用戶輸入的字符為Q,則映射為E。
[0043]密碼接收模塊202主要用于接收用戶根據(jù)虛擬鍵盤生成模塊201生成的虛擬鍵盤輸入的字符密碼。
[0044]加密模塊203主要用于對(duì)終端設(shè)備接收的的字符密碼采用預(yù)定加密算法進(jìn)行加
LU O
[0045]具體的,虛擬鍵盤生成模塊201在終端設(shè)備上生成了虛擬鍵盤后,用戶根據(jù)生成的虛擬鍵盤向終端設(shè)備輸入字符密碼,終端設(shè)備的密碼接收模塊202接收用戶輸入的字符密碼。
[0046]當(dāng)密碼接收模塊202接收到用戶向終端設(shè)備輸入的字符密碼后,終端設(shè)備中的加密模塊203采用預(yù)定的加密算法對(duì)接收的字符密碼進(jìn)行再次加密。在具體加密的過程中,加密模塊203可以采用一種加密算法對(duì)輸入的字符密碼進(jìn)行加密,也可以采用多種相結(jié)合的加密算法對(duì)輸入的字符密碼進(jìn)行加密。以一種加密算法對(duì)輸入的字符密碼進(jìn)行加密為例,終端設(shè)備預(yù)先生成隨機(jī)數(shù),利用隨機(jī)數(shù)生成古典密碼,加密模塊203采用生成的古典密碼對(duì)輸入的字符密碼進(jìn)行加密。
[0047]生成古典密碼的一個(gè)具體例子,終端設(shè)備中的比特生成器可以將一個(gè)較短的隨機(jī)比特串(種子)生成一個(gè)較長(zhǎng)的比特串,隨機(jī)數(shù)=“較長(zhǎng)的比特串的二進(jìn)制碼之和”mod 26。
[0048]終端設(shè)備生成隨機(jī)數(shù)之后,利用隨機(jī)數(shù)生成古典密碼,所謂古典密碼是指移位密碼、置換密碼、仿射密碼、維吉尼亞米阿瑪、希爾密碼、置換密碼、流密碼等。本實(shí)施例考慮到對(duì)用戶輸入字符進(jìn)行加密的效率,加密模塊203采用運(yùn)行效率較高的古典密碼算法對(duì)用戶輸入的字符密碼進(jìn)行加密。
[0049]以凱撒密碼算法為例,凱撒密碼加密原理:
[0050]新的字符=(原始字符_k) /m ;
[0051]其中,k為移位的個(gè)數(shù),在本實(shí)施例中為上述終端設(shè)備生成的隨機(jī)數(shù),m為用戶輸入的字符密碼的總的字符數(shù),比如,k為1,則字符E映射為D。
[0052]顯示模塊204主要用于將加密模塊203加密后的字符密碼顯示于終端設(shè)備的交互界面。
[0053]解密模塊205主要用于根據(jù)預(yù)先存儲(chǔ)的解密算法以及虛擬鍵盤鍵值與原始鍵盤鍵值的映射關(guān)系,對(duì)加密模塊203加密后的字符密碼進(jìn)行解密,得到原始字符密碼。
[0054]發(fā)送模塊206主要用于將解密模塊205得到的原始字符密碼發(fā)送給認(rèn)證服務(wù)器。
[0055]具體的,當(dāng)加密模塊203將用戶輸入的字符密碼加密后,顯示模塊204將加密后的字符密碼顯示于終端設(shè)備的交互界面上,由于此時(shí)顯示于終端設(shè)備交互界面的字符密碼是由用戶采用虛擬鍵盤生成模塊201生成的打亂了字符順序的虛擬鍵盤輸入,且經(jīng)過加密模塊203加密后的字符密碼,因此密碼的安全性很高,即時(shí)黑客竊取到顯示于交互界面的字符密碼,也很難破解。
[0056]另外,當(dāng)終端設(shè)備將加密模塊203加密后的字符密碼發(fā)送給認(rèn)證服務(wù)器進(jìn)行認(rèn)證時(shí),解密模塊205根據(jù)終端設(shè)備預(yù)先存儲(chǔ)的解密算法以及虛擬鍵盤鍵值與原始鍵盤鍵值的映射關(guān)系,對(duì)加密后的字符密碼進(jìn)行解密,得到原始字符密碼,然后發(fā)送模塊206將解密后獲得的原始密碼發(fā)送給認(rèn)證服務(wù)器進(jìn)行認(rèn)證。其中,發(fā)送模塊206按照認(rèn)證服務(wù)器的相關(guān)協(xié)議將解密后的原始密碼發(fā)送給服務(wù)器,比如,按照TCP/IP、NetBEUI協(xié)議、CCID協(xié)議或HTTP等協(xié)議將解密后的原始密碼發(fā)送給認(rèn)證服務(wù)器,供認(rèn)證服務(wù)器進(jìn)行認(rèn)證。
[0057]本發(fā)明提供的一種密碼安全輸入方法及系統(tǒng),用戶采用終端設(shè)備生成的虛擬鍵盤向終端設(shè)備輸入密碼,然后,終端設(shè)備對(duì)用戶輸入的密碼進(jìn)行再次加密,最終顯示于終端設(shè)備的交互界面,本發(fā)明利用加密算法對(duì)虛擬鍵盤技術(shù)在終端設(shè)備上的應(yīng)用進(jìn)行了優(yōu)化,有效杜絕惡意程序(如木馬程序、病毒程序等)可能的對(duì)常規(guī)鍵盤及密碼輸入框的數(shù)字、字符及符號(hào)的截取和竊取,提供了數(shù)據(jù)的安全性,更能適應(yīng)日益發(fā)展的終端設(shè)備的安全需求。
[0058]以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種密碼安全輸入方法,其特征在于,所述方法包括: 步驟SlOl、在終端設(shè)備上生成打亂字符順序的虛擬鍵盤; 步驟S102、所述終端設(shè)備接收用戶根據(jù)生成的虛擬鍵盤輸入的字符密碼; 步驟S103、所述終端設(shè)備對(duì)用戶輸入的字符密碼采用預(yù)定加密算法進(jìn)行加密; 步驟S104、將所述加密后的字符密碼顯示于所述終端設(shè)備的交互界面。
2.如權(quán)利要求1所述的一種密碼安全輸入方法,其特征在于,所述步驟SlOl中在終端設(shè)備上生成的虛擬鍵盤鍵值與原始鍵盤鍵值具有一一對(duì)應(yīng)的映射關(guān)系。
3.如權(quán)利要求1所述的一種密碼安全輸入方法,其特征在于,所述步驟S103包括: 所述終端設(shè)備對(duì)用戶輸入的字符密碼采用一種加密算法或多種相結(jié)合的加密算法進(jìn)行加密。
4.如權(quán)利要求3所述的一種密碼安全輸入方法,其特征在于,所述步驟S103還包括: 所述終端設(shè)備生成隨機(jī)數(shù),并利用所述生成的隨機(jī)數(shù)生成古典密碼,利用該古典密碼對(duì)用戶輸入的字符密碼進(jìn)行加密。
5.如權(quán)利要求2所述的一種密碼安全輸入方法,其特征在于,所述執(zhí)行步驟S104之后還包括: 所述終端設(shè)備根據(jù)預(yù)先存儲(chǔ)的解密算法以及虛擬鍵盤鍵值與原始鍵盤鍵值的映射關(guān)系,對(duì)所述加密后的字符密碼進(jìn)行解密,得到原始字符密碼,并將所述得到的原始字符密碼發(fā)送給認(rèn)證服務(wù)器,以使認(rèn)證服務(wù)器對(duì)所述原始密碼進(jìn)行認(rèn)證。
6.如權(quán)利要求5所述的一種密碼安全輸入方法,其特征在于,將所述得到的原始字符密碼發(fā)送給認(rèn)證服務(wù)器具體包括: 按照認(rèn)證服務(wù)器的相關(guān)協(xié)議將所述原始字符密碼發(fā)送給所述認(rèn)證服務(wù)器,其中,所述相關(guān)協(xié)議包括TCP/IP、NetBEUI協(xié)議、CCID協(xié)議和HTTP。
7.—種密碼安全輸入系統(tǒng),其特征在于,所述系統(tǒng)包括: 虛擬鍵盤生成模塊,用于在終端設(shè)備上生成打亂字符順序的虛擬鍵盤; 密碼接收模塊,用于接收用戶根據(jù)生成的虛擬鍵盤輸入的字符密碼; 加密模塊,用于對(duì)用戶輸入的字符密碼采用預(yù)定加密算法進(jìn)行加密; 顯示模塊,用于將所述加密后的字符密碼顯示于所述終端設(shè)備的交互界面。
8.如權(quán)利要求7所述的一種密碼安全輸入系統(tǒng),其特征在于,所述在終端設(shè)備上生成的虛擬鍵盤鍵值與原始鍵盤鍵值具有一一對(duì)應(yīng)的映射關(guān)系。
9.如權(quán)利要求8所述的一種密碼安全輸入系統(tǒng),其特征在于,在顯示模塊,用于將所述加密后的字符密碼顯示于所述終端設(shè)備的交互界面之后還包括: 解密模塊,用于根據(jù)預(yù)先存儲(chǔ)的解密算法以及虛擬鍵盤鍵值與原始鍵盤鍵值的映射關(guān)系,對(duì)所述加密后的字符密碼進(jìn)行解密,得到原始字符密碼; 發(fā)送模塊,用于將所述得到的原始字符密碼發(fā)送給認(rèn)證服務(wù)器,以使認(rèn)證服務(wù)器對(duì)所述原始密碼進(jìn)行認(rèn)證。
10.如權(quán)利要求9所述的一種密碼安全輸入系統(tǒng),其特征在于,所述發(fā)送模塊,用于將所述得到的原始字符密碼發(fā)送給認(rèn)證服務(wù)器具體包括: 按照認(rèn)證服務(wù)器的相關(guān)協(xié)議將所述原始字符密碼發(fā)送給所述認(rèn)證服務(wù)器,其中,所述相關(guān)協(xié)議包括TCP/IP、NetBEUI協(xié)議、CCID協(xié)議和HTTP。
【文檔編號(hào)】G06F21/83GK104463040SQ201410797271
【公開日】2015年3月25日 申請(qǐng)日期:2014年12月18日 優(yōu)先權(quán)日:2014年12月18日
【發(fā)明者】楊鳳萍, 王玉崗 申請(qǐng)人:恒寶股份有限公司