鏈路保護(hù)方法及系統(tǒng)的制作方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)一種鏈路保護(hù)方法及系統(tǒng),通過(guò)對(duì)用戶(hù)輸入的PIN碼和隨機(jī)生成的認(rèn)證碼整合后進(jìn)行加密得到加密密鑰,并將得到的加密密鑰作為KEY與終端進(jìn)行工作數(shù)據(jù)交互的加密密鑰的方法,具有保證數(shù)據(jù)交互時(shí)加密密鑰安全性的有益效果,進(jìn)而保證了KEY與終端進(jìn)行交互的工作數(shù)據(jù)的安全性,防止了數(shù)據(jù)交互過(guò)程中惡意程序?qū)换?shù)據(jù)的攻擊。
【專(zhuān)利說(shuō)明】 鏈路保護(hù)方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息安全領(lǐng)域,尤其涉及一種鏈路保護(hù)方法及系統(tǒng)。
【背景技術(shù)】
[0002]現(xiàn)有的KEY產(chǎn)品(包括USBKey、藍(lán)牙Key、音頻Key等),與終端進(jìn)行數(shù)據(jù)交互的加密密鑰一般是固定的,或者,只與用戶(hù)個(gè)人識(shí)別碼相關(guān),為了便于記憶,用戶(hù)不可能頻繁的更改個(gè)人識(shí)別碼,所以,當(dāng)攻擊者利用木馬對(duì)終端和KEY的通信進(jìn)行竊聽(tīng)和劫持時(shí),上述這種方式將無(wú)法對(duì)其進(jìn)行防御,容易造成加密密鑰的外泄,對(duì)用戶(hù)的賬戶(hù)安全造成威脅;上述這種方式也無(wú)法防御中間人攻擊、重放攻擊和對(duì)用戶(hù)個(gè)人識(shí)別碼進(jìn)行攻擊等攻擊方式,在KEY與終端進(jìn)行工作數(shù)據(jù)交互時(shí),上述這種方式存在重大的安全隱患。
【發(fā)明內(nèi)容】
[0003]鑒于此,有必要提供一種鏈路保護(hù)方法及系統(tǒng),以保證加密密鑰的安全性,進(jìn)而保證KEY與終端進(jìn)行交互的工作數(shù)據(jù)安全。
[0004]本發(fā)明實(shí)施例公開(kāi)了一種鏈路保護(hù)方法,包括以下步驟:
[0005]KEY與終端通信連接;KEY隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示,供用戶(hù)在終端上輸入KEY顯示的所述認(rèn)證碼,終端檢測(cè)到用戶(hù)在終端上輸入PIN碼和KEY顯示的所述認(rèn)證碼后,終端將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Kp。,并將得到的加密密鑰Kpe發(fā)送給KEY,KEY采用與終端同樣的算法對(duì)與所述終端同樣的參數(shù)進(jìn)行加密運(yùn)算,得到一加密密鑰Kkey,KEY識(shí)別Kp。和Kkey相同時(shí),基于所述Kkey與終端進(jìn)行工作數(shù)據(jù)交互;或者,
[0006]終端隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示,供用戶(hù)在KEY上輸入終端顯示的所述認(rèn)證碼,KEY檢測(cè)到用戶(hù)在KEY上輸入PIN碼和KEY顯示的所述認(rèn)證碼后,KEY將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Kkey,并將得到的加密密鑰Kkey發(fā)送給終端,終端采用與KEY同樣的算法對(duì)與所述KEY同樣的參數(shù)進(jìn)行加密運(yùn)算,得到一加密密鑰Kpc,終端識(shí)別Κρ。和Kkey相同時(shí),基于所述Κρ。與KEY進(jìn)行工作數(shù)據(jù)交互。
[0007]優(yōu)選地,所述KEY與終端通信連接之后、KEY隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示之前,還包括:
[0008]KEY將自身的信道保護(hù)公鑰PKkey發(fā)送給終端;
[0009]所述終端將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Κρ。,包括:
[0010]終端將包括所述PIN碼、認(rèn)證碼和PKkey的參數(shù)進(jìn)行組合加密得到一加密密鑰Kpc。
[0011]優(yōu)選地,所述KEY與終端通信連接之后、終端隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示之前,還包括:
[0012]終端將自身的信道保護(hù)公鑰PKpe發(fā)送給KEY ;
[0013]所述KEY將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Kkey,包括:
[0014]KEY將包括所述PIN碼、認(rèn)證碼和PKpe的參數(shù)進(jìn)行組合加密得到一加密密鑰Kkey。
[0015]優(yōu)選地,所述KEY與終端通信連接之后,還包括:
[0016]KEY與終端互換信道保護(hù)公鑰PKkey和PKp。,其中,所述公鑰PKkey為KEY的公鑰,所述公鑰PKp。為終端的公鑰;
[0017]所述終端將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Κρ。,包括:
[0018]終端將包括所述PIN碼和認(rèn)證碼及ΡΚρ。和/或PKkey的參數(shù)進(jìn)行組合加密得到一加密密鑰κρ。;
[0019]或者,
[0020]所述KEY將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Kkey,包括:
[0021 ] KEY將包括所述PIN碼和認(rèn)證碼及PKpe和/或PKkey的參數(shù)進(jìn)行組合加密得到一加
密密鑰Kkey。
[0022]優(yōu)選地,所述KEY與終端通信連接前或通信連接后包括:
[0023]KEY產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),包括公鑰PKkey和KEY私鑰;
[0024]或者,
[0025]終端產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),包括公鑰ΡΚρ。和終端私鑰;
[0026]或者,
[0027]KEY與終端分別產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),所述KEY的密鑰對(duì)包括公鑰PKkey和KEY私鑰,所述終端的密鑰對(duì)包括公鑰PKp。和終端私鑰。
[0028]優(yōu)選地,所述KEY隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示的步驟之后、終端檢測(cè)到用戶(hù)在終端上輸入PIN碼和KEY顯示的所述認(rèn)證碼的步驟之前,還包括:
[0029]終端生成并顯示一隨機(jī)的軟鍵盤(pán),供用戶(hù)輸入所述PIN碼和認(rèn)證碼;
[0030]或者,
[0031]所述終端隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示的步驟之后、KEY檢測(cè)到用戶(hù)在KEY上輸入PIN碼和KEY顯示的所述認(rèn)證碼之前,還包括:
[0032]KEY生成并顯示一隨機(jī)的軟鍵盤(pán),供用戶(hù)輸入所述PIN碼和認(rèn)證碼。
[0033]優(yōu)選地,所述KEY識(shí)別Kpe和Kkey相同時(shí),與終端進(jìn)行工作數(shù)據(jù)交互,包括:
[0034]KEY識(shí)別Kpe和Kkey相同時(shí),發(fā)送所述Kkey給所述終端,供所述終端識(shí)別Kkey和Kpc是否相同,在終端識(shí)別Kkey和Κρ。也相同時(shí),KEY再基于Κρ?;騅key與終端進(jìn)行工作數(shù)據(jù)交互;
[0035]或者,終端識(shí)別Kpe和Kkey相同時(shí),與KEY進(jìn)行工作數(shù)據(jù)交互,包括:
[0036]終端識(shí)別Kpe和Kkey相同時(shí),發(fā)送所述Kpe給所述KEY,供所述KEY識(shí)別Kpe和Kkey是否相同,在所述KEY識(shí)別所述Kpe和Kkey相同時(shí),所述終端再基于Kpe或Kkey與KEY進(jìn)行工作數(shù)據(jù)的交互。
[0037]優(yōu)選地,所述終端檢測(cè)到用戶(hù)在終端上輸入PIN碼和KEY顯示的所述認(rèn)證碼包括:
[0038]終端通過(guò)鍵盤(pán)接收用戶(hù)輸入的所述PIN碼和認(rèn)證碼;
[0039]或者,[0040]所述KEY檢測(cè)到用戶(hù)在KEY上輸入PIN碼和KEY顯示的所述認(rèn)證碼包括:
[0041]所述KEY通過(guò)鍵盤(pán)接收用戶(hù)輸入的所述PIN碼和認(rèn)證碼。
[0042]本發(fā)明實(shí)施例還公開(kāi)一種鏈路保護(hù)系統(tǒng),包括KEY和終端;
[0043]所述KEY用于:與終端通信連接后,隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示,供用戶(hù)在終端上輸入KEY顯示的所述認(rèn)證碼;所述終端用于,檢測(cè)到用戶(hù)在終端上輸入PIN碼和KEY顯示的所述認(rèn)證碼后,將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Kp。,并將得到的加密密鑰Kpe發(fā)送給KEY ;所述KEY用于:采用與終端同樣的算法對(duì)與所述終端同樣的參數(shù)進(jìn)行加密運(yùn)算,得到一加密密鑰Kkey,在識(shí)別Κρ。和Kkey相同時(shí),基于所述Kkey與終端進(jìn)行工作數(shù)據(jù)交互;
[0044]或者:
[0045]所述終端用于--與KEY通信連接后,隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼,供用戶(hù)在KEY上輸入終端顯示的所述認(rèn)證碼;所述KEY用于:檢測(cè)到用戶(hù)在KEY上輸入PIN碼和KEY顯示的所述認(rèn)證碼后,將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Kkey,并將得到的加密密鑰Kkey發(fā)送給終端;所述終端還用于:采用與KEY同樣的算法對(duì)與所述KEY同樣的參數(shù)進(jìn)行加密運(yùn)算,得到一加密密鑰Κρ。,識(shí)別Κρ。和Kkey相同時(shí),基于所述Κρ。與KEY進(jìn)行工作數(shù)據(jù)交互。
[0046]優(yōu)選地,將自身的信道保護(hù)公鑰PKkey發(fā)送給終端;
[0047]所述終端用于,將包括所述PIN碼、認(rèn)證碼和PKkey的參數(shù)進(jìn)行組合加密得到一加密密鑰Κρ。。
[0048]優(yōu)選地,所述終端用于,將自身的信道保護(hù)公鑰PKpe發(fā)送給KEY ;
[0049]所述KEY用于,將包括所述PIN碼、認(rèn)證碼和PKpe的參數(shù)進(jìn)行組合加密得到一加密
常鑰Kkey。
[0050]優(yōu)選地,所述KEY用于,與終端互換信道保護(hù)公鑰PKkey和ΡΚρ。,將包括所述PIN碼和認(rèn)證碼及PKp。和/或PKkey的參數(shù)進(jìn)行組合加密得到一加密密鑰Kkey ;其中,所述公鑰PKkey為KEY的公鑰,所述公鑰ΡΚρ。為終端的公鑰;
[0051]所述終端用于,將包括所述PIN碼和認(rèn)證碼及PKpe和/或PKkey的參數(shù)進(jìn)行組合加密得到一加密密鑰κρ。。
[0052]優(yōu)選地,所述KEY用于,產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),包括公鑰PKkey和KEY私鑰;或者,與終端分別產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),所述KEY的密鑰對(duì)包括公鑰PKkey和KEY私鑰,所述終端的密鑰對(duì)包括公鑰ΡΚρ。和終端私鑰;
[0053]或者,所述終端用于,產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),包括公鑰ΡΚρ。和終端私鑰。
[0054]優(yōu)選地,終端還用于:
[0055]生成并顯示一隨機(jī)的軟鍵盤(pán),供用戶(hù)輸入所述PIN碼和認(rèn)證碼;或者,
[0056]所述KEY還用于:
[0057]生成并顯示一隨機(jī)的軟鍵盤(pán),供用戶(hù)輸入所述PIN碼和認(rèn)證碼。
[0058]優(yōu)選地,所述KEY還用于:
[0059]識(shí)別Κρ。和Kkey相同 時(shí),發(fā)送所述Kkey給所述終端,供所述終端識(shí)別Kkey和Κρ。是否相同,在終端識(shí)別Kkey和Κρ。也相同時(shí),KEY再基于Κρ?;騅key與終端進(jìn)行工作數(shù)據(jù)交互;
[0060]或者,所述終端還用于:[0061 ] 識(shí)別Kpe和Kkey相同時(shí),發(fā)送所述Kpe給所述KEY,供所述KEY識(shí)別Kpe和Kkey是否相同,在所述KEY識(shí)別所述Kpe和Kkey相同時(shí),所述終端再基于Kpe或Kkey與KEY進(jìn)行工作數(shù)據(jù)的交互。
[0062]優(yōu)選地,所述終端還用于:
[0063]通過(guò)鍵盤(pán)接收用戶(hù)輸入的所述PIN碼和認(rèn)證碼;或者,
[0064]所述KEY還用于:
[0065]通過(guò)鍵盤(pán)接收用戶(hù)輸入的所述PIN碼和認(rèn)證碼。
[0066]本發(fā)明實(shí)施例通過(guò)對(duì)用戶(hù)輸入的PIN碼和認(rèn)證碼整合后進(jìn)行加密得到加密密鑰,并將得到的加密密鑰作為KEY與終端進(jìn)行工作數(shù)據(jù)交互的加密密鑰的方法,具有保證數(shù)據(jù)交互時(shí)加密密鑰安全性的有益效果,進(jìn)而保證了 KEY與終端進(jìn)行交互的工作數(shù)據(jù)的安全性,防止了數(shù)據(jù)交互過(guò)程中惡意程序?qū)换?shù)據(jù)的攻擊。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0067]圖1是本發(fā)明鏈路保護(hù)方法第一實(shí)施例流程示意圖;
[0068]圖2是本發(fā)明鏈路保護(hù)方法第二實(shí)施例流程示意圖;
[0069]圖3是本發(fā)明鏈路保護(hù)方法第三實(shí)施例流程示意圖;
[0070]圖4是本發(fā)明鏈路保護(hù)方法第四實(shí)施例流程示意圖;
[0071]圖5是本發(fā)明鏈路保護(hù)方法第五實(shí)施例流程示意圖;
[0072]圖6是本發(fā)明鏈路保護(hù)系統(tǒng)一實(shí)施例功能模塊示意圖。
[0073]本發(fā)明實(shí)施例目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說(shuō)明。
【具體實(shí)施方式】
[0074]以下結(jié)合說(shuō)明書(shū)附圖及具體實(shí)施例進(jìn)一步說(shuō)明本發(fā)明的技術(shù)方案。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0075]本發(fā)明鏈路保護(hù)方法及系統(tǒng)的實(shí)施例中,所述KEY包括USBKey、藍(lán)牙Key、音頻Key等任一 KEY產(chǎn)品,所述終端包括PC和任一移動(dòng)設(shè)備如手機(jī)、平板電腦等終端,在以下實(shí)施例的具體描述中,將不再贅述。
[0076]圖1是本發(fā)明鏈路保護(hù)方法第一實(shí)施例流程示意圖;如圖1所示,本發(fā)明鏈路保護(hù)方法包括以下步驟:
[0077]S100、KEY與終端通信連接;
[0078]SlOU KEY隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示;
[0079]在KEY與終端通信連接,比如將具有USB接口的USBKEY插入PC中,實(shí)現(xiàn)KEY與終端的通信連接。
[0080]本實(shí)施例中,KEY上隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼,并顯示,供用戶(hù)將該認(rèn)證碼輸入終端。KEY產(chǎn)生的隨機(jī)認(rèn)證碼通常為6位十進(jìn)制數(shù);當(dāng)然,認(rèn)證碼的位數(shù)及形式可以根據(jù)需要進(jìn)行調(diào)整;比如,將KEY隨機(jī)產(chǎn)生的認(rèn)證碼設(shè)置為8位二進(jìn)制數(shù)、4位數(shù)字與字母的組合、或者,10位數(shù)字與字母和特殊符號(hào)的組合等,本實(shí)施例對(duì)認(rèn)證碼的具體表現(xiàn)形式不做限定。本實(shí)施例中,KEY隨機(jī)生成并顯示的認(rèn)證碼可以表示為CODE。用戶(hù)可以通過(guò)終端的硬件鍵盤(pán)輸入所述PIN碼和認(rèn)證碼。優(yōu)選的,終端也可以生成一軟鍵盤(pán),供用戶(hù)基于終端顯示的所述軟鍵盤(pán)輸入所述PIN碼和認(rèn)證碼。用戶(hù)根據(jù)終端的提示,基于終端提供的軟鍵盤(pán)輸入登錄時(shí)的PIN碼和認(rèn)證碼。本實(shí)施例中,終端生成的軟鍵盤(pán)為隨機(jī)的軟鍵盤(pán);比如,軟鍵盤(pán)上的字符是隨機(jī)排列的;或者,軟鍵盤(pán)上的游標(biāo)的初始位置是隨機(jī)的;或者,所述軟鍵盤(pán)的字符是隨機(jī)排列的,且所述軟鍵盤(pán)的游標(biāo)的初始位置也是隨機(jī)的。
[0081]S102、終端將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Kpc,并將得到的加密密鑰Kpe發(fā)送給KEY ;
[0082]當(dāng)終端檢測(cè)到用戶(hù)在終端上輸入PIN碼和KEY顯示的隨機(jī)認(rèn)證碼后,終端將包括用戶(hù)輸入的PIN碼和隨機(jī)認(rèn)證碼組合為(PIN,CODE),并對(duì)其進(jìn)行加密運(yùn)算得到一加密密鑰Kp。。具體的加密算法可以是摘要算法、對(duì)稱(chēng)加密算法或者其他加密算法;加密運(yùn)算的參數(shù)包括組合(PIN,CODE)。終端也可以將包括PIN、CODE的參數(shù)直接進(jìn)行加密運(yùn)算,將生成的加密結(jié)果作為加密密鑰Kp。。比如:使用SHA256散列算法求該組合(PIN,CODE)的加密密鑰為:Kpc=Hash (PIN, CODE);或者,也可以將其中的任一參數(shù)如CODE擴(kuò)展為密鑰,采用某一標(biāo)準(zhǔn)加密算法加密PIN參數(shù),將得到的結(jié)果作為Kpe ;或者,用某一已知密鑰,采用某一標(biāo)準(zhǔn)加密算法加密包括PIN和CODE參數(shù),將得到的結(jié)果作為Kp。;對(duì)上述組合(PIN,CODE)的具體使用可視具體需要和系統(tǒng)性能而定,本實(shí)施例不對(duì)其進(jìn)行限定。
[0083]終端將得到的加密結(jié)果Kp。發(fā)送給KEY。
[0084]S103、KEY采用與終端同樣的算法對(duì)與所述終端同樣的參數(shù)進(jìn)行加密運(yùn)算,得到一加密密鑰Kkey ;
[0085]S104、KEY識(shí)別Kpe和Kkey相同時(shí),基于Kkey與終端進(jìn)行工作數(shù)據(jù)交互。
[0086]由于KEY已知用戶(hù)輸入的PIN碼及隨機(jī)認(rèn)證碼C0DE,因此KEY可以同時(shí)采用與終端獲取其加密密鑰Kp。相同的算法計(jì)算出KEY自身的加密密鑰Kkey ;在一優(yōu)選的實(shí)施例中,KEY采用與終端相同的算法,根據(jù)已知的PIN和CODE得到的KEY的加密密鑰Kkey為:Kkey=Hash (PIN, CODE)。
[0087]KEY在接收到終端發(fā)送的終端生成的加密密鑰Kpe后,KEY即對(duì)Kpe和Kkey進(jìn)行比較,若Kp。與Kkey 二者相等,則可以進(jìn)一步基于加密密鑰Kkey與終端進(jìn)行工作數(shù)據(jù)交互。本實(shí)施例中,工作數(shù)據(jù)可以理解為KEY識(shí)別Κρ。與Kkey相等后,二者進(jìn)行交互過(guò)程中的所有數(shù)據(jù)。
[0088]在一優(yōu)選的實(shí)施例中,為了進(jìn)一步地提高KEY與終端通信連接的安全性,在KEY識(shí)別Κρ。與Kkey 二者相等時(shí),KEY也可以將自身生成的Kkey發(fā)送給終端,供終端識(shí)別Κρ。與Kkey是否相等;在終端也識(shí)別Κρ。與Kkey 二者相等時(shí),二者再基于加密密鑰Κρ?;騅lrey進(jìn)行工作數(shù)據(jù)交互。
[0089]本發(fā)明實(shí)施例對(duì)用戶(hù)輸入的PIN碼、KEY上隨機(jī)顯示的認(rèn)證碼整合后進(jìn)行加密,并由終端發(fā)送至KEY進(jìn)行比對(duì)確認(rèn)的方法,具有保證數(shù)據(jù)交互時(shí)加密密鑰安全性的有益效果,進(jìn)而保證了 KEY與終端進(jìn)行交互的工作數(shù)據(jù)交互的安全性,防止了數(shù)據(jù)交互過(guò)程中惡意程序?qū)换?shù)據(jù)的攻擊。
[0090]圖2是本發(fā)明鏈路保護(hù)方法第二實(shí)施例流程示意圖;本實(shí)施例與圖1所述實(shí)施例的區(qū)別是,將圖1所述實(shí)施例中執(zhí)行主體KEY與終端進(jìn)行交換。
[0091]如圖2所示,本發(fā)明鏈路保護(hù)方法還可以采用下述實(shí)施方式實(shí)現(xiàn):
[0092]步驟S100、KEY與終端通信連接;[0093]步驟S201、終端隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示;
[0094]在KEY與終端通信連接,比如將具有USB接口的USBKEY插入PC中,實(shí)現(xiàn)KEY與終端的通信連接。
[0095]本實(shí)施例中,終端上隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼,并顯示,供用戶(hù)將終端上顯示的隨機(jī)認(rèn)證碼輸入KEY。本實(shí)施例中,認(rèn)證碼位數(shù)及形式的設(shè)置規(guī)則與第一實(shí)施例相同,此處不再贅述。用戶(hù)可以通過(guò)KEY的硬件鍵盤(pán)輸入所述PIN碼和認(rèn)證碼。優(yōu)選的,KEY也可以生成一軟鍵盤(pán),供用戶(hù)基于KEY顯示的軟鍵盤(pán)輸入PIN碼和認(rèn)證碼。用戶(hù)根據(jù)KEY的提示,基于KEY提供的軟鍵盤(pán)輸入登錄時(shí)的PIN碼和認(rèn)證碼。本實(shí)施例中,KEY生成的軟鍵盤(pán)為隨機(jī)的軟鍵盤(pán);比如,軟鍵盤(pán)上的字符是隨機(jī)排列的;或者,軟鍵盤(pán)上的游標(biāo)的初始位置是隨機(jī)的;或者,所述軟鍵盤(pán)的字符是隨機(jī)排列的,且所述軟鍵盤(pán)的游標(biāo)的初始位置也是隨機(jī)的。
[0096]步驟S202、KEY將PIN碼和認(rèn)證碼進(jìn)行組合加密得到一加密密鑰Kkey,并將得到的加密密鑰Kkey發(fā)送給終端;
[0097]當(dāng)KEY檢測(cè)到用戶(hù)在KEY上輸入PIN碼和終端顯示的隨機(jī)認(rèn)證碼后,KEY將包括用戶(hù)輸入的PIN碼和隨機(jī)認(rèn)證碼組合為(PIN,CODE),并對(duì)其進(jìn)行加密運(yùn)算得到一加密密鑰Kkey0具體的加密算法可以是摘要算法、對(duì)稱(chēng)加密算法或者其他加密算法,加密運(yùn)算的參數(shù)包括組合(PIN,CODE)。KEY也可以將包括PIN、C0DE的參數(shù)直接進(jìn)行加密運(yùn)算,將生成的加密結(jié)果作為加密密鑰Kkey。比如:使用SHA256散列算法求該組合(PIN,CODE)的加密密鑰為:Kkey=Hash(PIN,CODE);或者,也可以將其中的任一參數(shù)如CODE擴(kuò)展為密鑰,采用某一標(biāo)準(zhǔn)加密算法加密PIN參數(shù),將得到的結(jié)果作為Kkey ;或者,用某一已知密鑰,采用某一標(biāo)準(zhǔn)加密算法加密包括PIN和CODE參數(shù),將得到的結(jié)果作為Kkey ;對(duì)上述組合(PIN,CODE)的具體使用可視具體需要和系統(tǒng)性能而定,本實(shí)施例不對(duì)其進(jìn)行限定。
[0098]KEY將得到的加密結(jié)果Kkey發(fā)送給終端。
[0099]步驟S203、終端采用與KEY同樣的算法對(duì)與KEY同樣的參數(shù)進(jìn)行加密運(yùn)算,得到一加密密鑰Kp。;
[0100]步驟S204、終端識(shí)別Kpe和Kkey相同時(shí),基于Kpe與KEY進(jìn)行工作數(shù)據(jù)交互。
[0101]由于終端已知用戶(hù)輸入的PIN碼和隨機(jī)認(rèn)證碼C0DE,因此終端可以同時(shí)采用與KEY獲取其加密密鑰Kkey相同的算法計(jì)算出終端自身的加密密鑰Kp。;在一優(yōu)選的實(shí)施例中,終端采用與KEY相同的算法,根據(jù)已知的PIN和CODE得到的終端的加密密鑰Kpe為:Kpc=Hash (PIN, CODE)。
[0102]終端在接收到KEY發(fā)送的KEY生成的加密密鑰Kkey后,終端即對(duì)Kpe和Kkey進(jìn)行比較,若Kp。與Kkey 二者相等,則終端可以進(jìn)一步基于Κρ。與KEY進(jìn)行工作數(shù)據(jù)的交互。若終端識(shí)別Κρ。和Kkey不相同時(shí),則終端不與KEY進(jìn)行工作數(shù)據(jù)的交互。本實(shí)施例中,工作數(shù)據(jù)可以理解為終端識(shí)別Κρ。與Kkey相等后,二者進(jìn)行交互過(guò)程中的所有數(shù)據(jù)。
[0103]在一優(yōu)選的實(shí)施例中,為了進(jìn)一步地提高KEY與終端通信連接的安全性,在終端識(shí)別Kpe與Kkey 二者相等時(shí),終端也可以將自身生成的Kpe發(fā)送給KEY,供KEY識(shí)別Kpe與Kkey是否相等;在KEY也識(shí)別Kpe與Kkey 二者相等時(shí),KEY和終端二者再基于加密密鑰Kpe或Kkey進(jìn)行工作數(shù)據(jù)交互。
[0104]本發(fā)明實(shí)施例對(duì)包括用戶(hù)輸入的PIN碼和終端上隨機(jī)生成的認(rèn)證碼整合后進(jìn)行加密,并由KEY發(fā)送至終端進(jìn)行比對(duì)確認(rèn)的方法,具有保證數(shù)據(jù)交互時(shí)加密密鑰安全性的有益效果,進(jìn)而保證了 KEY與終端進(jìn)行交互的工作數(shù)據(jù)交互的安全性,防止了數(shù)據(jù)交互過(guò)程中惡意程序?qū)换?shù)據(jù)的攻擊。
[0105]圖3是本發(fā)明鏈路保護(hù)方法第三實(shí)施例流程示意圖;本實(shí)施例中,以KEY和終端建立通信連接后,二者分別產(chǎn)生一對(duì)線(xiàn)路保護(hù)密鑰對(duì)為例進(jìn)行描述;當(dāng)然,該鏈路保護(hù)系統(tǒng)中,也可以?xún)H有KEY或者終端中的其中一個(gè)產(chǎn)生線(xiàn)路保護(hù)密鑰對(duì),并將產(chǎn)生的線(xiàn)路保護(hù)密鑰對(duì)中的公鑰發(fā)給對(duì)方以進(jìn)行后續(xù)的加密處理;對(duì)于僅有KEY或者終端中的其中一個(gè)產(chǎn)生線(xiàn)路保護(hù)密鑰對(duì)并將產(chǎn)生的線(xiàn)路保護(hù)密鑰對(duì)中的公鑰發(fā)給對(duì)方以進(jìn)行后續(xù)的加密處理的方案,相對(duì)簡(jiǎn)單,在此不再贅述。
[0106]如圖3所示,本發(fā)明鏈路保護(hù)方法包括以下步驟:
[0107]步驟SO1、KEY與終端通信連接后,與終端互換信道保護(hù)公鑰PKkey和PKpc ;
[0108]在KEY與終端通信連接,比如將具有USB接口的USBKEY插入PC中,KEY與終端分別產(chǎn)生一對(duì)線(xiàn)路保護(hù)密鑰對(duì);所述KEY的密鑰對(duì)包括公鑰PKkey和KEY私鑰,所述終端的密鑰對(duì)包括公鑰PKpe和終端私鑰。在KEY與終端物理連接后,雙方互換公鑰;即KEY將自身產(chǎn)生的密鑰對(duì)中的公鑰PKlrey發(fā)送給終端,終端將自身產(chǎn)生的密鑰對(duì)中的公鑰PKp。發(fā)送給KEY ;同時(shí),終端提示用戶(hù)輸入PIN (Personal Identification Number,個(gè)人識(shí)別碼)碼和認(rèn)證碼。
[0109]步驟S02、KEY隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示;
[0110]KEY上隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼,并顯示,供用戶(hù)將該認(rèn)證碼輸入終端。KEY產(chǎn)生的隨機(jī)認(rèn)證碼通常為6位十進(jìn)制數(shù);當(dāng)然,認(rèn)證碼的位數(shù)及形式可以根據(jù)需要進(jìn)行調(diào)整;比如,將KEY隨機(jī)產(chǎn)生的認(rèn)證碼設(shè)置為8位二進(jìn)制數(shù)、4位數(shù)字與字母的組合、或者,10位數(shù)字與字母和特殊符號(hào)的組合等,本實(shí)施例對(duì)認(rèn)證碼的具體表現(xiàn)形式不做限定。本實(shí)施例中,KEY隨機(jī)生成并顯示的認(rèn)證碼可以表示為CODE。用戶(hù)可以通過(guò)終端的硬件鍵盤(pán)輸入所述PIN碼和認(rèn)證碼。優(yōu)選的,終端也可以生成一軟鍵盤(pán),供用戶(hù)基于終端顯示的所述軟鍵盤(pán)輸入所述PIN碼和認(rèn)證碼。用戶(hù)根據(jù)終端的提示,基于終端提供的軟鍵盤(pán)輸入登錄時(shí)的PIN碼和認(rèn)證碼。本實(shí)施例中,終端生成的軟鍵盤(pán)為隨機(jī)的軟鍵盤(pán);比如,軟鍵盤(pán)上的字符是隨機(jī)排列的;或者,軟鍵盤(pán)上的游標(biāo)的初始位置是隨機(jī)的;或者,所述軟鍵盤(pán)的字符是隨機(jī)排列的,且所述軟鍵盤(pán)的游標(biāo)的初始位置也是隨機(jī)的。
[0111]步驟S03、終端將包括PIN碼和認(rèn)證碼及公鑰PKp。和/或PKkey的參數(shù)進(jìn)行組合加密得到一加密密鑰κρ。,并將得到的加密密鑰Κρ。發(fā)送給KEY ;
[0112]當(dāng)終端檢測(cè)到用戶(hù)在終端上輸入PIN碼和KEY顯示的隨機(jī)認(rèn)證碼后,終端將包括用戶(hù)輸入的PIN碼和隨機(jī)認(rèn)證碼及自身生成的公鑰ΡΚρ。和/或KEY傳入的公鑰PKkey組合為(PKpc, PIN, CODE)或(PKkey,PIN, CODE)或(PKkey,PKpc, PIN, CODE),并對(duì)其進(jìn)行加密運(yùn)算得到一加密密鑰Kp。。具體的加密算法可以是摘要算法、對(duì)稱(chēng)加密算法或者其他加密算法。加密運(yùn)算的參數(shù)包括組合(PKp。,PIN, CODE)或(PKkey,PIN, CODE)或(PKkey, PKpc, PIN, CODE);其中,(PKpc, PIN, CODE)或(PKkey,PIN, CODE)或(PKkey,PKpc, PIN, CODE)的組合方法可以有多種選擇,本實(shí)施例僅以參數(shù)包括(PKp。,PIN,CODE)為例進(jìn)行描述。終端也可以將包括PKp。,、PIN、CODE的參數(shù)直接進(jìn)行加密運(yùn)算,將生成的加密結(jié)果作為加密密鑰Kp。。比如:使用SHA256散列算法求該組合(PKp。,PIN,CODE)的加密密鑰為=Kpc=Hash(PKp。,PIN,CODE);或者,也可以將其中的任一參數(shù)如CODE擴(kuò)展為密鑰,采用某一標(biāo)準(zhǔn)加密算法加密包括PKp。和PIN的參數(shù),將得到的結(jié)果作為Κρ。;或者,終端也可以將其中的任兩個(gè)參數(shù)如CODE和PKp。擴(kuò)展為密鑰,采用某一標(biāo)準(zhǔn)加密算法加密包括PIN的參數(shù),將得到的結(jié)果作為Κρ。;或者,用某一已知密鑰,采用某一標(biāo)準(zhǔn)加密算法加密包括PKp。、PIN和CODE參數(shù),將得到的結(jié)果作為Kp。;對(duì)上述組合(PKp。,PIN,CODE)的具體使用可視具體需要和系統(tǒng)性能而定,本實(shí)施例不對(duì)其進(jìn)行限定。
[0113]終端將得到的加密結(jié)果Kp。發(fā)送給KEY。
[0114]步驟S04、KEY采用與終端同樣的算法對(duì)與終端同樣的參數(shù)進(jìn)行加密運(yùn)算,得到一加密密鑰Kkey ;
[0115]步驟S05、KEY識(shí)別Kpe和Kkey相同時(shí),基于Kkey與終端進(jìn)行工作數(shù)據(jù)交互。
[0116]由于KEY已知用戶(hù)輸入的PIN碼、隨機(jī)認(rèn)證碼CODE和終端發(fā)送的自身公鑰PKpc,因此KEY可以同時(shí)采用與終端獲取其加密密鑰Kp。相同的算法計(jì)算出KEY自身的加密密鑰Kkey ;在一優(yōu)選的實(shí)施例中,KEY采用與終端相同的算法,根據(jù)已知的PKp。、PIN和CODE得到的 KEY 的加密密鑰 Kkey 為:Kkey=Hash (PKpc, PIN, CODE)。
[0117]KEY在接收到終端發(fā)送的終端生成的加密密鑰Kpe后,KEY即對(duì)Kpe和Kkey進(jìn)行比較,若Kp。與Kkey 二者相等,則可以進(jìn)一步基于加密密鑰Kkey與終端進(jìn)行工作數(shù)據(jù)交互。本實(shí)施例中,工作數(shù)據(jù)可以理解為KEY識(shí)別Κρ。與Kkey相等后,二者進(jìn)行交互過(guò)程中的所有數(shù)據(jù)。
[0118]在一優(yōu)選的實(shí)施例中,為了進(jìn)一步地提高KEY與終端通信連接的安全性,在KEY識(shí)別Κρ。與Kkey 二者相等時(shí),KEY也可以將自身生成的Kkey發(fā)送給終端,供終端識(shí)別Κρ。與Kkey是否相等;在終端也識(shí)別κρ。與Kkey 二者相等時(shí),二者再基于加密密鑰Κρ?;騅lrey進(jìn)行工作數(shù)據(jù)交互。
[0119]本發(fā)明實(shí)施例對(duì)用戶(hù)輸入的PIN碼、KEY上隨機(jī)顯示的認(rèn)證碼及KEY和/或終端的線(xiàn)路保護(hù)公鑰的參數(shù)整合后進(jìn)行加密,并由終端發(fā)送至KEY進(jìn)行比對(duì)確認(rèn)的方法,具有保證數(shù)據(jù)交互時(shí)加密密鑰安全性的有益效果,進(jìn)而保證了 KEY與終端進(jìn)行交互的工作數(shù)據(jù)交互的安全性,防止了數(shù)據(jù)交互過(guò)程中惡意程序?qū)换?shù)據(jù)的攻擊。
[0120]圖4是本發(fā)明鏈路保護(hù)方法第四實(shí)施例流程示意圖;本實(shí)施例與圖3所述實(shí)施例的區(qū)別是,將圖3所述實(shí)施例中執(zhí)行主體KEY與終端進(jìn)行交換。本實(shí)施例中,以KEY和終端建立通信連接后,二者分別產(chǎn)生一對(duì)線(xiàn)路保護(hù)密鑰對(duì)為例進(jìn)行描述;當(dāng)然,該鏈路保護(hù)系統(tǒng)中,也可以?xún)H有KEY或者終端中的其中一個(gè)產(chǎn)生線(xiàn)路保護(hù)密鑰對(duì),并將產(chǎn)生的線(xiàn)路保護(hù)密鑰對(duì)中的公鑰發(fā)給對(duì)方以進(jìn)行后續(xù)的加密處理;對(duì)于僅有KEY或者終端中的其中一個(gè)產(chǎn)生線(xiàn)路保護(hù)密鑰對(duì)并將產(chǎn)生的線(xiàn)路保護(hù)密鑰對(duì)中的公鑰發(fā)給對(duì)方以進(jìn)行后續(xù)的加密處理的方案,相對(duì)簡(jiǎn)單,在此不再贅述。
[0121]如圖4所示,本發(fā)明鏈路保護(hù)方法還可以采用下述實(shí)施方式實(shí)現(xiàn):
[0122]步驟SO1、KEY與終端通信連接后,與終端互換信道保護(hù)公鑰PKkey和PKp。;
[0123]在KEY與終端通信連接,比如將具有USB接口的USBKEY插入PC中,KEY與終端分別產(chǎn)生一對(duì)線(xiàn)路保護(hù)密鑰對(duì);所述KEY的密鑰對(duì)包括公鑰PKkey和KEY私鑰,所述終端的密鑰對(duì)包括公鑰PKpe和終端私鑰。在KEY與終端物理連接后,雙方互換公鑰;即KEY將自身產(chǎn)生的密鑰對(duì)中的公鑰PKlrey發(fā)送給終端,終端將自身產(chǎn)生的密鑰對(duì)中的公鑰ΡΚρ。發(fā)送給KEY ;同時(shí),終端提示用戶(hù)輸入PIN碼和認(rèn)證碼。[0124]步驟S21、終端隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示;
[0125]本實(shí)施例中,終端上隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼,并顯示,供用戶(hù)將終端上顯示的隨機(jī)認(rèn)證碼輸入KEY。本實(shí)施例中,認(rèn)證碼位數(shù)及形式的設(shè)置規(guī)則與第一實(shí)施例相同,此處不再贅述。用戶(hù)可以通過(guò)KEY的硬件鍵盤(pán)輸入所述PIN碼和認(rèn)證碼。優(yōu)選的,KEY也可以生成一軟鍵盤(pán),供用戶(hù)基于KEY顯示的軟鍵盤(pán)輸入PIN碼和認(rèn)證碼。用戶(hù)根據(jù)KEY的提示,基于KEY提供的軟鍵盤(pán)輸入登錄時(shí)的PIN碼和認(rèn)證碼。本實(shí)施例中,KEY生成的軟鍵盤(pán)為隨機(jī)的軟鍵盤(pán);比如,軟鍵盤(pán)上的字符是隨機(jī)排列的;或者,軟鍵盤(pán)上的游標(biāo)的初始位置是隨機(jī)的;或者,所述軟鍵盤(pán)的字符是隨機(jī)排列的,且所述軟鍵盤(pán)的游標(biāo)的初始位置也是隨機(jī)的。
[0126]步驟S22、KEY將PIN碼和認(rèn)證碼及公鑰PKkey和/或PKpe進(jìn)行組合加密得到一加密密鑰Kkey,并將得到的加密密鑰Klrey發(fā)送給終端;
[0127]當(dāng)KEY檢測(cè)到用戶(hù)在KEY上輸入PIN碼和終端顯示的隨機(jī)認(rèn)證碼后,KEY將包括用戶(hù)輸入的PIN碼和隨機(jī)認(rèn)證碼及終端傳入的公鑰PKp。和/或自身生成的公鑰PKkey組合為(PKpc, PIN, CODE)或(PKkey,PIN, CODE)或(PKkey,PKpc, PIN, CODE),并對(duì)其進(jìn)行加密運(yùn)算得到一加密密鑰Kkey。具體的加密算法可以是摘要算法、對(duì)稱(chēng)加密算法或者其他加密算法。加密運(yùn)算的參數(shù)包括組合(PKp。,PIN, CODE)或(PKkey,PIN, CODE)或(PKkey, PKpc, PIN, CODE);其中,(PKpc, PIN, CODE)或(PKkey,PIN, CODE)或(PKkey,PKpc, PIN, CODE)的組合方法可以有多種選擇,本實(shí)施例僅以參數(shù)包括(PKkey,PIN,CODE)為例進(jìn)行描述。KEY也可以將包括PKkey、PIN、CODE的參數(shù)直接進(jìn)行加密運(yùn)算,將生成的加密結(jié)果作為加密密鑰Kkey。比如:使用SHA256散列算法求該組合(PKkey,PIN,CODE)的加密密鑰為:Kkey=Hash (PKkey,PIN,CODE);或者,也可以將其中的任一參數(shù)如CODE擴(kuò)展為密鑰,采用某一標(biāo)準(zhǔn)加密算法加密包括PKkey和PIN的參數(shù),將得到的結(jié)果作為Klrey ;或者,終端也可以將其中的任兩個(gè)參數(shù)如CODE和PKlrey擴(kuò)展為密鑰,采用某一標(biāo)準(zhǔn)加密算法加密包括PIN的參數(shù),將得到的結(jié)果作為Kkey ;或者,用某一已知密鑰,采用某一標(biāo)準(zhǔn)加密算法加密包括PKkey、PIN和CODE參數(shù),將得到的結(jié)果作為Kkey ;對(duì)上述組合(PKkey,PIN,CODE)的具體使用可視具體需要和系統(tǒng)性能而定,本實(shí)施例不對(duì)其進(jìn)行限定。
[0128]KEY將得到的加密結(jié)果Kkey發(fā)送給終端。
[0129]步驟S23、終端采用與KEY同樣的算法對(duì)與KEY同樣的參數(shù)進(jìn)行加密運(yùn)算,得到一加密密鑰Kp。;
[0130]步驟S24、終端識(shí)別Kpe和Kkey相同時(shí),基于Kpe與KEY進(jìn)行工作數(shù)據(jù)交互。
[0131]由于終端已知用戶(hù)輸入的PIN碼、隨機(jī)認(rèn)證碼CODE和KEY發(fā)送的自身公鑰PKkey,因此終端可以同時(shí)采用與KEY獲取其加密密鑰Kkey相同的算法計(jì)算出終端自身的加密密鑰Kpc ;在一優(yōu)選的實(shí)施例中,終端采用與KEY相同的算法,根據(jù)已知的PKkey、PIN和CODE得到的終端的加密密鑰 Kpc 為=Kpc=Hash (PKkey,PIN, CODE)。
[0132]終端在接收到KEY發(fā)送的KEY生成的加密密鑰Kkey后,終端即對(duì)Kpe和Kkey進(jìn)行比較,若Kp。與Kkey 二者相等,則終端可以進(jìn)一步基于Κρ。與KEY進(jìn)行工作數(shù)據(jù)的交互。若終端識(shí)別Κρ。和Kkey不相同時(shí),則終端不與KEY進(jìn)行工作數(shù)據(jù)的交互。本實(shí)施例中,工作數(shù)據(jù)可以理解為終端識(shí)別Κρ。與Kkey相等后,二者進(jìn)行交互過(guò)程中的所有數(shù)據(jù)。
[0133]在一優(yōu)選的實(shí)施例中,為了進(jìn)一步地提高KEY與終端通信連接的安全性,在終端識(shí)別Kpe與Kkey 二者相等時(shí),終端也可以將自身生成的Kpe發(fā)送給KEY,供KEY識(shí)別Kpe與Kkey是否相等;在KEY也識(shí)別Kpe與Kkey 二者相等時(shí),KEY和終端二者再基于加密密鑰Kpe或Kkey進(jìn)行工作數(shù)據(jù)交互。
[0134]本發(fā)明實(shí)施例對(duì)包括用戶(hù)輸入的PIN碼和終端上隨機(jī)生成的認(rèn)證碼及終端和/或KEY的線(xiàn)路保護(hù)公鑰的參數(shù)整合后進(jìn)行加密,并由KEY發(fā)送至終端進(jìn)行比對(duì)確認(rèn)的方法,具有保證數(shù)據(jù)交互時(shí)加密密鑰安全性的有益效果,進(jìn)而保證了 KEY與終端進(jìn)行交互的工作數(shù)據(jù)交互的安全性,防止了數(shù)據(jù)交互過(guò)程中惡意程序?qū)换?shù)據(jù)的攻擊。
[0135]圖5是本發(fā)明鏈路保護(hù)方法第五實(shí)施例流程示意圖;本實(shí)施例與圖3和圖4所述實(shí)施例的區(qū)別是,本實(shí)施例在步驟SO1、KEY與終端通信連接后,與終端互換信道保護(hù)公鑰PKkey和PKp。,之前還包括:
[0136]步驟SI 1、KEY與終端分別產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì)。
[0137]本實(shí)施例僅對(duì)步驟Sll進(jìn)行具體描述,有關(guān)本發(fā)明鏈路保護(hù)方法所涉及的其他步驟請(qǐng)參照相關(guān)實(shí)施例的具體描述,在此不再贅述。
[0138]基于圖3和圖4所述實(shí)施例的具體描述,本實(shí)施例中,在終端和KEY建立通信連接時(shí),為了生成加密密鑰,KEY與終端在通信連接前雙方分別產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì);所述KEY的密鑰對(duì)包括公鑰PKkey和KEY私鑰,所述終端的密鑰對(duì)包括公鑰PKpe和終端私鑰。
[0139]KEY與終端分別產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),也可以在KEY與終端通信連接后產(chǎn)生。
[0140]在一優(yōu)選的實(shí)施例中,也可以?xún)H有KEY或者終端中的其中一個(gè)產(chǎn)生線(xiàn)路保護(hù)密鑰對(duì),并將產(chǎn)生的線(xiàn)路保護(hù)密鑰對(duì)中的公鑰發(fā)給對(duì)方以進(jìn)行后續(xù)的加密處理。
[0141]KEY和終端分別產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),并互換各自生成的公鑰PKkey和PKp。,是后續(xù)加密密鑰生成的一個(gè)前提條件。
[0142]圖6是本發(fā)明鏈路保護(hù)系統(tǒng)一實(shí)施例功能模塊示意圖,如圖6所示,本發(fā)明鏈路保護(hù)系統(tǒng)包括KEYOl和終端02。
[0143]本實(shí)施例中,以KEYOl和終端02建立通信連接后,二者分別產(chǎn)生一對(duì)線(xiàn)路保護(hù)密鑰對(duì)為例進(jìn)行描述;當(dāng)然,該鏈路保護(hù)系統(tǒng)中,也可以?xún)H對(duì)PIN碼、KEYOl或終端02隨機(jī)顯示的認(rèn)證碼作為加密參數(shù)進(jìn)行加密運(yùn)算,也可以?xún)H有KEYOl或者終端02中的其中一個(gè)產(chǎn)生線(xiàn)路保護(hù)密鑰對(duì),并將產(chǎn)生的線(xiàn)路保護(hù)密鑰對(duì)中的公鑰發(fā)給對(duì)方以進(jìn)行后續(xù)的加密處理;對(duì)于僅對(duì)PIN碼和隨機(jī)認(rèn)證碼作為參數(shù)進(jìn)行加密運(yùn)算的方案相對(duì)簡(jiǎn)單,在此不再贅述。
[0144]在KEYOI與終端02通信連接,比如將具有USB接口的USBKEY插入PC中,KEYOl與終端02分別產(chǎn)生一對(duì)線(xiàn)路保護(hù)密鑰對(duì);所述KEYOl的密鑰對(duì)包括公鑰PKkey和KEY私鑰,所述終端02的密鑰對(duì)包括公鑰PKpe和終端私鑰。在KEYOl與終端02物理連接后,雙方互換公鑰;即KEYOl將自身產(chǎn)生的密鑰對(duì)中的公鑰PKkey發(fā)送給終端02,終端02將自身產(chǎn)生的密鑰對(duì)中的公鑰PKpe發(fā)送給KEYOl ;同時(shí),終端02提示用戶(hù)輸入PIN碼和認(rèn)證碼。
[0145]KEYOl上隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼,并顯示,供用戶(hù)將該認(rèn)證碼輸入終端02。KEYOl產(chǎn)生的隨機(jī)認(rèn)證碼通常為6位十進(jìn)制數(shù);當(dāng)然,認(rèn)證碼的位數(shù)及形式可以根據(jù)需要進(jìn)行調(diào)整;比如,將KEYOl隨機(jī)產(chǎn)生的認(rèn)證碼設(shè)置為8位二進(jìn)制數(shù)、4位數(shù)字與字母的組合,或者10位數(shù)字與字母和特殊符號(hào)的組合等,本實(shí)施例對(duì)認(rèn)證碼的具體表現(xiàn)形式不做限定。本實(shí)施例中,KEYOl隨機(jī)生成并顯示的認(rèn)證碼可以表示為CODE。用戶(hù)可以通過(guò)終端的硬件鍵盤(pán)輸入所述PIN碼和認(rèn)證碼。優(yōu)選的,終端02也可以產(chǎn)生一軟鍵盤(pán),供用戶(hù)基于終端02顯示的所述軟鍵盤(pán)輸入所述PIN碼和認(rèn)證碼。用戶(hù)根據(jù)終端02的提示,基于終端02提供的軟鍵盤(pán)輸入登錄時(shí)的PIN碼和認(rèn)證碼。本實(shí)施例中,終端02生成的軟鍵盤(pán)為隨機(jī)的軟鍵盤(pán);比如,軟鍵盤(pán)上的字符是隨機(jī)排列的;或者,軟鍵盤(pán)上的游標(biāo)的初始位置是隨機(jī)的;或者,所述軟鍵盤(pán)的字符是隨機(jī)排列的,且所述軟鍵盤(pán)的游標(biāo)的初始位置也是隨機(jī)的。
[0146]當(dāng)用戶(hù)在終端02上輸入PIN碼和KEYOl顯示的隨機(jī)認(rèn)證碼后,終端02將包括用戶(hù)輸入的PIN碼和隨機(jī)認(rèn)證碼及自身生成的公鑰PKpe和/或KEYOl傳入的公鑰PKkey組合為(PKp。,PIN, CODE)或(PKkey,PIN, CODE)或(PKkey,PKpc, PIN, CODE),并對(duì)其進(jìn)行加密運(yùn)算得到一加密密鑰Kp。。具體的加密算法可以是摘要算法、對(duì)稱(chēng)加密算法或者其他加密算法。加密運(yùn)算的參數(shù)包括組合(PKp。,PIN, CODE)或(PKkey, PIN, CODE)或(PKkey, PKpc, PIN, CODE);其中,(PKp。,PIN, CODE)或(PKkey, PIN, CODE)或(PKkey, PKp。,PIN, CODE)的組合方法可以有多種選擇,本實(shí)施例僅以參數(shù)包括(PKp。,PIN,CODE)為例進(jìn)行描述。終端02也可以將包括PKpc,、PIN、CODE的參數(shù)直接進(jìn)行加密運(yùn)算,將生成的加密結(jié)果作為加密密鑰Kp。。比如:使用SHA256散列算法求該組合(PKp。,PIN, CODE)的加密密鑰為:Kpc=Hash (PKp。,PIN, CODE);或者,也可以將其中的任一參數(shù)如CODE擴(kuò)展為密鑰,采用某一標(biāo)準(zhǔn)加密算法加密包括PKp。和PIN的參數(shù),將得到的結(jié)果作為Kpe ;或者,終端02也可以將其中的任兩個(gè)參數(shù)如CODE和PKpe擴(kuò)展為密鑰,采用某一標(biāo)準(zhǔn)加密算法加密包括PIN的參數(shù),將得到的結(jié)果作為Kp。;或者,用某一已知密鑰,采用某一標(biāo)準(zhǔn)加密算法加密包括PKp。、PIN和CODE參數(shù),將得到的結(jié)果作為Kpc ;對(duì)上述組合(PKp。,PIN,CODE)的具體使用可視具體需要和系統(tǒng)性能而定,本實(shí)施例不對(duì)其進(jìn)行限定。
[0147]終端02將得到的加密結(jié)果Kpe發(fā)送給KEYOI。
[0148]由于KEY01已知用戶(hù)輸入的PIN碼、隨機(jī)認(rèn)證碼CODE和終端02發(fā)送的自身公鑰PKpe,因此KEY01可以同時(shí)采用與終端02獲取其加密密鑰Kpe相同的算法計(jì)算出KEY01自身的加密密鑰Kkey。在一優(yōu)選的實(shí)施例中,KEY01采用與終端02相同的算法,根據(jù)已知的PKpc、PIN 和 CODE 得到的 KEY01 的加密密鑰 Kkey 為:Kkey=Hash (PKpc, PIN, CODE)。
[0149]KEY01在接收到終端02發(fā)送的終端02生成的加密密鑰Kpe后,KEY01即對(duì)Kpc和Kkey進(jìn)行比較,若Kpe與Kkey 二者相等,則KEY01可以進(jìn)一步與終端02進(jìn)行工作數(shù)據(jù)的交互。若KEY01識(shí)別Kpe和Kkey不相同時(shí),則不與終端02進(jìn)行工作數(shù)據(jù)的交互。本實(shí)施例中,工作數(shù)據(jù)可以理解為KEY01識(shí)別Kpe和Kkeyia相等后,二者進(jìn)行交互過(guò)程中的所有數(shù)據(jù)。
[0150]在一優(yōu)選的實(shí)施例中,為了進(jìn)一步地提高KEY01與終端02通信連接的安全性,在KEY01識(shí)別Kpe與Kkey 二者相等時(shí),KEY01也可以將自身生成的Kkey發(fā)送給終端02,供終端02識(shí)別Kpe與Kkey是否相等;在終端02也識(shí)別Kpe與Kkey 二者相等時(shí),KEY01和終端02再基于所述加密密鑰Kp。或Klrey進(jìn)行工作數(shù)據(jù)的交互。
[0151]本發(fā)明實(shí)施例中,執(zhí)行主體KEY與終端可進(jìn)行互換。有關(guān)互換執(zhí)行主體后的具體過(guò)程請(qǐng)參照上述相關(guān)實(shí)施例的具體描述,在此不再贅述。
[0152]本發(fā)明實(shí)施例對(duì)包括用戶(hù)輸入的PIN碼和認(rèn)證碼及KEY和/或終端的線(xiàn)路保護(hù)公鑰的參數(shù)整合后進(jìn)行加密,得到加密密鑰,并將加密密鑰作為KEY與終端進(jìn)行工作數(shù)據(jù)交互的加密密鑰的方法,具有保證數(shù)據(jù)交互時(shí)加密密鑰安全性的有益效果,進(jìn)而保證了 KEY與終端進(jìn)行交互的工作數(shù)據(jù)的安全性,防止了數(shù)據(jù)交互過(guò)程中惡意程序?qū)换?shù)據(jù)的攻擊。[0153]請(qǐng)?jiān)俅螀⒄請(qǐng)D6,基于圖6所述實(shí)施例的具體描述,本實(shí)施例中,在終端02和KEYOl建立通信連接時(shí),為了生成加密密鑰,KEYOl與終端02在通信連接前雙方分別產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì);所述KEYOl的密鑰對(duì)包括公鑰PKkey和KEY私鑰,所述終端02的密鑰對(duì)包括公鑰PKp。和終端私鑰。
[0154]KEYOl與終端02分別產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),也可以在KEYOl與終端02通信連接
后廣生。
[0155]KEYOl和終端02分別產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),并互換各自生成的公鑰PKke PPKpc,是后續(xù)加密密鑰生成的一個(gè)前提條件。
[0156]需要說(shuō)明的是,在本文中,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者裝置不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者裝置所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括該要素的過(guò)程、方法、物品或者裝置中還存在另外的相同要素。
[0157]上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
`[0158]以上所述僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制其專(zhuān)利范圍,凡是利用本發(fā)明說(shuō)明書(shū)及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,直接或間接運(yùn)用在其他相關(guān)的【技術(shù)領(lǐng)域】,均同理包括在本發(fā)明的專(zhuān)利保護(hù)范圍內(nèi)。
【權(quán)利要求】
1.一種鏈路保護(hù)方法,其特征在于,包括以下步驟: KEY與終端通信連接;KEY隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示,供用戶(hù)在終端上輸入KEY顯示的所述認(rèn)證碼,終端檢測(cè)到用戶(hù)在終端上輸入PIN碼和KEY顯示的所述認(rèn)證碼后,終端將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Kp。,并將得到的加密密鑰Kp。發(fā)送給ΚΕΥ,ΚΕΥ采用與終端同樣的算法對(duì)與所述終端同樣的參數(shù)進(jìn)行加密運(yùn)算,得到一加密密鑰Kkey,KEY識(shí)別Κρ。和Kkey相同時(shí),基于所述Kkey與終端進(jìn)行工作數(shù)據(jù)交互;或者, 終端隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示,供用戶(hù)在KEY上輸入終端顯示的所述認(rèn)證碼,KEY檢測(cè)到用戶(hù)在KEY上輸入PIN碼和KEY顯示的所述認(rèn)證碼后,KEY將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Kkey,并將得到的加密密鑰Kkey發(fā)送給終端,終端采用與KEY同樣的算法對(duì)與所述KEY同樣的參數(shù)進(jìn)行加密運(yùn)算,得到一加密密鑰Κρ。,終端識(shí)別Κρ。和Kkey相同時(shí),基于所述Κρ。與KEY進(jìn)行工作數(shù)據(jù)交互。
2.如權(quán)利要求1所述的方法,其特征在于,所述KEY與終端通信連接之后、KEY隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示之前,還包括: KEY將自身的信道保護(hù)公鑰PKkey發(fā)送給終端; 所述終端將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Κρ。,包括: 終端將包括所述PIN碼、認(rèn)證碼和PKkey的參數(shù)進(jìn)行組合加密得到一加密密鑰Κρ。。
3.如權(quán)利要求1所述的方法,其特征在于,所述KEY與終端通信連接之后、終端隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示之前,還包括:` 終端將自身的信道保護(hù)公鑰ΡΚρ。發(fā)送給KEY ; 所述KEY將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Kkey,包括: KEY將包括所述PIN碼、認(rèn)證碼和PKpe的參數(shù)進(jìn)行組合加密得到一加密密鑰Kkey。
4.如權(quán)利要求1所述的方法,其特征在于,所述KEY與終端通信連接之后,還包括: KEY與終端互換信道保護(hù)公鑰PKkey和PKp。,其中,所述公鑰PKkey為KEY的公鑰,所述公鑰PKp。為終端的公鑰; 所述終端將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Κρ。,包括:終端將包括所述PIN碼和認(rèn)證碼及ΡΚρ。和/或PKkey的參數(shù)進(jìn)行組合加密得到一加密密鑰Κρ。; 或者, 所述KEY將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Kkey,包括: KEY將包括所述PIN碼和認(rèn)證碼及PKpe和/或PKkey的參數(shù)進(jìn)行組合加密得到一加密密鑰 Kkey。
5.如權(quán)利要求1所述的方法,其特征在于,所述KEY與終端通信連接前或通信連接后包括: KEY產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),包括公鑰PKkey和KEY私鑰; 或者, 終端產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),包括公鑰PKp。和終端私鑰; 或者, KEY與終端分別產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),所述KEY的密鑰對(duì)包括公鑰PKkey和KEY私鑰,所述終端的密鑰對(duì)包括公鑰PKp。和終端私鑰。
6.如權(quán)利要求1所述的方法,其特征在于,所述KEY隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示的步驟之后、終端檢測(cè)到用戶(hù)在終端上輸入PIN碼和KEY顯示的所述認(rèn)證碼的步驟之前,還包括: 終端生成并顯示一隨機(jī)的軟鍵盤(pán),供用戶(hù)輸入所述PIN碼和認(rèn)證碼; 或者, 所述終端隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示的步驟之后、KEY檢測(cè)到用戶(hù)在KEY上輸入PIN碼和KEY顯示的所述認(rèn)證碼之前,還包括: KEY生成并顯示一隨機(jī)的軟鍵盤(pán),供用戶(hù)輸入所述PIN碼和認(rèn)證碼。
7.如權(quán)利要求1所述的方法,其特征在于,所述KEY識(shí)別Κρ。和Kkey相同時(shí),基于所述Kkey與終端進(jìn)行工作數(shù)據(jù)交互,包括: KEY識(shí)別Κρ。和Kkey相同時(shí),發(fā)送所述Kkey給所述終端,供所述終端識(shí)別Kkey和Κρ。是否相同,在終端識(shí)別Kkey和Κρ。也相同時(shí),KEY再基于Κρ?;騅key與終端進(jìn)行工作數(shù)據(jù)交互;或者,終端識(shí)別Κρ。和Kkey相同時(shí),與KEY進(jìn)行工作數(shù)據(jù)交互,包括: 終端識(shí)別Kpe和Kkey相同時(shí),發(fā)送所述Kpe給所述KEY,供所述KEY識(shí)別Kpe和Kkey是否相同,在所述KEY識(shí)別所述Kpe和Kkey相同時(shí),所述終端再基于Kpe或Kkey與KEY進(jìn)行工作數(shù)據(jù)的交互。
8.如權(quán)利要求1所述的方法,其特征在于,所述終端檢測(cè)到用戶(hù)在終端上輸入PIN碼和KEY顯示的所述認(rèn)證碼包括: 終端通過(guò)鍵盤(pán)接收用戶(hù)輸入的所述PIN碼和認(rèn)證碼; 或者, 所述KEY檢測(cè)到用戶(hù)在KEY上輸入PIN碼和KEY顯示的所述認(rèn)證碼包括: 所述KEY通過(guò)鍵盤(pán)接收用戶(hù)輸入的所述PIN碼和認(rèn)證碼。
9.一種鏈路保護(hù)系統(tǒng),其特征在于,包括KEY和終端; 所述KEY用于:與終端通信連接后,隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼并顯示,供用戶(hù)在終端上輸入KEY顯示的所述認(rèn)證碼;所述終端用于,檢測(cè)到用戶(hù)在終端上輸入PIN碼和KEY顯示的所述認(rèn)證碼后,將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Kp。,并將得到的加密密鑰Kpe發(fā)送給KEY ;所述KEY用于:采用與終端同樣的算法對(duì)與所述終端同樣的參數(shù)進(jìn)行加密運(yùn)算,得到一加密密鑰Kkey ;在識(shí)別Κρ。和Kkey相同時(shí),基于所述Kkey與終端進(jìn)行工作數(shù)據(jù)交互; 或者: 所述終端用于:與KEY通信連接后,隨機(jī)產(chǎn)生一串字符作為認(rèn)證碼,供用戶(hù)在KEY上輸入終端顯示的所述認(rèn)證碼;所述KEY用于:檢測(cè)到用戶(hù)在KEY上輸入PIN碼和KEY顯示的所述認(rèn)證碼后,將包括所述PIN碼和認(rèn)證碼的參數(shù)進(jìn)行組合加密得到一加密密鑰Kkey,并將得到的加密密鑰Kkey發(fā)送給終端;所述終端還用于:采用與KEY同樣的算法對(duì)與所述KEY同樣的參數(shù)進(jìn)行加密運(yùn)算,得到一加密密鑰Κρ。,識(shí)別Κρ。和Kkey相同時(shí),基于所述Κρ。與KEY進(jìn)行工作數(shù)據(jù)交互。
10.如權(quán)利要求9所述的系統(tǒng),其特征在于,所述KEY用于,將自身的信道保護(hù)公鑰PKlrey發(fā)送給終端;所述終端用于,將包括所述PIN碼、認(rèn)證碼和PKkey的參數(shù)進(jìn)行組合加密得到一加密密鑰 Kpc。
11.如權(quán)利要求9所述的系統(tǒng),其特征在于,所述終端用于,將自身的信道保護(hù)公鑰PKp。發(fā)送給KEY ; 所述KEY用于,將包括所述PIN碼、認(rèn)證碼和PKpe的參數(shù)進(jìn)行組合加密得到一加密密鑰Kkey O
12.如權(quán)利要求9所述的系統(tǒng),其特征在于,所述KEY用于,與終端互換信道保護(hù)公鑰PKkey和ΡΚρ。,將包括所述PIN碼和認(rèn)證碼及ΡΚρ。和/或PKkey的參數(shù)進(jìn)行組合加密得到一加密密鑰Kkey ;其中,所述公鑰PKkey為KEY的公鑰,所述公鑰ΡΚρ。為終端的公鑰; 所述終端用于,將包括所述PIN碼和認(rèn)證碼及ΡΚρ。和/或PKkey的參數(shù)進(jìn)行組合加密得到一加密密鑰Κρ。。
13.如權(quán)利要求9所述的系統(tǒng),其特征在于,所述KEY用于,產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),包括公鑰PKkey和KEY私鑰;或者,與終端分別產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),所述KEY的密鑰對(duì)包括公鑰PKkey和KEY私鑰,所述終端的密鑰對(duì)包括公鑰ΡΚρ。和終端私鑰; 或者,所述終端用于,產(chǎn)生一線(xiàn)路保護(hù)密鑰對(duì),包括公鑰ΡΚρ。和終端私鑰。
14.如權(quán)利要求9所述的系統(tǒng),其特征在于,所述終端還用于: 生成并顯示一隨機(jī)的軟鍵盤(pán),供用戶(hù)輸入所述PIN碼和認(rèn)證碼;或者,. 所述KEY還用于: 生成并顯示一隨機(jī)的軟鍵盤(pán),供用戶(hù)輸入所述PIN碼和認(rèn)證碼。
15.如權(quán)利要求9所述的系統(tǒng),其特征在于,所述KEY還用于: 識(shí)別Κρ。和Kkey相同時(shí),發(fā)送所述Kkey給所述終端,供所述終端識(shí)別Kkey和Κρ。是否相同,在終端識(shí)別Kkey和Κρ。也相同時(shí),KEY再基于Κρ?;騅key與終端進(jìn)行工作數(shù)據(jù)交互; 或者,所述終端還用于: 識(shí)別Kpe和Kkey相同時(shí),發(fā)送所述Kpe給所述KEY,供所述KEY識(shí)別Kpe和Kkey是否相同,在所述KEY識(shí)別所述Kpe和Kkey相同時(shí),所述終端再基于Kpe或Kkey與KEY進(jìn)行工作數(shù)據(jù)的交互。
16.如權(quán)利要求9所述的系統(tǒng),其特征在于,所述終端還用于: 通過(guò)鍵盤(pán)接收用戶(hù)輸入的所述PIN碼和認(rèn)證碼;或者, 所述KEY還用于: 通過(guò)鍵盤(pán)接收用戶(hù)輸入的所述PIN碼和認(rèn)證碼。
【文檔編號(hào)】H04L9/08GK103441854SQ201310379056
【公開(kāi)日】2013年12月11日 申請(qǐng)日期:2013年8月27日 優(yōu)先權(quán)日:2013年8月27日
【發(fā)明者】陳柳章 申請(qǐng)人:深圳市文鼎創(chuàng)數(shù)據(jù)科技有限公司