本發(fā)明涉及安全認(rèn)證,尤其涉及一種基于usbkey的防釣魚安全身份認(rèn)證方法。
背景技術(shù):
1、現(xiàn)有以u(píng)sbkey為數(shù)字證書載體的身份認(rèn)證硬件進(jìn)行數(shù)字簽名時(shí),是以u(píng)sbkey密碼作為唯一保護(hù)機(jī)制,密碼驗(yàn)證通過后,服務(wù)端的ca簽名驗(yàn)證服務(wù)器通過驗(yàn)證用戶數(shù)字證書簽名的有效性,并使用數(shù)字證書中公鑰驗(yàn)證數(shù)字簽名成功后方可確認(rèn)當(dāng)前操作用戶的操作。
2、當(dāng)合法usbkey持有者由于疏忽將usbkey密碼泄露給第三方后,第三方只要持有該usbkey即可以在任何地方,任何時(shí)間冒充合法持有者進(jìn)行身份認(rèn)證操作,造成用戶的個(gè)人重要信息泄露。
3、而且釣魚網(wǎng)站將真實(shí)網(wǎng)站的簽名報(bào)文通過網(wǎng)絡(luò)傳遞的方式傳遞到合法usbkey持有者的電腦本機(jī)上,并在釣魚網(wǎng)站頁(yè)面通過偽裝url方式,在偽造的頁(yè)面上提示usbkey持有者進(jìn)行更新用戶信息,發(fā)紅包,抽獎(jiǎng)等具有引誘性的標(biāo)題要求插入usbkey,輸入密碼,usbkey持有者由于引誘性的誘導(dǎo)盲目進(jìn)行操作,導(dǎo)致用戶的資金,信息損失。
技術(shù)實(shí)現(xiàn)思路
1、鑒于上述的分析,本發(fā)明實(shí)施例旨在提供一種基于usbkey的防釣魚安全身份認(rèn)證方法,用以解決現(xiàn)有僅通過密碼保護(hù)的usbkey在身份認(rèn)證中存在安全漏洞的問題。
2、本發(fā)明實(shí)施例提供了一種基于usbkey的防釣魚安全身份認(rèn)證方法,包括以下步驟:
3、首次使用usbkey時(shí),usbkey生成第一動(dòng)態(tài)加密因子,加密后發(fā)送至服務(wù)器,服務(wù)器根據(jù)用戶指紋信息設(shè)置簽名授權(quán)信息,根據(jù)解密后的第一動(dòng)態(tài)加密因子存儲(chǔ)簽名授權(quán)信息;
4、使用usbkey進(jìn)行登錄時(shí),usbkey生成第二動(dòng)態(tài)加密因子,加密后發(fā)送至服務(wù)器,服務(wù)器根據(jù)解密后的第二動(dòng)態(tài)加密因子、簽名授權(quán)信息和用戶信息構(gòu)建成簽名報(bào)文下發(fā)至usbkey;
5、usbkey根據(jù)第二動(dòng)態(tài)加密因子對(duì)簽名報(bào)文解密后,根據(jù)usbkey存儲(chǔ)的簽名授權(quán)信息和內(nèi)置芯片,對(duì)解密后的簽名報(bào)文中的簽名授權(quán)信息依次驗(yàn)證,當(dāng)簽名授權(quán)信息和usbkey密碼全部驗(yàn)證成功時(shí),根據(jù)usbkey存儲(chǔ)的個(gè)人簽名證書和密鑰對(duì),對(duì)解密后的簽名報(bào)文進(jìn)行簽名并發(fā)送至服務(wù)器,服務(wù)器對(duì)簽名驗(yàn)證成功時(shí)用戶身份認(rèn)證通過。
6、基于上述方法的進(jìn)一步改進(jìn),usbkey的內(nèi)置芯片包括:主控芯片,以及通過串口與主控芯片連接的定位芯片、時(shí)間校準(zhǔn)芯片和指紋模塊,定位芯片用于獲取當(dāng)前usbkey所在位置的經(jīng)緯度,時(shí)間校準(zhǔn)芯片用于獲取當(dāng)前時(shí)間,指紋模塊用于實(shí)時(shí)采集指紋信息,在簽發(fā)usbkey時(shí)錄入指紋信息;主控芯片獲取其它芯片讀取的數(shù)據(jù),存儲(chǔ)數(shù)據(jù)至主控芯片的存儲(chǔ)器中,以及將錄入的指紋信息的哈希值存儲(chǔ)至服務(wù)器數(shù)據(jù)庫(kù)中。
7、基于上述方法的進(jìn)一步改進(jìn),usbkey在簽發(fā)時(shí),下載服務(wù)器根證書、個(gè)人簽名證書和密鑰對(duì),并存儲(chǔ)至主控芯片的存儲(chǔ)器中;第一動(dòng)態(tài)加密因子和第二動(dòng)態(tài)加密因子是usbkey的主控芯片調(diào)用隨機(jī)數(shù)發(fā)生器生成的32字節(jié)的隨機(jī)數(shù);usbkey利用服務(wù)器根證書中的公鑰對(duì)動(dòng)態(tài)加密因子進(jìn)行加密,服務(wù)器利用服務(wù)器根證書中的私鑰對(duì)動(dòng)態(tài)加密因子進(jìn)行解密。
8、基于上述方法的進(jìn)一步改進(jìn),根據(jù)用戶指紋信息設(shè)置簽名授權(quán)信息,包括:當(dāng)采集的用戶指紋信息同時(shí)通過usbkey的指紋驗(yàn)證和服務(wù)器的指紋驗(yàn)證時(shí),通過在實(shí)時(shí)地圖中圈定區(qū)域,計(jì)算出經(jīng)緯度范圍值得到區(qū)域數(shù)據(jù);通過選擇時(shí)間段設(shè)置時(shí)段數(shù)據(jù);通過錄入url地址列表設(shè)置url數(shù)據(jù);通過獲取服務(wù)器中最新版本的頁(yè)面簽名控件的二進(jìn)制數(shù)據(jù),并計(jì)算出哈希值得到頁(yè)面簽名控件數(shù)據(jù);區(qū)域數(shù)據(jù)、時(shí)段數(shù)據(jù)、url數(shù)據(jù)和頁(yè)面簽名控件數(shù)據(jù)作為簽名授權(quán)信息。
9、基于上述方法的進(jìn)一步改進(jìn),usbkey的指紋驗(yàn)證是將采集的用戶指紋信息與usbkey中該用戶錄入的指紋信息進(jìn)行比對(duì),如果一致,則表示通過驗(yàn)證;服務(wù)器的指紋驗(yàn)證是將采集的用戶指紋信息的哈希值與服務(wù)器中存儲(chǔ)的該用戶的指紋信息的哈希值進(jìn)行比對(duì),如果一致,則表示通過驗(yàn)證。
10、基于上述方法的進(jìn)一步改進(jìn),根據(jù)解密后的第一動(dòng)態(tài)加密因子存儲(chǔ)簽名授權(quán)信息,包括:將簽名授權(quán)信息中各項(xiàng)數(shù)據(jù)的哈希值存儲(chǔ)至服務(wù)器數(shù)據(jù)庫(kù)中,同時(shí)服務(wù)器利用解密后的第一動(dòng)態(tài)加密因子對(duì)簽名授權(quán)信息加密后下發(fā)至usbkey,usbkey的主控芯片利用第一動(dòng)態(tài)加密因子對(duì)簽名授權(quán)信息解密后,以密文方式存儲(chǔ)至主控芯片的存儲(chǔ)器中。
11、基于上述方法的進(jìn)一步改進(jìn),對(duì)解密后的簽名報(bào)文中的簽名授權(quán)信息依次驗(yàn)證,是按照頁(yè)面簽名控件數(shù)據(jù)驗(yàn)證、區(qū)域數(shù)據(jù)驗(yàn)證、時(shí)段數(shù)據(jù)驗(yàn)證和url數(shù)據(jù)驗(yàn)證的順序,任意一個(gè)驗(yàn)證項(xiàng)驗(yàn)證失敗,結(jié)束用戶身份認(rèn)證,提示用戶身份認(rèn)證失敗。
12、基于上述方法的進(jìn)一步改進(jìn),頁(yè)面簽名控件數(shù)據(jù)驗(yàn)證、區(qū)域數(shù)據(jù)驗(yàn)證、時(shí)段數(shù)據(jù)驗(yàn)證和url數(shù)據(jù)驗(yàn)證均包括:根據(jù)驗(yàn)證項(xiàng),獲取解密后的簽名報(bào)文中的簽名授權(quán)信息中對(duì)應(yīng)項(xiàng)數(shù)據(jù),作為第一數(shù)據(jù);usbkey的主控芯片讀取并解密存儲(chǔ)器中存儲(chǔ)的相同項(xiàng)數(shù)據(jù),將數(shù)據(jù)哈希值作為第二數(shù)據(jù);如果第一數(shù)據(jù)與第二數(shù)據(jù)一致,則驗(yàn)證成功,否則,驗(yàn)證失敗。
13、基于上述方法的進(jìn)一步改進(jìn),區(qū)域數(shù)據(jù)驗(yàn)證和時(shí)段數(shù)據(jù)驗(yàn)證還包括:usbkey的主控芯片獲取驗(yàn)證項(xiàng)對(duì)應(yīng)的內(nèi)置芯片讀取的數(shù)據(jù),作為第三數(shù)據(jù),如果第三數(shù)據(jù)在第二數(shù)據(jù)范圍內(nèi),則驗(yàn)證成功,否則,驗(yàn)證失敗。
14、基于上述方法的進(jìn)一步改進(jìn),url數(shù)據(jù)驗(yàn)證還包括:獲取頁(yè)面簽名控件讀取的當(dāng)前網(wǎng)頁(yè)的url,作為第四數(shù)據(jù),如果第四數(shù)據(jù)在第二數(shù)據(jù)范圍內(nèi),則驗(yàn)證成功,否則,驗(yàn)證失敗。
15、與現(xiàn)有技術(shù)相比,本發(fā)明至少可實(shí)現(xiàn)如下有益效果之一:
16、1、引入?yún)^(qū)域檢測(cè),時(shí)段檢測(cè),url檢測(cè)和頁(yè)面簽名控件檢測(cè),并對(duì)usbkey增加內(nèi)置芯片,從軟件層面到硬件層面都增加了安全防護(hù),擴(kuò)展除了密碼之外對(duì)空間、時(shí)間和控件信息的鑒別,提高身份認(rèn)證的安全性;通過引入指紋模塊,保證只有合法用戶才能修改usbkey中存儲(chǔ)的簽名授權(quán)信息,防止被第三方惡意修改。
17、2、usbkey的所有操作只能內(nèi)部完成,外部無(wú)法篡改數(shù)據(jù)和違規(guī)操作,提高安全性。
18、3、服務(wù)器只存儲(chǔ)數(shù)據(jù)的哈希值,且引入usbkey生成的動(dòng)態(tài)加密因子,確保在網(wǎng)絡(luò)傳輸中無(wú)法被破解成明文且無(wú)法被重復(fù)使用,大大提高了數(shù)據(jù)傳輸?shù)陌踩浴?/p>
19、本發(fā)明中,上述各技術(shù)方案之間還可以相互組合,以實(shí)現(xiàn)更多的優(yōu)選組合方案。本發(fā)明的其他特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分優(yōu)點(diǎn)可從說明書中變得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過說明書以及附圖中所特別指出的內(nèi)容中來實(shí)現(xiàn)和獲得。
1.一種基于usbkey的防釣魚安全身份認(rèn)證方法,其特征在于,包括以下步驟:
2.根據(jù)權(quán)利要求1所述的基于usbkey的防釣魚安全身份認(rèn)證方法,其特征在于,所述usbkey的內(nèi)置芯片包括:主控芯片,以及通過串口與主控芯片連接的定位芯片、時(shí)間校準(zhǔn)芯片和指紋模塊,所述定位芯片用于獲取當(dāng)前usbkey所在位置的經(jīng)緯度,所述時(shí)間校準(zhǔn)芯片用于獲取當(dāng)前時(shí)間,所述指紋模塊用于實(shí)時(shí)采集指紋信息,在簽發(fā)usbkey時(shí)錄入指紋信息;所述主控芯片獲取其它芯片讀取的數(shù)據(jù),存儲(chǔ)數(shù)據(jù)至主控芯片的存儲(chǔ)器中,以及將錄入的指紋信息的哈希值存儲(chǔ)至服務(wù)器數(shù)據(jù)庫(kù)中。
3.根據(jù)權(quán)利要求2所述的基于usbkey的防釣魚安全身份認(rèn)證方法,其特征在于,所述usbkey在簽發(fā)時(shí),下載服務(wù)器根證書、個(gè)人簽名證書和密鑰對(duì),并存儲(chǔ)至主控芯片的存儲(chǔ)器中;所述第一動(dòng)態(tài)加密因子和第二動(dòng)態(tài)加密因子是usbkey的主控芯片調(diào)用隨機(jī)數(shù)發(fā)生器生成的32字節(jié)的隨機(jī)數(shù);所述usbkey利用所述服務(wù)器根證書中的公鑰對(duì)動(dòng)態(tài)加密因子進(jìn)行加密,所述服務(wù)器利用所述服務(wù)器根證書中的私鑰對(duì)動(dòng)態(tài)加密因子進(jìn)行解密。
4.根據(jù)權(quán)利要求2或3所述的基于usbkey的防釣魚安全身份認(rèn)證方法,其特征在于,所述根據(jù)用戶指紋信息設(shè)置簽名授權(quán)信息,包括:當(dāng)采集的用戶指紋信息同時(shí)通過usbkey的指紋驗(yàn)證和服務(wù)器的指紋驗(yàn)證時(shí),通過在實(shí)時(shí)地圖中圈定區(qū)域,計(jì)算出經(jīng)緯度范圍值得到區(qū)域數(shù)據(jù);通過選擇時(shí)間段設(shè)置時(shí)段數(shù)據(jù);通過錄入url地址列表設(shè)置url數(shù)據(jù);通過獲取服務(wù)器中最新版本的頁(yè)面簽名控件的二進(jìn)制數(shù)據(jù),并計(jì)算出哈希值得到頁(yè)面簽名控件數(shù)據(jù);所述區(qū)域數(shù)據(jù)、時(shí)段數(shù)據(jù)、url數(shù)據(jù)和頁(yè)面簽名控件數(shù)據(jù)作為簽名授權(quán)信息。
5.根據(jù)權(quán)利要求4所述的基于usbkey的防釣魚安全身份認(rèn)證方法,其特征在于,所述usbkey的指紋驗(yàn)證是將采集的用戶指紋信息與usbkey中該用戶錄入的指紋信息進(jìn)行比對(duì),如果一致,則表示通過驗(yàn)證;所述服務(wù)器的指紋驗(yàn)證是將采集的用戶指紋信息的哈希值與服務(wù)器中存儲(chǔ)的該用戶的指紋信息的哈希值進(jìn)行比對(duì),如果一致,則表示通過驗(yàn)證。
6.根據(jù)權(quán)利要求3所述的基于usbkey的防釣魚安全身份認(rèn)證方法,其特征在于,所述根據(jù)解密后的第一動(dòng)態(tài)加密因子存儲(chǔ)簽名授權(quán)信息,包括:將簽名授權(quán)信息中各項(xiàng)數(shù)據(jù)的哈希值存儲(chǔ)至服務(wù)器數(shù)據(jù)庫(kù)中,同時(shí)服務(wù)器利用解密后的第一動(dòng)態(tài)加密因子對(duì)簽名授權(quán)信息加密后下發(fā)至usbkey,usbkey的主控芯片利用第一動(dòng)態(tài)加密因子對(duì)簽名授權(quán)信息解密后,以密文方式存儲(chǔ)至主控芯片的存儲(chǔ)器中。
7.根據(jù)權(quán)利要求3所述的基于usbkey的防釣魚安全身份認(rèn)證方法,其特征在于,所述對(duì)解密后的簽名報(bào)文中的簽名授權(quán)信息依次驗(yàn)證,是按照頁(yè)面簽名控件數(shù)據(jù)驗(yàn)證、區(qū)域數(shù)據(jù)驗(yàn)證、時(shí)段數(shù)據(jù)驗(yàn)證和url數(shù)據(jù)驗(yàn)證的順序,任意一個(gè)驗(yàn)證項(xiàng)驗(yàn)證失敗,結(jié)束用戶身份認(rèn)證,提示用戶身份認(rèn)證失敗。
8.根據(jù)權(quán)利要求7所述的基于usbkey的防釣魚安全身份認(rèn)證方法,其特征在于,所述頁(yè)面簽名控件數(shù)據(jù)驗(yàn)證、區(qū)域數(shù)據(jù)驗(yàn)證、時(shí)段數(shù)據(jù)驗(yàn)證和url數(shù)據(jù)驗(yàn)證均包括:根據(jù)驗(yàn)證項(xiàng),獲取解密后的簽名報(bào)文中的簽名授權(quán)信息中對(duì)應(yīng)項(xiàng)數(shù)據(jù),作為第一數(shù)據(jù);usbkey的主控芯片讀取并解密存儲(chǔ)器中存儲(chǔ)的相同項(xiàng)數(shù)據(jù),將數(shù)據(jù)哈希值作為第二數(shù)據(jù);如果第一數(shù)據(jù)與第二數(shù)據(jù)一致,則驗(yàn)證成功,否則,驗(yàn)證失敗。
9.根據(jù)權(quán)利要求8所述的基于usbkey的防釣魚安全身份認(rèn)證方法,其特征在于,所述區(qū)域數(shù)據(jù)驗(yàn)證和時(shí)段數(shù)據(jù)驗(yàn)證還包括:usbkey的主控芯片獲取驗(yàn)證項(xiàng)對(duì)應(yīng)的內(nèi)置芯片讀取的數(shù)據(jù),作為第三數(shù)據(jù),如果第三數(shù)據(jù)在第二數(shù)據(jù)范圍內(nèi),則驗(yàn)證成功,否則,驗(yàn)證失敗。
10.根據(jù)權(quán)利要求8所述的基于usbkey的防釣魚安全身份認(rèn)證方法,其特征在于,所述url數(shù)據(jù)驗(yàn)證還包括:獲取頁(yè)面簽名控件讀取的當(dāng)前網(wǎng)頁(yè)的url,作為第四數(shù)據(jù),如果第四數(shù)據(jù)在第二數(shù)據(jù)范圍內(nèi),則驗(yàn)證成功,否則,驗(yàn)證失敗。