端;最后,發(fā)送端把K2(M)通過(guò)公用信道發(fā)送給接收端;同樣,加密過(guò)程不會(huì)增加手機(jī)的計(jì)算量,而且在公用信道上只傳送密文;
[0032](4)接收端收到K2(M)后傳送給自己的501^¥,501^¥使用會(huì)話(huà)密鑰1(2對(duì)密文1(2(10進(jìn)行2次解密得到明文M,并同時(shí)回傳給接收端;此時(shí),接收端的手機(jī)用戶(hù)就可看到發(fā)送端傳送過(guò)來(lái)的明文敏感信息。
[0033]作為本發(fā)明的一種優(yōu)選方案,在零密鑰傳輸機(jī)制中,理論上,在公共信道上傳送的3次密文可能會(huì)增加數(shù)據(jù)被破解的機(jī)會(huì),但是在完成I次數(shù)據(jù)加密傳送過(guò)程之后,為了保證一次一密,傳輸雙方的SDKEY會(huì)自動(dòng)刪除當(dāng)前使用的會(huì)話(huà)密鑰;同時(shí),傳輸雙方?jīng)]有在公共信道上傳送加密密鑰,這樣會(huì)減少數(shù)據(jù)被破解的機(jī)會(huì),從而帶來(lái)更高的安全性;實(shí)際上,收發(fā)雙方在信道上進(jìn)行3次通信和4次加解密過(guò)程,安全性增強(qiáng)是通過(guò)犧牲帶寬資源和計(jì)算量來(lái)實(shí)現(xiàn)的;其中,4次加解密過(guò)程都是SDKEY來(lái)完成的,幾乎不占用手機(jī)系統(tǒng)資源,因此該方案僅適用于通信信道和終端計(jì)算能力都比較充足的應(yīng)用環(huán)境;同時(shí),還需要為該方案設(shè)計(jì)新的零密鑰加密算法;目前所使用的離散冪運(yùn)算的算法速度較慢,但采用了精心優(yōu)化過(guò)的算法之后,速度弱點(diǎn)已經(jīng)得到了有效的彌補(bǔ);
[0034]作為本發(fā)明的一種優(yōu)選方案,公鑰傳輸步驟中,針對(duì)不同的文件類(lèi)型還采用了不同的加密模式,在文件中采用快速加解密標(biāo)識(shí)位來(lái)標(biāo)識(shí)。
[0035]作為本發(fā)明的一種優(yōu)選方案,公鑰傳輸步驟中,文件字節(jié)流化后轉(zhuǎn)換成字節(jié)流,并把需要加密的敏感數(shù)據(jù)傳送給自身的SDKEY; SDKEY利用當(dāng)前的會(huì)話(huà)加密密鑰對(duì)敏感數(shù)據(jù)進(jìn)行加密,同時(shí)利用接收方的公鑰對(duì)當(dāng)前的會(huì)話(huà)加密密鑰進(jìn)行加密打包,最后獲得加密字節(jié)流并進(jìn)行Sec文件封裝,封裝完成之后即可調(diào)用通信模塊完成發(fā)送任務(wù);當(dāng)接收方接收完畢之后,系統(tǒng)自動(dòng)校驗(yàn)當(dāng)前的接收文件是否有效;當(dāng)用戶(hù)選擇打開(kāi)該密文文件時(shí),系統(tǒng)首先把該Sec文件傳送給自身的SDKEY,SDKEY完成會(huì)話(huà)加密密鑰的解密拆包任務(wù),然后使用會(huì)話(huà)密鑰對(duì)Sec文件里的密文部分進(jìn)行自動(dòng)解密,解密完成之后再傳送給手機(jī)的內(nèi)存供用戶(hù)查看;當(dāng)用戶(hù)退出瀏覽之后,系統(tǒng)會(huì)自動(dòng)刪除內(nèi)存中的明文數(shù)據(jù)部分。
[0036]作為本發(fā)明的一種優(yōu)選方案,所述手機(jī)數(shù)據(jù)傳輸方法在基于SDKEY的加密數(shù)據(jù)傳輸步驟之前還包括:
[0037]步驟S1、雙因子身份認(rèn)證步驟;
[0038]數(shù)據(jù)保護(hù)的第一關(guān)是手機(jī)終端的登陸認(rèn)證,采用基于硬件SDKEY和PIN的雙重身份認(rèn)證機(jī)制;
[0039]手機(jī)在操作系統(tǒng)啟動(dòng)之后將會(huì)加載SDKEY認(rèn)證登陸模塊,如果檢測(cè)不到SDKEY則會(huì)提示插入;在檢測(cè)到SDKEY之后將會(huì)要求用戶(hù)輸入登陸PIN,登陸模塊會(huì)使用存儲(chǔ)在SDKEY里的PIN登陸密鑰對(duì)用戶(hù)輸入的PIN進(jìn)行加密,最后把密文跟手機(jī)里存儲(chǔ)的PIN密文進(jìn)行比對(duì),只有二者完全匹配才能成功登陸;同樣,在手機(jī)自動(dòng)鎖屏之后,也使用相同的認(rèn)證機(jī)制來(lái)登陸安卓系統(tǒng)。
[0040]作為本發(fā)明的一種優(yōu)選方案,所述手機(jī)數(shù)據(jù)傳輸方法在基于SDKEY的加密數(shù)據(jù)傳輸步驟之前還包括:
[0041 ] 步驟S2、基于SDKEY的加密短信存儲(chǔ)和發(fā)送步驟;
[0042]基于SDKEY的短信加密存儲(chǔ)和發(fā)送模塊使用了SDKEY硬件來(lái)加密和解密用戶(hù)的敏感短信;
[0043]用戶(hù)選定敏感短信或人工撰寫(xiě)短信后使用SDKEY加密保存到手機(jī)存儲(chǔ),以后每次打開(kāi)會(huì)使用SDKEY解密并呈現(xiàn)給用戶(hù),解密流程跟加密流程類(lèi)似;SDKEY的合法用戶(hù)是感受不到SDKEY在后臺(tái)加解密過(guò)程的,而非法用戶(hù)因?yàn)闆](méi)有SDKEY而不能進(jìn)入安全信箱,針對(duì)某些場(chǎng)合還可設(shè)定要求輸入PIN碼才能查看;針對(duì)系統(tǒng)文件,因?yàn)槊舾卸绦哦际羌用芎笠悦芪谋4娴模砸矡o(wú)法查看其內(nèi)容。
[0044]本發(fā)明的有益效果在于:本發(fā)明提出的基于智能密碼鑰匙的手機(jī)數(shù)據(jù)傳輸方法,可提高數(shù)據(jù)傳輸?shù)陌踩浴?br>[0045]本發(fā)明采用基于SDKEY提供的安全計(jì)算和存儲(chǔ)環(huán)境來(lái)實(shí)現(xiàn),它具備存儲(chǔ)功能,強(qiáng)制身份認(rèn)證、高強(qiáng)度加解密以及電子簽名等安全功能。首先,基于安卓手機(jī)系統(tǒng)的硬件SDKEY的登陸和鎖屏登陸認(rèn)證;其次,提出基于硬件SDKEY的短信加密存儲(chǔ)方案,所有發(fā)送的短信都通過(guò)SDKEY加密;再次,針對(duì)遠(yuǎn)程的敏感數(shù)據(jù)傳輸使用基于硬件SDKEY的加密傳輸,并且為了解決密鑰傳輸?shù)膯?wèn)題設(shè)計(jì)多種密鑰交換機(jī)制。
【附圖說(shuō)明】
[0046]圖1為數(shù)據(jù)安全傳輸方案總體架構(gòu)圖。
[0047]圖2為SDKEY登陸認(rèn)證流程圖。
[0048]圖3為敏感短信加密存儲(chǔ)過(guò)程示意圖。
[0049]圖4為零密鑰加密傳送密文流程圖。
[0050]圖5為Sec加密文件結(jié)構(gòu)示意圖。
[0051 ]圖6為公鑰傳送機(jī)制示意圖。
【具體實(shí)施方式】
[0052 ]下面結(jié)合附圖詳細(xì)說(shuō)明本發(fā)明的優(yōu)選實(shí)施例。
[0053]實(shí)施例一
[0054]本發(fā)明揭示了一種基于智能密碼鑰匙的手機(jī)數(shù)據(jù)傳輸方法,可提高數(shù)據(jù)傳輸?shù)陌踩?。SDKEY的安全加密模塊提供基本的加解密功能,同時(shí)還提供敏感數(shù)據(jù)存儲(chǔ)區(qū)和大容量存儲(chǔ)區(qū)。其中敏感數(shù)據(jù)存儲(chǔ)區(qū)用于存儲(chǔ)密鑰和個(gè)人識(shí)別密碼(Personal Identificat1nNumber,PIN)等敏感數(shù)據(jù),大容量存儲(chǔ)區(qū)用于存儲(chǔ)其他需要加密的數(shù)據(jù)。SDKEY通過(guò)MicroSD接口插在安卓手機(jī)上,文中開(kāi)發(fā)的原型系統(tǒng)是一個(gè)數(shù)據(jù)保護(hù)類(lèi)的安卓系統(tǒng)安裝包(androidpackage,APK)程序,它位于安卓框架的應(yīng)用層,如圖1所示。該原型系統(tǒng)具有3個(gè)功能模塊,即身份認(rèn)證登陸模塊、短信加密存儲(chǔ)和發(fā)送模塊以及敏感數(shù)據(jù)加密傳輸模塊。下面分別介紹它們的實(shí)現(xiàn)方案。
[0055]本發(fā)明基于智能密碼鑰匙的手機(jī)數(shù)據(jù)傳輸方法具體包括如下步驟:
[0056]【步驟SI】雙因子身份認(rèn)證。
[0057]數(shù)據(jù)保護(hù)的第一關(guān)是手機(jī)終端的登陸認(rèn)證。本文設(shè)計(jì)了基于硬件SDKEY和PIN的雙重身份認(rèn)證機(jī)制,如圖2所示。手機(jī)在操作系統(tǒng)啟動(dòng)之后將會(huì)加載SDKEY認(rèn)證登陸模塊,如果檢測(cè)不到SDKEY則會(huì)提示插入;在檢測(cè)到SDKEY之后將會(huì)要求用戶(hù)輸入登陸PIN,登陸模塊會(huì)使用存儲(chǔ)在SDKEY里的PIN登陸密鑰對(duì)用戶(hù)輸入的PIN進(jìn)行加密,最后把密文跟手機(jī)里存儲(chǔ)的PIN密文進(jìn)行比對(duì),只有二者完全匹配才可以成功登陸;同樣,在手機(jī)自動(dòng)鎖屏之后,也使用相同的認(rèn)證機(jī)制來(lái)登陸安卓系統(tǒng)。
[0058]【步驟S2】基于SDKEY的加密短信存儲(chǔ)和發(fā)送。
[0059]基于SDKEY的短信加密存儲(chǔ)和發(fā)送模塊使用了SDKEY硬件來(lái)加密和解密用戶(hù)的敏感短信,加密流程如圖3所示。
[0060]用戶(hù)選定敏感短信(或可人工撰寫(xiě))后使用SDKEY加密保存到手機(jī)存儲(chǔ),以后每次打開(kāi)會(huì)使用SDKEY解密并呈現(xiàn)給用戶(hù),解密流程跟加密流程類(lèi)似。SDKEY的合法用戶(hù)是感受不到SDKEY在后臺(tái)加解密過(guò)程的,而非法用戶(hù)因?yàn)闆](méi)有SDKEY而不能進(jìn)入安全信箱,針對(duì)某些場(chǎng)合還可設(shè)定要求輸入PIN碼才可查看。針對(duì)系統(tǒng)文件,因?yàn)槊舾卸绦哦际羌用芎笠悦芪谋4娴?,所以也無(wú)法查看其內(nèi)容。
[0061 ]【步驟S3】基于SDKEY的加密數(shù)據(jù)傳輸。
[0062]為了提高數(shù)據(jù)加解密的速度,一般加解密算法都是基于對(duì)稱(chēng)密碼算法實(shí)現(xiàn)的,因此需要設(shè)計(jì)安全有效的密鑰交換方案。根據(jù)應(yīng)用場(chǎng)景的不同,本發(fā)明設(shè)計(jì)了 2種不同的實(shí)現(xiàn)方案。可以采用步驟S31或步驟S32的方案實(shí)現(xiàn)。
[0063]步驟S31、零密鑰傳輸機(jī)制。
[0064]零密鑰傳輸機(jī)制如圖4所示,發(fā)送端不需要向接收端傳遞自己的加密密鑰,但是需要向接收端3次傳遞加密數(shù)據(jù),同時(shí)完成4次加解密過(guò)程。
[0065](I)發(fā)送端需要發(fā)送敏感信息M(明文),它會(huì)把M傳送給自己的SDKEY; SDKEY生成臨時(shí)會(huì)話(huà)密鑰Kl并對(duì)明文M進(jìn)行I次加密,同時(shí)回傳密文Kl (M)給發(fā)送端