一種建立藍(lán)牙連接的方法及藍(lán)牙智能密鑰設(shè)備的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息安全領(lǐng)域,特別涉及一種建立藍(lán)牙連接的方法及藍(lán)牙智能密鑰設(shè)備。
【背景技術(shù)】
[0002]隨著電子信息的快速發(fā)展,在日常生活中網(wǎng)上銀行交易日漸普及。藍(lán)牙智能密鑰設(shè)備(簡(jiǎn)稱藍(lán)牙KEY)是為保證網(wǎng)上銀行交易的安全性而提出的一種安全且便捷的智能密鑰設(shè)備?,F(xiàn)有技術(shù)中,藍(lán)牙KEY在藍(lán)牙連接的過(guò)程中,存在被惡意攻擊的風(fēng)險(xiǎn)。
【發(fā)明內(nèi)容】
[0003]本發(fā)明解決了藍(lán)牙KEY在藍(lán)牙連接的過(guò)程中,存在被惡意攻擊的風(fēng)險(xiǎn)的技術(shù)問(wèn)題。
[0004]本發(fā)明提供了一種建立藍(lán)牙連接的方法,包括:
[0005]步驟S1:藍(lán)牙智能密鑰設(shè)備設(shè)置藍(lán)牙發(fā)現(xiàn)模式為隱藏模式;
[0006]步驟S2:所述藍(lán)牙智能密鑰設(shè)備搜索藍(lán)牙設(shè)備的設(shè)備信息;
[0007]步驟S3:當(dāng)所述藍(lán)牙智能密鑰設(shè)備搜索到藍(lán)牙設(shè)備的設(shè)備信息后,所述藍(lán)牙智能密鑰設(shè)備獲取所述設(shè)備信息中的設(shè)備標(biāo)識(shí),將所述設(shè)備標(biāo)識(shí)作為待選信息或?qū)⑺鲈O(shè)備標(biāo)識(shí)和第一預(yù)設(shè)信息作為待選信息;
[0008]步驟S4:所述藍(lán)牙智能密鑰設(shè)備輸出所述待選信息;
[0009]步驟S5:當(dāng)所述藍(lán)牙智能密鑰設(shè)備檢測(cè)到確認(rèn)信號(hào)后,根據(jù)用戶在所述待選信息中選中的目標(biāo)設(shè)備標(biāo)識(shí),與對(duì)應(yīng)的目標(biāo)藍(lán)牙設(shè)備建立連接;
[0010]步驟S6:所述藍(lán)牙智能密鑰設(shè)備等待接收來(lái)自所述目標(biāo)藍(lán)牙設(shè)備的指令。
[0011]本發(fā)明還提供了一種藍(lán)牙智能密鑰設(shè)備,包括:隱藏模塊、搜索模塊、第一獲取模塊、輸出模塊、檢測(cè)模塊、連接模塊和通訊模塊;
[0012]所述隱藏模塊,用于設(shè)置藍(lán)牙發(fā)現(xiàn)模式為隱藏模式;
[0013]所述搜索模塊,用于當(dāng)所述隱藏模塊設(shè)置藍(lán)牙發(fā)現(xiàn)模式為隱藏模式后,搜索藍(lán)牙設(shè)備的設(shè)備信息;
[0014]所述第一獲取模塊,用于在述搜索模塊搜索到的設(shè)備信息中獲取設(shè)備標(biāo)識(shí),將所述設(shè)備標(biāo)識(shí)作為待選信息或者將所述設(shè)備將所述設(shè)備標(biāo)識(shí)和第一預(yù)設(shè)信息作為待選信息;
[0015]所述輸出模塊,用于當(dāng)所述第一獲取模塊將所述設(shè)備標(biāo)識(shí)作為待選信息或者將所述設(shè)備將所述設(shè)備標(biāo)識(shí)和第一預(yù)設(shè)信息作為待選信息后,輸出所述待選信息;
[0016]所述檢測(cè)模塊,用于當(dāng)所述輸出模塊輸出所述待選信息后,檢測(cè)觸發(fā)信號(hào);
[0017]所述連接模塊,用于當(dāng)所述檢測(cè)模塊檢測(cè)到確認(rèn)信號(hào)后,根據(jù)用戶在所述待選信息中選中的目標(biāo)設(shè)備標(biāo)識(shí),與對(duì)應(yīng)的目標(biāo)藍(lán)牙設(shè)備建立連接;
[0018]所述通訊模塊,用于當(dāng)所述連接模塊根據(jù)用戶在所述待選信息中選中的目標(biāo)設(shè)備標(biāo)識(shí),與對(duì)應(yīng)的目標(biāo)藍(lán)牙設(shè)備建立連接后,等待接收來(lái)自所述目標(biāo)藍(lán)牙設(shè)備的指令。
[0019]本發(fā)明的有益效果是:藍(lán)牙KEY和目標(biāo)藍(lán)牙設(shè)備在連接的過(guò)程中,藍(lán)牙KEY將自身的藍(lán)牙發(fā)現(xiàn)模式設(shè)置為隱藏模式,和自身搜索到的目標(biāo)藍(lán)牙設(shè)備進(jìn)行連接,降低了被惡意攻擊的可能,提升了藍(lán)牙KEY的安全性。
【附圖說(shuō)明】
[0020]圖1為本發(fā)明實(shí)施例1提供的一種建立藍(lán)牙連接的方法的流程圖;
[0021]圖2為本發(fā)明實(shí)施例1提供的藍(lán)牙KEY根據(jù)被用戶選中的目標(biāo)設(shè)備標(biāo)識(shí)與目標(biāo)藍(lán)牙設(shè)備建立連接的具體流程圖;
[0022]圖3-圖4為本發(fā)明實(shí)施例2提供的一種建立藍(lán)牙連接的方法的流程圖;
[0023]圖5為本發(fā)明實(shí)施3提供的一種藍(lán)牙智能密鑰設(shè)備的結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0024]下面將結(jié)合本發(fā)明的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明的一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0025]實(shí)施例1
[0026]本實(shí)施例提供了一種建立藍(lán)牙連接的方法,如圖1所示,具體包括:
[0027]步驟101:藍(lán)牙KEY上電,設(shè)置藍(lán)牙發(fā)現(xiàn)模式為隱藏模式;
[0028]步驟102:藍(lán)牙KEY搜索藍(lán)牙設(shè)備的設(shè)備信息,判斷是否搜索到設(shè)備信息,如果是,則執(zhí)行步驟103;否則,返回步驟102;
[0029]本實(shí)施例中,藍(lán)牙設(shè)備的設(shè)備信息包括:藍(lán)牙設(shè)備的MAC地址、藍(lán)牙設(shè)備的設(shè)備名稱和藍(lán)牙設(shè)備的設(shè)備訪問(wèn)編碼等。藍(lán)牙設(shè)備可以是具有藍(lán)牙功能的手機(jī)或其他設(shè)備等。
[0030]步驟103:藍(lán)牙KEY獲取并存儲(chǔ)設(shè)備信息中的設(shè)備標(biāo)識(shí);
[0031]本實(shí)施例中,設(shè)備標(biāo)識(shí)是可以標(biāo)識(shí)藍(lán)牙設(shè)備的信息,每個(gè)藍(lán)牙設(shè)備的設(shè)備標(biāo)識(shí)均不同。本實(shí)施例中,藍(lán)牙設(shè)備的設(shè)備標(biāo)識(shí)包括:藍(lán)牙設(shè)備的MAC地址和/或藍(lán)牙設(shè)備的設(shè)備名稱等。優(yōu)選地,藍(lán)牙設(shè)備的設(shè)備標(biāo)識(shí)包括:藍(lán)牙設(shè)備的MAC地址和藍(lán)牙設(shè)備的設(shè)備名稱。當(dāng)藍(lán)牙設(shè)備的設(shè)備標(biāo)識(shí)包括設(shè)備名稱和MAC地址時(shí),可以按照“設(shè)備名稱| MAC地址”的格式存儲(chǔ)藍(lán)牙設(shè)備的設(shè)備標(biāo)識(shí)。
[0032]需要說(shuō)明的是,藍(lán)牙KEY獲取并存儲(chǔ)設(shè)備信息中的設(shè)備標(biāo)識(shí)后,可以將設(shè)備標(biāo)識(shí)作為待選信息。
[0033]步驟104:藍(lán)牙KEY輸出設(shè)備標(biāo)識(shí);
[0034]具體地,藍(lán)牙KEY可以通過(guò)多種方式輸出設(shè)備標(biāo)識(shí),可以但不限于:藍(lán)牙KEY在液晶屏上顯示設(shè)備標(biāo)識(shí)或者通過(guò)聲控方式播報(bào)設(shè)備標(biāo)識(shí)。
[0035]步驟105:當(dāng)藍(lán)牙KEY檢測(cè)到確認(rèn)信號(hào)后,根據(jù)用戶選中的目標(biāo)設(shè)備標(biāo)識(shí)與目標(biāo)藍(lán)牙設(shè)備建立連接,執(zhí)行步驟106。
[0036]本實(shí)施例中,藍(lán)牙KEY可以但不限于通過(guò)觸摸屏觸發(fā)、按鍵觸發(fā)或者聲控觸發(fā)等多種方式中的至少一種檢測(cè)到確認(rèn)信號(hào)。
[0037]本步驟中,目標(biāo)藍(lán)牙設(shè)備為與目標(biāo)設(shè)備標(biāo)識(shí)對(duì)應(yīng)的藍(lán)牙設(shè)備。
[0038]步驟106:藍(lán)牙KEY等待通過(guò)藍(lán)牙通道接收指令,當(dāng)通過(guò)藍(lán)牙通道接收到復(fù)核簽名指令后,執(zhí)行步驟107 ;當(dāng)通過(guò)藍(lán)牙通道接收到其他指令后,藍(lán)牙KEY執(zhí)行相應(yīng)操作,返回步驟 106。
[0039]本實(shí)施例中,其他指令可以但不限于為:生成隨機(jī)數(shù)指令、生成密鑰對(duì)指令和讀取公鑰指令等。
[0040]具體地,當(dāng)藍(lán)牙KEY通過(guò)藍(lán)牙通道接收到指令后,藍(lán)牙KEY解析指令,根據(jù)指令的指令頭判斷指令類(lèi)型。當(dāng)藍(lán)牙KEY根據(jù)指令的指令頭判斷出指令類(lèi)型為復(fù)核簽名指令后,執(zhí)行步驟107;當(dāng)藍(lán)牙KEY根據(jù)指令的指令頭判斷出指令類(lèi)型為生成隨機(jī)數(shù)指令后,則生成第五隨機(jī)數(shù),發(fā)送第五隨機(jī)數(shù),返回步驟106;當(dāng)藍(lán)牙KEY根據(jù)指令的指令頭判斷出指令類(lèi)型為生成密鑰對(duì)指令后,生成第二密鑰對(duì),返回步驟106;當(dāng)藍(lán)牙KEY根據(jù)指令的指令頭判斷出指令類(lèi)型為讀取公鑰指令后,發(fā)送第二密鑰對(duì)中的第三公鑰,返回步驟106;
[0041]需要說(shuō)明的是,當(dāng)藍(lán)牙KEY根據(jù)指令的指令頭判斷出指令類(lèi)型是生成密鑰對(duì)指令,生成第二密鑰對(duì)后,還可以直接發(fā)送第二密鑰對(duì)中的第三公鑰,返回步驟106。
[0042]本實(shí)施例中,第三公鑰和用戶私鑰相對(duì)應(yīng)。
[0043]本步驟還可以具體為:藍(lán)牙KEY在第二預(yù)設(shè)時(shí)間內(nèi)等待通過(guò)藍(lán)牙通道接收指令,當(dāng)在第二預(yù)設(shè)時(shí)間內(nèi)通過(guò)藍(lán)牙通道接收到復(fù)核簽名指令后,執(zhí)行步驟107;當(dāng)在第二預(yù)設(shè)時(shí)間通過(guò)藍(lán)牙通道接收到其他指令后,藍(lán)牙KEY執(zhí)行相應(yīng)操作,返回步驟106;當(dāng)在第二預(yù)設(shè)時(shí)間內(nèi)沒(méi)有通過(guò)藍(lán)牙通道接收到指令后,進(jìn)入休眠狀態(tài);
[0044]本實(shí)施例中,優(yōu)選地,第二預(yù)設(shè)時(shí)間為30s。
[0045]需要說(shuō)明的是,當(dāng)藍(lán)牙KEY進(jìn)入到休眠狀態(tài)后,藍(lán)牙KEY檢測(cè)與目標(biāo)藍(lán)牙設(shè)備的藍(lán)牙連接是否有效,如果是有效,則當(dāng)通過(guò)藍(lán)牙通道接收到復(fù)核簽名指令后,退出休眠狀態(tài),根據(jù)復(fù)核簽名指令獲取交易報(bào)文,繼續(xù);當(dāng)通過(guò)藍(lán)牙通道接收到其他指令后,退出休眠狀態(tài),執(zhí)行相應(yīng)操作,返回步驟102;如果藍(lán)牙KEY檢測(cè)與目標(biāo)藍(lán)牙設(shè)備的藍(lán)牙連接無(wú)效,則退出休眠狀態(tài),輸出連接斷開(kāi)信息,返回步驟102或者關(guān)機(jī)。
[0046]或者當(dāng)藍(lán)牙KEY進(jìn)入到休眠狀態(tài)后,藍(lán)牙KEY檢測(cè)與目標(biāo)藍(lán)牙設(shè)備的藍(lán)牙連接是否有效,如果是有效,則當(dāng)通過(guò)藍(lán)牙通道接收到復(fù)核簽名指令后,退出休眠狀態(tài),根據(jù)復(fù)核簽名指令獲取交易報(bào)文,繼續(xù);當(dāng)檢測(cè)到觸發(fā)信號(hào)后,退出休眠狀態(tài),返回步驟106;如果藍(lán)牙KEY檢測(cè)與目標(biāo)藍(lán)牙設(shè)備的藍(lán)牙連接無(wú)效,則退出休眠狀態(tài),輸出連接斷開(kāi)信息,返回步驟102或者關(guān)機(jī)。
[0047]步驟107:藍(lán)牙KEY獲取復(fù)核簽名指令中的交易報(bào)文;
[0048]步驟108:藍(lán)牙KEY判斷交易報(bào)文是否正確,如果是,則執(zhí)行步驟109;否則,藍(lán)牙KEY輸出操作失敗,返回步驟106;
[0049]本步驟中,藍(lán)牙KEY可以根據(jù)交易報(bào)文的格式是否符合預(yù)設(shè)格式來(lái)判斷交易報(bào)文是否正確。
[0050]步驟109:藍(lán)牙KEY對(duì)交易報(bào)文進(jìn)行哈希處理得到哈希結(jié)果并保存,保存交易報(bào)文中的關(guān)鍵信息并輸出關(guān)鍵信息;
[0051]具體地,藍(lán)牙KEY對(duì)交易報(bào)文進(jìn)行哈希處理得到哈希結(jié)果并保存,保存交易報(bào)文中的關(guān)鍵信息后,可以但不限于在液晶屏上顯示關(guān)鍵信息或者通過(guò)聲控方式播報(bào)關(guān)鍵信息,置位按鍵標(biāo)識(shí),返回步驟106。
[0052]步驟110:當(dāng)藍(lán)牙KEY檢測(cè)到觸發(fā)信號(hào)后,判斷觸發(fā)信號(hào)的類(lèi)型,當(dāng)判斷出觸發(fā)信號(hào)為上/下翻信號(hào)后,則執(zhí)行步驟111;當(dāng)判斷出觸發(fā)信號(hào)為確認(rèn)信號(hào)后,則執(zhí)行步驟112;當(dāng)判斷出觸發(fā)信號(hào)為取消信號(hào)后,則執(zhí)行步驟115;
[0053]本實(shí)施例中,藍(lán)牙KEY可以但不限于通過(guò)觸摸屏觸發(fā)、按鍵觸發(fā)或者聲控觸發(fā)等多種方式中的至少一種檢測(cè)到觸發(fā)信號(hào)。
[0054]當(dāng)藍(lán)牙KEY檢測(cè)到觸發(fā)信號(hào)后,還可以判斷按鍵標(biāo)識(shí)是否置位,是則判斷觸發(fā)信號(hào)的類(lèi)型,繼續(xù);否則返回步驟106;
[0055]步驟111:藍(lán)牙KEY上/下翻輸出關(guān)鍵信息,返回步驟106;
[0056]具體地,藍(lán)牙KEY可以通過(guò)液晶屏上/下翻頁(yè)顯示關(guān)鍵信息。
[0057]步驟112:藍(lán)牙KEY使用用戶私鑰對(duì)保存的哈希結(jié)果進(jìn)行簽名,判斷簽名是否成功,如果是,則執(zhí)行步驟113;否則,執(zhí)行步驟114;
[0058]進(jìn)一步的,當(dāng)關(guān)鍵信息全部輸出后,還包括將報(bào)文顯示完成標(biāo)志設(shè)為有效。相應(yīng)地,步驟112之前還包括:藍(lán)牙KEY判斷報(bào)文顯示完成標(biāo)志是否有效,是則執(zhí)行步驟112;否貝1J,執(zhí)行步驟114;
[0059]步驟113:藍(lán)牙KEY輸出操作成功,保存簽名結(jié)果,返回步驟106;
[0060]進(jìn)一步地,藍(lán)牙KEY輸出操作成功后,還可以清除按鍵標(biāo)識(shí)和報(bào)文顯示完成標(biāo)志。[0061 ] 步驟114:藍(lán)牙KEY輸出操作失敗,返回步驟106 ;
[0062]進(jìn)一步地,藍(lán)牙KEY輸出操作失敗后,還可以清除按鍵標(biāo)識(shí)。
[0063]步驟115:藍(lán)牙KEY輸出操作取消,返回步驟106。
[0064]進(jìn)一步地,藍(lán)牙KEY輸出操作取消后,還可以清除按鍵標(biāo)識(shí)。
[0065]如圖2所示,本實(shí)施例中,步驟105具體包括:
[0066]步驟1051:當(dāng)藍(lán)牙KEY檢測(cè)到確認(rèn)信號(hào)后,藍(lán)牙KEY根據(jù)目標(biāo)設(shè)備標(biāo)識(shí)判斷是否和目標(biāo)藍(lán)牙設(shè)備已配對(duì),如果是,則執(zhí)行步驟1054;否則,執(zhí)行步驟1052;
[0067]具體地,藍(lán)牙KEY根據(jù)目標(biāo)設(shè)備標(biāo)識(shí)向目標(biāo)藍(lán)牙設(shè)備發(fā)送鑒權(quán)指令,接收來(lái)自目標(biāo)藍(lán)牙設(shè)備的鑒權(quán)應(yīng)答,根據(jù)鑒權(quán)應(yīng)答獲取鑒權(quán)結(jié)果,根據(jù)鑒權(quán)結(jié)果判斷是否和目標(biāo)藍(lán)牙設(shè)備已配對(duì),如果鑒權(quán)結(jié)果為成功,則判定是和目標(biāo)藍(lán)牙設(shè)備已配對(duì),則執(zhí)行步驟1054;如果鑒權(quán)結(jié)果為失敗,則判定沒(méi)有和目標(biāo)藍(lán)牙設(shè)備配對(duì),執(zhí)行步驟1052。
[0068]更加具體地,藍(lán)牙KEY根據(jù)目標(biāo)設(shè)備標(biāo)識(shí)向目標(biāo)藍(lán)牙設(shè)備發(fā)送包括第一隨機(jī)數(shù)的鑒權(quán)指令,接收來(lái)自目標(biāo)藍(lán)牙設(shè)備的鑒權(quán)應(yīng)答,判斷鑒權(quán)應(yīng)答中是否包括第一錯(cuò)誤標(biāo)識(shí),如果是,則執(zhí)行步驟1052;否則,藍(lán)牙KEY查詢自身是否存在和目標(biāo)藍(lán)牙設(shè)備對(duì)應(yīng)的連接密鑰,當(dāng)藍(lán)牙KEY沒(méi)有查詢到自身的與目標(biāo)藍(lán)牙設(shè)備對(duì)應(yīng)的連接密鑰后,藍(lán)牙KEY判定鑒權(quán)結(jié)果為失敗,執(zhí)行步驟1052;當(dāng)藍(lán)牙KEY查詢到自身的與目標(biāo)藍(lán)牙設(shè)備對(duì)應(yīng)的連接密鑰后,則根據(jù)連接密鑰、第一隨機(jī)數(shù)和目標(biāo)設(shè)備標(biāo)識(shí)獲取第一驗(yàn)證值,判斷第一驗(yàn)證值是否和鑒權(quán)應(yīng)答相匹配,如果第一驗(yàn)證值是和鑒權(quán)應(yīng)答相匹配,則判定鑒權(quán)結(jié)果為成功,則執(zhí)行步驟1054;如果第一驗(yàn)證數(shù)和鑒權(quán)應(yīng)答不匹配,則判定鑒權(quán)結(jié)果為失敗,則執(zhí)行步驟1052;
[0069]步驟1052:藍(lán)牙KEY根據(jù)目標(biāo)設(shè)備標(biāo)識(shí)和目標(biāo)藍(lán)牙設(shè)備進(jìn)行配對(duì);
[0070]具體地,藍(lán)牙KEY根據(jù)目標(biāo)設(shè)備標(biāo)識(shí)向目標(biāo)藍(lán)牙設(shè)備發(fā)送配對(duì)指令,接收來(lái)自目標(biāo)藍(lán)牙設(shè)備的配對(duì)應(yīng)答,根據(jù)配對(duì)應(yīng)答獲取目標(biāo)藍(lán)牙設(shè)備的配對(duì)方式,根據(jù)目標(biāo)藍(lán)牙設(shè)備的配對(duì)方式和目標(biāo)藍(lán)牙設(shè)備進(jìn)行配對(duì)。
[0071]本實(shí)施例中,為了保證配對(duì)過(guò)程中的安全性,當(dāng)藍(lán)牙KEY根據(jù)配對(duì)應(yīng)答獲取到的目標(biāo)藍(lán)牙設(shè)備的配對(duì)方式后,藍(lán)牙KEY可以根據(jù)目標(biāo)藍(lán)牙設(shè)備的配對(duì)方式采用非對(duì)稱加解密算法機(jī)制或者采用非對(duì)稱加解密算法機(jī)制和用戶干預(yù)防攻擊相結(jié)合的方式與目標(biāo)藍(lán)牙設(shè)備進(jìn)行配對(duì)。
[0072]例如,當(dāng)藍(lán)牙KEY根據(jù)配對(duì)應(yīng)答獲取到的目標(biāo)藍(lán)牙設(shè)備的配對(duì)方式為第一方式后,藍(lán)牙KEY根據(jù)自身的第一公鑰和目標(biāo)藍(lán)牙設(shè)備的第二公鑰與目標(biāo)