国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      Pin碼的安全防護(hù)方法及客戶端的制作方法

      文檔序號(hào):7549713閱讀:359來(lái)源:國(guó)知局
      專利名稱:Pin碼的安全防護(hù)方法及客戶端的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及信息安全技術(shù)領(lǐng)域,尤其涉及一種PIN碼的安全防護(hù)方法及客戶端。
      背景技術(shù)
      目前常用的客戶端界面上的PIN (Personal Identification Number,個(gè)人識(shí)別碼)框?qū)IN碼的防護(hù)級(jí)別很低,很容易通過(guò)一些盜號(hào)軟件或鍵盤(pán)監(jiān)聽(tīng)手段獲得PIN碼,無(wú)法防止遠(yuǎn)程盜號(hào)等操作;且常用的PIN碼防護(hù)方法與應(yīng)用程序功能的實(shí)現(xiàn)相結(jié)合,很難實(shí)現(xiàn)對(duì)PIN碼防護(hù)的移植和修改等操作。

      發(fā)明內(nèi)容
      本發(fā)明的主要目的是提供一種PIN碼的安全防護(hù)方法及客戶端,旨在增強(qiáng)PIN碼的安全等級(jí),使PIN碼的傳輸更具安全性。本發(fā)明實(shí)施例公開(kāi)一種PIN碼的安全防護(hù)方法,包括以下步驟:中間件加載PIN碼輸入系統(tǒng),在加載成功時(shí),通過(guò)數(shù)據(jù)交互接口設(shè)置PIN碼輸入規(guī)則;顯示PIN碼輸入框,供用戶輸入PIN碼;所述PIN碼輸入系統(tǒng)記錄用戶輸入的PIN碼,對(duì)所述PIN碼進(jìn)行加密和編碼處理得到PIN碼密文,將所述PIN碼密文通過(guò)所述數(shù)據(jù)交互接口傳送至所述中間件;所述中間件獲取所述PIN碼密文,判斷所述PIN碼密文是否符合所述PIN碼輸入規(guī)則;若是,則解密所述PIN碼密文,獲取所述PIN碼。優(yōu)選地,所述PIN碼輸入系統(tǒng)對(duì)所述PIN碼進(jìn)行加密和編碼處理得到PIN碼密文包括:生成一個(gè)或多個(gè)隨機(jī)數(shù),將所述隨機(jī)數(shù)或?qū)λ鲭S機(jī)數(shù)進(jìn)行加密運(yùn)算的結(jié)果作為加密密鑰;或者將預(yù)置的一字符串或?qū)λ鲎址M(jìn)行加密運(yùn)算的結(jié)果作為加密密鑰;或者生成一個(gè)或多個(gè)隨機(jī)數(shù),將所述隨機(jī)數(shù)和預(yù)置的一字符串或?qū)λ鲭S機(jī)數(shù)和字符串進(jìn)行加密運(yùn)算的結(jié)果作為加密密鑰;用所述加密密鑰對(duì)所述PIN碼進(jìn)行加密,得到Pl密文,對(duì)所述Pl密文進(jìn)行編碼,得到所述PIN碼密文。優(yōu)選地,所述判斷所述PIN碼密文是否符合所述PIN碼輸入規(guī)則的步驟之后還包括:若否,則通過(guò)所述數(shù)據(jù)交互接口清空所述PIN碼輸入框,并返回執(zhí)行步驟:顯示PIN碼輸入框,供用戶輸入PIN碼。優(yōu)選地,所述中間件加載PIN碼輸入系統(tǒng)之后還包括步驟:所述PIN碼輸入系統(tǒng)初始化所述數(shù)據(jù)交互接口。優(yōu)選地,還包括步驟:所述中間件通過(guò)所述數(shù)據(jù)交互接口,清空所述PIN碼框中的所有字符,釋放所述PIN碼輸入系統(tǒng)。本發(fā)明實(shí)施例還公開(kāi)了一種用于PIN碼安全防護(hù)的客戶端,包括中間件和PIN碼輸入系統(tǒng);所述中間件用于,加載PIN碼輸入系統(tǒng),在加載成功時(shí),通過(guò)數(shù)據(jù)交互接口設(shè)置PIN碼輸入規(guī)則;顯示PIN碼輸入框,供用戶輸入PIN碼;所述PIN碼輸入系統(tǒng)用于,記錄用戶輸入的PIN碼,對(duì)所述PIN碼進(jìn)行加密和編碼處理得到PIN碼密文,將所述PIN碼密文通過(guò)所述數(shù)據(jù)交互接口傳送至所述中間件;所述中間件還用于,獲取所述PIN碼輸入系統(tǒng)傳送的所述PIN碼密文,判斷所述PIN碼密文是否符合所述PIN碼輸入規(guī)則;若是,則解密所述PIN碼密文,獲取所述PIN碼。優(yōu)選地,所述PIN碼輸入系統(tǒng)還用于:生成一個(gè)或多個(gè)隨機(jī)數(shù),將所述隨機(jī)數(shù)或?qū)λ鲭S機(jī)數(shù)進(jìn)行加密運(yùn)算的結(jié)果作為加密密鑰;或者將預(yù)置的一字符串或?qū)λ鲎址M(jìn)行加密運(yùn)算的結(jié)果作為加密密鑰;或者生成一個(gè)或多個(gè)隨機(jī)數(shù),將所述隨機(jī)數(shù)和預(yù)置的一字符串或?qū)λ鲭S機(jī)數(shù)和字符串進(jìn)行加密運(yùn)算的結(jié)果作為加密密鑰;用所述加密密鑰對(duì)所述PIN碼進(jìn)行加密,得到Pl密文,對(duì)所述Pl密文進(jìn)行編碼,得到所述PIN碼密文。優(yōu)選地,所述中間件還用于:在判斷所述PIN碼密文不符合所述PIN碼輸入規(guī)則時(shí),通過(guò)所述數(shù)據(jù)交互接口清空所述PIN碼輸入框,并返回執(zhí)行步驟:顯示PIN碼輸入框,供用戶輸入PIN碼。優(yōu)選地,所述PIN碼輸入系統(tǒng)還用于: 初始化所述數(shù)據(jù)交互接口。優(yōu)選地,所述中間件還用于:通過(guò)所述數(shù)據(jù)交互接口,清空所述PIN碼框中的所有字符,釋放所述PIN碼輸入系統(tǒng)。本發(fā)明通過(guò)中間件加載PIN碼輸入系統(tǒng),在加載成功時(shí),通過(guò)數(shù)據(jù)交互接口設(shè)置PIN碼輸入規(guī)則;顯示PIN碼輸入框,供用戶輸入PIN碼;所述PIN碼輸入系統(tǒng)記錄用戶輸入的PIN碼,對(duì)所述PIN碼進(jìn)行加密和編碼處理得到PIN碼密文,將所述PIN碼密文通過(guò)所述數(shù)據(jù)交互接口傳送至所述中間件;所述中間件獲取所述PIN碼密文,判斷所述PIN碼密文是否符合所述PIN碼輸入規(guī)則;若是,則解密所述PIN碼密文,獲取所述PIN碼的方法,具有在驅(qū)動(dòng)層對(duì)PIN碼進(jìn)行加固、增強(qiáng)PIN碼安全性的有益效果,有效地實(shí)現(xiàn)了對(duì)調(diào)用者身份的認(rèn)證,防止了驅(qū)動(dòng)層和應(yīng)用層的PIN碼截取操作;同時(shí),具有較強(qiáng)的反鍵盤(pán)鉤子的能力,能夠?qū)χ髁鞯逆I盤(pán)鉤子進(jìn)行防護(hù),打斷鉤子鏈的傳輸,有效地防止了鍵盤(pán)鉤子類(lèi)木馬程序?qū)IN碼所造成的安全威脅。而且,對(duì)PIN碼的防護(hù)采用獨(dú)立的PIN碼輸入系統(tǒng)進(jìn)行,方便了 PIN碼防護(hù)的移植和修改等操作。


      圖1是本發(fā)明PIN碼的安全防護(hù)方法第一實(shí)施例流程示意圖;圖2是本發(fā)明PIN碼的安全防護(hù)方法中,PIN碼輸入系統(tǒng)對(duì)輸入的PIN碼進(jìn)行加密時(shí),獲取加密密鑰一實(shí)施例流程示意圖;圖3是本發(fā)明PIN碼的安全防護(hù)方法第二實(shí)施例流程示意圖;圖4是本發(fā)明PIN碼的安全防護(hù)方法第三實(shí)施例流程示意圖;圖5是本發(fā)明PIN碼輸入系統(tǒng)與中間件的交互流程示意圖;圖6是本發(fā)明用于PIN碼安全防護(hù)的客戶端一實(shí)施例結(jié)構(gòu)示意圖。本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說(shuō)明。
      具體實(shí)施例方式本發(fā)明用于PIN碼安全防護(hù)的客戶端采用PIN碼的安全防護(hù)方法,達(dá)到對(duì)PIN碼進(jìn)行安全防護(hù)的目的;PIN碼的安全防護(hù)方法為:通過(guò)中間件在加載PIN碼輸入系統(tǒng)成功時(shí),顯示PIN碼輸入框,供用戶輸入PIN碼;在用戶輸入PIN碼后,PIN碼輸入系統(tǒng)對(duì)PIN碼進(jìn)行加密并編碼,得到PIN碼密文,并將PIN碼密文通過(guò)特定的數(shù)據(jù)交互接口傳送至中間件,中間件判斷該P(yáng)IN碼密文符合PIN碼輸入規(guī)則時(shí),解密PIN碼密文,得到符合輸入規(guī)則的PIN碼。以下結(jié)合說(shuō)明書(shū)附圖及具體實(shí)施例進(jìn)一步說(shuō)明本發(fā)明的技術(shù)方案。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。參照?qǐng)D1,圖1是本發(fā)明PIN碼的安全防護(hù)方法第一實(shí)施例流程示意圖;如圖1所示,本發(fā)明PIN碼的安全防護(hù)方法包括以下步驟:步驟SOl、中間件加載PIN碼輸入系統(tǒng),在加載成功時(shí),通過(guò)數(shù)據(jù)交互接口設(shè)置PIN碼輸入規(guī)則;步驟S02、中間件顯示PIN碼輸入框,供用戶輸入PIN碼;在用戶開(kāi)啟中間件并運(yùn)行中間件后,中間件加載PIN碼輸入系統(tǒng);如果加載失敗,則獲取加載失敗的錯(cuò)誤碼,并提示用戶本次加載失??;如果加載成功,則通過(guò)與PIN碼輸入系統(tǒng)進(jìn)行數(shù)據(jù)交互的安全接口設(shè)置PIN碼輸入規(guī)則;所述中間件設(shè)置PIN碼輸入規(guī)則包括:設(shè)置字符規(guī)則、允許輸入的最大和最小字符數(shù)。在設(shè)置完成后,中間件顯示PIN碼輸入框,提示用戶可以輸入對(duì)應(yīng)的PIN碼。步驟S03、PIN碼輸入系統(tǒng)記錄用戶輸入的PIN碼,對(duì)所述PIN碼進(jìn)行加密和編碼處理得到PIN碼密文,將所述PIN碼密文通過(guò)數(shù)據(jù)交互接口傳送至中間件。用戶在PIN碼輸入框中輸入對(duì)應(yīng)的PIN碼后,PIN碼輸入系統(tǒng)立刻記錄用戶輸入的PIN碼,同時(shí),統(tǒng)計(jì)該P(yáng)IN碼的字符數(shù),并在驅(qū)動(dòng)層對(duì)PIN碼進(jìn)行加密。PIN碼輸入系統(tǒng)根據(jù)隨機(jī)數(shù)和預(yù)置硬編碼字符串,獲取加密密鑰,在驅(qū)動(dòng)層對(duì)PIN碼進(jìn)行加密。PIN碼輸入系統(tǒng)獲取加密密鑰的方式包括:PIN碼輸入系統(tǒng)生成一個(gè)或多個(gè)隨機(jī)數(shù),直接將所述隨機(jī)數(shù)作為加密密鑰,或者對(duì)該隨機(jī)數(shù)進(jìn)行加密運(yùn)算,將加密后的隨機(jī)數(shù)作為加密密鑰;將預(yù)置的字符串作為加密密鑰,或者對(duì)該預(yù)置的字符串進(jìn)行加密運(yùn)算,將加密后的預(yù)置字符串作為加密密鑰;將生成的隨機(jī)數(shù)和預(yù)置的字符串作為加密密鑰,或者將該隨機(jī)數(shù)和預(yù)置字符串進(jìn)行加密運(yùn)算,將上述加密運(yùn)算結(jié)果作為加密密鑰。對(duì)上述相關(guān)數(shù)據(jù)進(jìn)行加密運(yùn)算可以采用3DES加密算法。請(qǐng)參照?qǐng)D2,圖2是本發(fā)明PIN碼的安全防護(hù)方法中,PIN碼輸入系統(tǒng)對(duì)輸入的PIN碼進(jìn)行加密時(shí),獲取加密密鑰一實(shí)施例流程示意圖;如圖2所示,PIN碼輸入系統(tǒng)調(diào)用PIN碼加密所需的相關(guān)函數(shù),并對(duì)所述相關(guān)函數(shù)傳入的一隨機(jī)數(shù)進(jìn)行SHAl (Secure Hash Algorithm,安全哈希算法)散列,即采用安全哈希算法對(duì)傳入的隨機(jī)數(shù)進(jìn)行處理,得到第一哈希數(shù)據(jù)即Hash數(shù)據(jù)1,取Hash數(shù)據(jù)I的前6位,將其保存為
      51。PIN碼輸入系統(tǒng)對(duì)預(yù)置硬編碼字符串進(jìn)行SHAl散列,即采用安全哈希算法對(duì)預(yù)置硬編碼字符串進(jìn)行處理,得到第二哈希數(shù)據(jù)即Hash數(shù)據(jù)2,取Hash數(shù)據(jù)2的后4位,將其保存為
      52。根據(jù)SI和S2,獲取新的字符串S1+S2+S1,將其作為S3;此時(shí),取字符串SI的后3位作為字符串S4 ;將S3和S4的組成字符串Ml作為加密密鑰對(duì)用戶輸入的PIN碼進(jìn)行加密,其中“M1=S3+S4+S3”。PIN碼輸入系統(tǒng)利用加密密鑰Ml對(duì)輸入的PIN碼進(jìn)行加密,得到Pl密文后,再對(duì)Pl密文進(jìn)行編碼,得到所述PIN碼密文。PIN碼輸入系統(tǒng)將PIN碼密文通過(guò)特定的數(shù)據(jù)交互接口傳送至中間件。由于加密密鑰是PIN碼輸入系統(tǒng)動(dòng)態(tài)生成的,因此保證了加密密鑰的唯一性;且對(duì)寫(xiě)入共享內(nèi)存的PI密文進(jìn)行了編碼處理,使PIN碼的傳輸更有安全性。本發(fā)明實(shí)施例中,PIN碼輸入系統(tǒng)對(duì)Pl密文進(jìn)行編碼的方法可以采用BASE64編碼方式。步驟S04、中間件獲取所述PIN碼密文,判斷所述PIN碼密文是否符合所述PIN碼輸入規(guī)則;若是,則執(zhí)行步驟S05 ;若否,則返回執(zhí)行步驟S02。步驟S05、解密所述PIN碼密文,獲取所述PIN碼。中間件獲取PIN碼輸入系統(tǒng)傳送的PIN碼密文,同時(shí)獲取該P(yáng)IN碼密文的字符數(shù),判斷該P(yáng)IN碼密文的字符數(shù)是否符合PIN碼輸入規(guī)則。若該P(yáng)IN碼密文的字符數(shù)不符合PIN碼輸入規(guī)則,則中間件通過(guò)特定的數(shù)據(jù)交互接口,清空PIN碼框中的字符,并返回至步驟S02、中間件顯示PIN碼輸入框,要求用戶重新輸入PIN碼。如果中間件判斷PIN碼密文的字符數(shù)符合PIN碼輸入規(guī)則,則解析PIN碼密文。所述中間件解析PIN碼密文采用與PIN碼輸入系統(tǒng)相適配的解密算法,所述解密算法可以是安全哈希算法;若PIN碼輸入系統(tǒng)采用3DES加密算法,則中間件對(duì)PIN碼密文解密時(shí),也采用3DES解密算法。若中間件對(duì)PIN碼密文解析失敗,則發(fā)出解析失敗的提示信息,提示用戶未能成功獲取所述PIN碼。中間件解析PIN碼密文,獲取到PIN碼后,判斷PIN碼是否符合PIN碼輸入規(guī)則,若是,則通過(guò)PIN碼輸入系統(tǒng)的數(shù)據(jù)交互接口,清空PIN碼框中的所有字符,并釋放PIN碼輸入系統(tǒng);若中間件判斷解析后的PIN碼不符合PIN碼輸入規(guī)則,則通過(guò)PIN碼輸入系統(tǒng)的數(shù)據(jù)交互接口,清空PIN碼框中的所有字符,并返回執(zhí)行步驟S02、中間件顯示PIN碼輸入框,要求用戶重新輸入PIN碼。進(jìn)一步地,請(qǐng)參照?qǐng)D3,圖3是本發(fā)明PIN碼的安全防護(hù)方法第二實(shí)施例流程示意圖;本實(shí)施例與圖1所述實(shí)施例的區(qū)別是,僅增加了:步驟SOO、所述PIN碼輸入系統(tǒng)初始化所述數(shù)據(jù)交互接口。在中間件加載PIN碼輸入系統(tǒng)成功并設(shè)置PIN碼輸入規(guī)則后,為保證PIN碼傳輸?shù)陌踩?,PIN碼輸入系統(tǒng)與中間件的交互采用特定的數(shù)據(jù)交互接口。PIN碼輸入系統(tǒng)根據(jù)中間件設(shè)置的PIN碼輸入規(guī)則,對(duì)特定的所述數(shù)據(jù)交互接口進(jìn)行初始化一具體實(shí)施過(guò)程如下:<1>> void Clear(void)[功能]清空PIN碼框中的字符。
      <2>> void GetLen(LONG *nLen)[功能]獲取PIN碼框中已輸入字符的長(zhǎng)度。<3>> void GetVerCtrl (BSTR *szVer)[功能]獲取PIN碼系統(tǒng),控件的版本號(hào)。<4>> void GetVerDrv (BSTR *szVer)[功能]獲取PIN碼系統(tǒng),驅(qū)動(dòng)文件的版本號(hào)。<5>、void GetPin (LPCTSTR bstrRand, LPCTSTR bstrContent, BSTR *szPin)[功能]獲取PIN碼框的密文數(shù)據(jù)。<6>> void GetLastError(LONG *nCode)[功能]獲取Pin碼控件最后一次錯(cuò)誤代碼值?!?>、void InitPinInput (LONG minLength, LONG maxLength, LPCTSTRstrRand, LPCTSTR strRule)[功能]PIN碼輸入控件系統(tǒng)初始化接口。<8>> void FocusOnOrNot(LONG *pRet)[功能]判斷當(dāng)前輸入焦點(diǎn)是否在pin碼輸入框控件中。PIN碼輸入系統(tǒng)通過(guò)對(duì)數(shù)據(jù)交互接口的初始化,將PIN碼的保護(hù)模塊獨(dú)立化,使PIN碼的保護(hù)模塊的調(diào)用更加便捷。進(jìn)一步地,請(qǐng)參照?qǐng)D4,圖4是本發(fā)明PIN碼的安全防護(hù)方法第三實(shí)施例流程示意圖;本實(shí)施例與圖3實(shí)施例的區(qū)別是,僅增加了:步驟S06、中間件通過(guò)所述數(shù)據(jù)交互接口,清空所述PIN碼框中的所有字符,釋放所述PIN碼輸入系統(tǒng)。 中間件解析PIN碼密文,獲取到符合PIN碼輸入規(guī)則的PIN碼后,通過(guò)特定的數(shù)據(jù)交互接口,情況PIN碼框中的所有字符,并釋放PIN碼輸入系統(tǒng)。本實(shí)施例中,所述中間件可以為常用的U盾程序;以U盾程序?yàn)槔?,中間件與PIN碼輸入系統(tǒng)的交互流程請(qǐng)參照?qǐng)D5,圖5是本發(fā)明PIN碼輸入系統(tǒng)與中間件的交互流程示意圖;如圖5所示,用戶運(yùn)行U盾程序后,U盾程序校準(zhǔn)PIN碼輸入系統(tǒng),設(shè)置包括字符規(guī)則、最大及最小輸入字符數(shù)的PIN碼輸入規(guī)則,并顯示PIN碼輸入框,供用戶輸入PIN碼;用戶輸入完成后,點(diǎn)擊〈提交 > 按鈕,PIN碼輸入系統(tǒng)獲取用戶輸入的PIN碼,對(duì)輸入的PIN碼進(jìn)行加密和編碼處理后,返回PIN碼密文至U盾程序,U盾程序接收該P(yáng)IN碼密文,判斷該P(yáng)IN碼密文的字符數(shù)符合PIN碼輸入規(guī)則后,對(duì)PIN碼密文進(jìn)行解析,在解析成功后,獲取PIN碼,在判斷該P(yáng)IN碼符合PIN碼輸入規(guī)則時(shí),通過(guò)特定的數(shù)據(jù)交互接口,清空PIN碼框中的所有字符,并釋放PIN碼輸入系統(tǒng);U盾程序在判斷PIN碼密文不符合PIN碼輸入規(guī)則、對(duì)PIN碼密文解析失敗、對(duì)獲取的PIN碼不符合PIN碼輸入規(guī)則時(shí),均向用戶發(fā)出提示信息。由于中間件如圖5所示的U盾程序與PIN碼輸入系統(tǒng)均采用特定的數(shù)據(jù)交互接口,且PIN碼輸入系統(tǒng)的安全級(jí)別與客戶端登陸控件保持一致,因此,減少了客戶端加解密的使用時(shí)間;同時(shí),由于PIN碼輸入系統(tǒng)采用了動(dòng)態(tài)生成加密密鑰的方法,因此,確保了加密密鑰的唯一性,提高了 PIN碼的安全性。本實(shí)施例通過(guò)在驅(qū)動(dòng)層對(duì)PIN碼進(jìn)行加固,有效地實(shí)現(xiàn)了對(duì)調(diào)用者身份的認(rèn)證,防止了驅(qū)動(dòng)層和應(yīng)用層的PIN碼截取操作;同時(shí),具有較強(qiáng)的反鍵盤(pán)鉤子的能力,能夠?qū)χ髁鞯逆I盤(pán)鉤子進(jìn)行防護(hù),打斷鉤子鏈的傳輸,有效地防止了鍵盤(pán)鉤子類(lèi)木馬程序?qū)IN碼造成的安全威脅,增強(qiáng)了 PIN碼的安全性。參照?qǐng)D6,圖6是本發(fā)明用于PIN碼安全防護(hù)的客戶端一實(shí)施例結(jié)構(gòu)示意圖。如圖6所示,本發(fā)明用于PIN碼安全防護(hù)的客戶端包括:中間件01和PIN碼輸入系統(tǒng)02。中間件01用于,加載PIN碼輸入系統(tǒng)02,在加載成功時(shí),通過(guò)數(shù)據(jù)交互接口設(shè)置PIN碼輸入規(guī)則;顯示PIN碼輸入框,供用戶輸入PIN碼;PIN碼輸入系統(tǒng)02用于,記錄用戶輸入的PIN碼,對(duì)所述PIN碼進(jìn)行加密和編碼處理得到PIN碼密文,將所述PIN碼密文通過(guò)所述數(shù)據(jù)交互接口傳送至所述中間件01 ;中間件01還用于,獲取所述PIN碼輸入系統(tǒng)02傳送的所述PIN碼密文,判斷所述PIN碼密文是否符合所述PIN碼輸入規(guī)則;若是,則解密所述PIN碼密文,獲取所述PIN碼。具體地,請(qǐng)?jiān)俅螀⒄請(qǐng)D5,中間件01與PIN碼輸入系統(tǒng)02的交互過(guò)程為:在中間件01加載PIN碼輸入系統(tǒng)成功并設(shè)置PIN碼輸入規(guī)則后,為保證PIN碼傳輸?shù)陌踩?,PIN碼輸入系統(tǒng)02與中間件01的交互采用特定的數(shù)據(jù)交互接口。PIN碼輸入系統(tǒng)02根據(jù)中間件01設(shè)置的PIN碼輸入規(guī)則,對(duì)該特定的數(shù)據(jù)交互接口進(jìn)行初始化,其具體實(shí)施過(guò)程如下:<1>> void Clear(void)[功能]清空PIN碼框中的字符。<2>> void GetLen(LONG *nLen)[功能]獲取PIN碼框中已輸入字符的長(zhǎng)度。<3>> void GetVerCtrl (BSTR *szVer)[功能]獲取PIN碼系統(tǒng),控件的版本號(hào)。<4>> void GetVerDrv (BSTR *szVer)[功能]獲取PIN碼系統(tǒng),驅(qū)動(dòng)文件的版本號(hào)。<5>、void GetPin (LPCTSTR bstrRand, LPCTSTR bstrContent, BSTR *szPin)[功能]獲取PIN碼框的密文數(shù)據(jù)。<6>> void GetLastError(LONG *nCode)[功能]獲取Pin碼控件最后一次錯(cuò)誤代碼值?!?>、void InitPinInput (LONG minLength, LONG maxLength, LPCTSTRstrRand, LPCTSTR strRule)[功能]PIN碼輸入控件系統(tǒng)初始化接口。<8>> void FocusOnOrNot(LONG *pRet)[功能]判斷當(dāng)前輸入焦點(diǎn)是否在pin碼輸入框控件中。PIN碼輸入系統(tǒng)02通過(guò)對(duì)數(shù)據(jù)交互接口的初始化,將PIN碼的保護(hù)模塊獨(dú)立化,使PIN碼的保護(hù)模塊的調(diào)用更加便捷。在用戶開(kāi)啟中間件01并運(yùn)行中間件01后,中間件01加載PIN碼輸入系統(tǒng)02 ;如果加載失敗,則獲取加載失敗的錯(cuò)誤碼,并提示用戶本次加載失敗;如果加載成功,則通過(guò)與PIN碼輸入系統(tǒng)02進(jìn)行數(shù)據(jù)交互的安全接口設(shè)置PIN碼輸入規(guī)則;所述中間件01設(shè)置PIN碼輸入規(guī)則包括:設(shè)置字符規(guī)則、允許輸入的最大和最小字符數(shù)。在設(shè)置完成后,中間件01顯示PIN碼輸入框,提示用戶可以輸入對(duì)應(yīng)的PIN碼。
      用戶在PIN碼輸入框中輸入對(duì)應(yīng)的PIN碼后,PIN碼輸入系統(tǒng)02立刻記錄用戶輸入的PIN碼,同時(shí),統(tǒng)計(jì)該P(yáng)IN碼的字符數(shù),并在驅(qū)動(dòng)層對(duì)PIN碼進(jìn)行加密。PIN碼輸入系統(tǒng)02根據(jù)隨機(jī)數(shù)和預(yù)置硬編碼字符串,獲取加密密鑰,在驅(qū)動(dòng)層對(duì)PIN碼進(jìn)行加密。PIN碼輸入系統(tǒng)02對(duì)輸入的PIN碼進(jìn)行加密時(shí),獲取加密密鑰的方式包括:PIN碼輸入系統(tǒng)生成一個(gè)或多個(gè)隨機(jī)數(shù),直接將所述隨機(jī)數(shù)作為加密密鑰,或者對(duì)該隨機(jī)數(shù)進(jìn)行加密運(yùn)算,將加密后的隨機(jī)數(shù)作為加密密鑰;將預(yù)置的字符串作為加密密鑰,或者對(duì)該預(yù)置的字符串進(jìn)行加密運(yùn)算,將加密后的預(yù)置字符串作為加密密鑰;將生成的隨機(jī)數(shù)和預(yù)置的字符串作為加密密鑰,或者將該隨機(jī)數(shù)和預(yù)置字符串進(jìn)行加密運(yùn)算,將上述加密運(yùn)算結(jié)果作為加密密鑰。對(duì)上述相關(guān)數(shù)據(jù)進(jìn)行加密運(yùn)算可以采用3DES加密算法。PIN碼輸入系統(tǒng)02獲取加密密鑰的具體過(guò)程請(qǐng)參照?qǐng)D2所述實(shí)施例的具體描述,在此不再贅述。PIN碼輸入系統(tǒng)02利用加密密鑰對(duì)輸入的PIN碼進(jìn)行加密,得到Pl密文后,再對(duì)Pl密文進(jìn)行編碼,得到所述PIN碼密文。PIN碼輸入系統(tǒng)02將PIN碼密文通過(guò)特定的數(shù)據(jù)交互接口傳送至中間件01。由于加密密鑰是PIN碼輸入系統(tǒng)02動(dòng)態(tài)生成的,因此保證了加密密鑰的唯一性;且PIN碼輸入系統(tǒng)02對(duì)寫(xiě)入共享內(nèi)存的Pl密文進(jìn)行了編碼處理,使PIN碼的傳輸更有安全性。本發(fā)明實(shí)施例中,PIN碼輸入系統(tǒng)02對(duì)Pl密文進(jìn)行編碼的方法可以采用BASE64編碼方式。中間件01獲取PIN碼輸入系統(tǒng)02傳送的PIN碼密文,同時(shí)獲取該P(yáng)IN碼密文的字符數(shù),判斷該P(yáng)IN碼密文的字符數(shù)是否符合PIN碼輸入規(guī)則。若該P(yáng)IN碼密文的字符數(shù)不符合PIN碼輸入規(guī)則,則中間件01通過(guò)特定的數(shù)據(jù)交互接口,清空PIN碼框中的字符,并顯示PIN碼輸入框,要求用戶重新輸入PIN碼。如果中間件01判斷PIN碼密文的字符數(shù)符合PIN碼輸入規(guī)則,則解析PIN碼密文。所述中間件01解析PIN碼密文采用與PIN碼輸入系統(tǒng)02相適配的解密算法,所述解密算法可以是安全哈希算法;若PIN碼輸入系統(tǒng)02采用3DES加密算法,則中間件01對(duì)PIN碼密文解密時(shí),也采用3DES解密算法。若中間件01對(duì)PIN碼密文解析失敗,則發(fā)出解析失敗的提示信息,提示用戶未能成功獲取所述PIN碼。中間件01解析PIN碼密文,獲取到PIN碼后,判斷PIN碼是否符合PIN碼輸入規(guī)貝U,若是,則通過(guò)PIN碼輸入系統(tǒng)02的數(shù)據(jù)交互接口,清空PIN碼框中的所有字符,并釋放PIN碼輸入系統(tǒng)02 ;若中間件01判斷解析后的PIN碼不符合PIN碼輸入規(guī)則,則通過(guò)PIN碼輸入系統(tǒng)02的數(shù)據(jù)交互接口,清空PIN碼框中的所有字符,并顯示PIN碼輸入框,要求用戶重新輸入PIN碼。由于中間件01與PIN碼輸入系統(tǒng)02均采用特定的數(shù)據(jù)交互接口,且PIN碼輸入系統(tǒng)02的安全級(jí)別與客戶端登陸控件保持一致,因此,減少了客戶端加解密的使用時(shí)間;同時(shí),由于PIN碼輸入系統(tǒng)02采用了動(dòng)態(tài)生成加密密鑰的方法,因此,確保了加密密鑰的唯一性,提高了 PIN碼的安全性。本實(shí)施例通過(guò)在驅(qū)動(dòng)層對(duì)PIN碼進(jìn)行加固,有效地實(shí)現(xiàn)了對(duì)調(diào)用者身份的認(rèn)證,防止了驅(qū)動(dòng)層和應(yīng)用層的PIN碼截取操作;同時(shí),具有較強(qiáng)的反鍵盤(pán)鉤子的能力,能夠?qū)χ髁鞯逆I盤(pán)鉤子進(jìn)行防護(hù),打斷鉤子鏈的傳輸,有效地防止了鍵盤(pán)鉤子類(lèi)木馬程序?qū)IN碼造成的安全威脅,增強(qiáng)了 PIN碼的安全性。以上所述僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制其專利范圍,凡是利用本發(fā)明說(shuō)明書(shū)及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。
      權(quán)利要求
      1.一種PIN碼的安全防護(hù)方法,其特征在于,包括以下步驟: 中間件加載PIN碼輸入系統(tǒng),在加載成功時(shí),通過(guò)數(shù)據(jù)交互接口設(shè)置PIN碼輸入規(guī)則;顯示PIN碼輸入框,供用戶輸入PIN碼; 所述PIN碼輸入系統(tǒng)記錄用戶輸入的PIN碼,對(duì)所述PIN碼進(jìn)行加密和編碼處理得到PIN碼密文,將所述PIN碼密文通過(guò)所述數(shù)據(jù)交互接口傳送至所述中間件; 所述中間件獲取所述PIN碼密文,判斷所述PIN碼密文是否符合所述PIN碼輸入規(guī)則;若是,則解密所述PIN碼密文,獲取所述PIN碼。
      2.如權(quán)利要求1所述的方法,其特征在于,所述PIN碼輸入系統(tǒng)對(duì)所述PIN碼進(jìn)行加密和編碼處理得到PIN碼密文包括: 生成一個(gè)或多個(gè)隨機(jī)數(shù),將所述隨機(jī)數(shù)或?qū)λ鲭S機(jī)數(shù)進(jìn)行加密運(yùn)算的結(jié)果作為加密密鑰;或者 將預(yù)置的一字符串或?qū)λ鲎址M(jìn)行加密運(yùn)算的結(jié)果作為加密密鑰;或者生成一個(gè)或多個(gè)隨機(jī)數(shù),將所述隨機(jī)數(shù)和預(yù)置的一字符串或?qū)λ鲭S機(jī)數(shù)和字符串進(jìn)行加密運(yùn)算的結(jié)果作為加密密鑰; 用所述加密密鑰對(duì)所述PIN碼進(jìn)行加密,得到Pl密文,對(duì)所述Pl密文進(jìn)行編碼,得到所述PIN碼密文。
      3.如權(quán)利要求1所述的方法,其特征在于,所述判斷所述PIN碼密文是否符合所述PIN碼輸入規(guī)則的步驟之后還包括: 若否,則通過(guò)所述數(shù)據(jù)交互接口清空所述PIN碼輸入框,并返回執(zhí)行步驟:顯示PIN碼輸入框,供用戶輸入PIN碼。
      4.如權(quán)利要求1所述的方法,其特征在于,所述中間件加載PIN碼輸入系統(tǒng)之后還包括步驟: 所述PIN碼輸入系統(tǒng)初始化所述數(shù)據(jù)交互接口。
      5.如權(quán)利要求1所述的方法,其特征在于,還包括步驟: 所述中間件通過(guò)所述數(shù)據(jù)交互接口,清空所述PIN碼框中的所有字符,釋放所述PIN碼輸入系統(tǒng)。
      6.一種用于PIN碼安全防護(hù)的客戶端,其特征在于,包括中間件和PIN碼輸入系統(tǒng); 所述中間件用于,加載PIN碼輸入系統(tǒng),在加載成功時(shí),通過(guò)數(shù)據(jù)交互接口設(shè)置PIN碼輸入規(guī)則;顯示PIN碼輸入框,供用戶輸入PIN碼; 所述PIN碼輸入系統(tǒng)用于,記錄用戶輸入的PIN碼,對(duì)所述PIN碼進(jìn)行加密和編碼處理得到PIN碼密文,將所述PIN碼密文通過(guò)所述數(shù)據(jù)交互接口傳送至所述中間件; 所述中間件還用于,獲取所述PIN碼輸入系統(tǒng)傳送的所述PIN碼密文,判斷所述PIN碼密文是否符合所述PIN碼輸入規(guī)則;若是,則解密所述PIN碼密文,獲取所述PIN碼。
      7.如權(quán)利要求6所述的客戶端,其特征在于,所述PIN碼輸入系統(tǒng)還用于: 生成一個(gè)或多個(gè)隨機(jī)數(shù),將所述隨機(jī)數(shù)或?qū)λ鲭S機(jī)數(shù)進(jìn)行加密運(yùn)算的結(jié)果作為加密密鑰;或者 將預(yù)置的一字符串或?qū)λ鲎址M(jìn)行加密運(yùn)算的結(jié)果作為加密密鑰;或者生成一個(gè)或多個(gè)隨機(jī)數(shù), 將所述隨機(jī)數(shù)和預(yù)置的一字符串或?qū)λ鲭S機(jī)數(shù)和字符串進(jìn)行加密運(yùn)算的結(jié)果作為加密密鑰;用所述加密密鑰對(duì)所述PIN碼進(jìn)行加密,得到Pl密文,對(duì)所述Pl密文進(jìn)行編碼,得到所述PIN碼密文。
      8.如權(quán)利要求6所述的客戶端,其特征在于,所述中間件還用于: 在判斷所述PIN碼密文不符合所述PIN碼輸入規(guī)則時(shí),通過(guò)所述數(shù)據(jù)交互接口清空所述PIN碼輸入框,并返回執(zhí)行步驟:顯示PIN碼輸入框,供用戶輸入PIN碼。
      9.如權(quán)利要求6或7所述的客戶端,其特征在于,所述PIN碼輸入系統(tǒng)還用于: 初始化所述數(shù)據(jù)交互接口。
      10.如權(quán)利要求6或8所述的客戶端,其特征在于,所述中間件還用于: 通過(guò)所述數(shù)據(jù)交互接口,清空所`述PIN碼框中的所有字符,釋放所述PIN碼輸入系統(tǒng)。
      全文摘要
      本發(fā)明公開(kāi)了一種PIN碼的安全防護(hù)方法及客戶端,該方法包括中間件加載PIN碼輸入系統(tǒng),在加載成功時(shí),通過(guò)數(shù)據(jù)交互接口設(shè)置PIN碼輸入規(guī)則;顯示PIN碼輸入框,供用戶輸入PIN碼;PIN碼輸入系統(tǒng)記錄用戶輸入的PIN碼,對(duì)PIN碼進(jìn)行加密和編碼處理得到PIN碼密文,將PIN碼密文通過(guò)數(shù)據(jù)交互接口傳送至中間件;中間件獲取PIN碼密文,判斷PIN碼密文是否符合PIN碼輸入規(guī)則;若是,則解密PIN碼密文,獲取PIN碼;具有在驅(qū)動(dòng)層對(duì)PIN碼進(jìn)行加固的有益效果,增強(qiáng)了PIN碼的安全性,有效地防止了驅(qū)動(dòng)層和應(yīng)用層的PIN碼截取操作,具有較強(qiáng)的反鍵盤(pán)鉤子的能力。
      文檔編號(hào)H04L29/06GK103107883SQ20131000133
      公開(kāi)日2013年5月15日 申請(qǐng)日期2013年1月4日 優(yōu)先權(quán)日2013年1月4日
      發(fā)明者陳柳章 申請(qǐng)人:深圳市文鼎創(chuàng)數(shù)據(jù)科技有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1