国产精品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>

      密鑰存儲(chǔ)方法、數(shù)據(jù)加解密方法、電子簽名方法及其裝置與流程

      文檔序號(hào):11147424閱讀:1290來源:國知局
      密鑰存儲(chǔ)方法、數(shù)據(jù)加解密方法、電子簽名方法及其裝置與制造工藝

      本發(fā)明涉及安全技術(shù)領(lǐng)域,尤其涉及一種密鑰存儲(chǔ)方法及其裝置、一種數(shù)據(jù)加解密方法及其裝置以及一種電子簽名方法及其裝置。



      背景技術(shù):

      密鑰一般泛指生產(chǎn)、生活所應(yīng)用到的各種加密技術(shù),能夠?qū)€(gè)人資料、企業(yè)機(jī)密進(jìn)行有效的監(jiān)管。密鑰管理是指對(duì)密鑰進(jìn)行管理的行為,如加密、解密、破解等等,包括從密鑰的產(chǎn)生到密鑰銷毀的各個(gè)方面,廣泛應(yīng)用于各個(gè)領(lǐng)域。

      在使用密鑰進(jìn)行加密解密的過程中,無論采用的是何種加解密方式,包括對(duì)稱加密、非對(duì)稱加密等加密方式,都需要對(duì)相應(yīng)的密鑰(尤指私鑰)進(jìn)行存儲(chǔ)。如,在使用Android系統(tǒng)的終端設(shè)備中,一般采用以下方式對(duì)密鑰進(jìn)行存儲(chǔ):1)直接硬編碼在代碼中;2)通過明文方式或通過固定密鑰加密方式對(duì)密鑰進(jìn)行加密后存儲(chǔ)在終端設(shè)備中;3)使用keystore密鑰庫進(jìn)行存儲(chǔ)等。

      但是,由于終端設(shè)備的不安全性,傳統(tǒng)的密鑰管理技術(shù)不再能保證密鑰的安全性能。具體,對(duì)于以上描述的三種存儲(chǔ)方式來說,采用前兩種方式存儲(chǔ)的密鑰,不法分子可以直接通過反編譯的方式得到存儲(chǔ)的密鑰,可見,采用這兩種方式存儲(chǔ)的密鑰無意易遭到非法滲透和竊?。徊捎煤笠环N方式存儲(chǔ)的密鑰,不法分子可以通過字典式攻擊,如工具Android-keystore-password-recover進(jìn)行破譯得到相應(yīng)的密鑰,同樣不能實(shí)現(xiàn)密鑰的安全存儲(chǔ)。

      對(duì)于終端設(shè)備應(yīng)用程序爆棚式發(fā)展的今天來說,如何安全存儲(chǔ)密鑰成為一個(gè)棘手且亟需解決的技術(shù)問題。



      技術(shù)實(shí)現(xiàn)要素:

      針對(duì)上述問題,本發(fā)明提供了一種密鑰存儲(chǔ)方法及其裝置、一種數(shù)據(jù)加解密方法及其裝置以及一種電子簽名方法及其裝置,有效解決了終端設(shè)備中密鑰,尤指私鑰的安全存儲(chǔ)問題。

      本發(fā)明提供的技術(shù)方案如下:

      一種密鑰存儲(chǔ)方法,應(yīng)用于終端設(shè)備,所述終端設(shè)備中的終端應(yīng)用與認(rèn)證服務(wù)器通信連接,所述密鑰存儲(chǔ)方法中包括:

      S11接收認(rèn)證服務(wù)器下發(fā)的安全插件并對(duì)其進(jìn)行存儲(chǔ),所述安全插件中包括與用戶唯一關(guān)聯(lián)的運(yùn)算算法和應(yīng)用信息;

      S21根據(jù)應(yīng)用信息隨機(jī)生成密鑰;

      S31調(diào)用安全插件對(duì)密鑰進(jìn)行加密并將加密后生成的保護(hù)密鑰連同應(yīng)用信息一并存儲(chǔ)在安全插件中,所述安全插件將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)密鑰進(jìn)行加密生成保護(hù)密鑰;

      S41銷毀密鑰。

      進(jìn)一步優(yōu)選地,在步驟S21中具體包括:

      根據(jù)應(yīng)用信息生成密鑰對(duì),所述密鑰對(duì)中包括私鑰和公鑰;

      在步驟S31中具體包括:

      調(diào)用安全插件對(duì)私鑰進(jìn)行加密并將加密后生成的私鑰保護(hù)密鑰連同應(yīng)用信息一并存儲(chǔ)在安全插件中,所述安全插件將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)私鑰進(jìn)行加密生成私鑰保護(hù)密鑰;

      在步驟41中具體包括:

      銷毀私鑰。

      本發(fā)明還提供了一種密鑰存儲(chǔ)方法,應(yīng)用于終端設(shè)備,所述終端設(shè)備中的終端應(yīng)用與認(rèn)證服務(wù)器通信連接,所述密鑰存儲(chǔ)方法中包括:

      S12接收認(rèn)證服務(wù)器下發(fā)的安全插件并對(duì)其進(jìn)行存儲(chǔ),所述安全插件中包括與用戶唯一關(guān)聯(lián)的運(yùn)算算法、應(yīng)用信息及密鑰,所述密鑰由認(rèn)證服務(wù)器根據(jù)應(yīng)用信息生成;

      S22調(diào)用安全插件對(duì)密鑰進(jìn)行加密并將加密后生成的保護(hù)密鑰連同應(yīng)用信息一并存儲(chǔ)在安全插件中,所述安全插件將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)密鑰進(jìn)行加密生成保護(hù)密鑰;

      S32銷毀密鑰。

      進(jìn)一步優(yōu)選地,在認(rèn)證服務(wù)器中,生成的密鑰包括密鑰對(duì),所述密鑰對(duì)中包括私鑰和公鑰;

      則在步驟S22中具體包括:

      調(diào)用安全插件對(duì)私鑰進(jìn)行加密并將加密后生成的私鑰保護(hù)密鑰連同應(yīng)用信息一并存儲(chǔ)在安全插件中,所述安全插件將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)私鑰進(jìn)行加密生成私鑰保護(hù)密鑰;

      在步驟S32中具體包括:

      銷毀私鑰。

      本發(fā)明還提供了一種數(shù)據(jù)加解密方法,所述數(shù)據(jù)加解密方法應(yīng)用于上述密鑰存儲(chǔ)方法,所述數(shù)據(jù)加解密方法中包括:

      S13獲取應(yīng)用信息并調(diào)用安全插件對(duì)其進(jìn)行驗(yàn)證;

      S23調(diào)用安全插件對(duì)內(nèi)部存儲(chǔ)的保護(hù)密鑰進(jìn)行解密得到密鑰,所述安全插件將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)保護(hù)密鑰進(jìn)行解密還原得到密鑰;

      S33調(diào)用安全插件采用還原得到的密鑰和預(yù)設(shè)加密算法對(duì)待發(fā)送數(shù)據(jù)進(jìn)行加密并將加密后的數(shù)據(jù)發(fā)送出去,或調(diào)用安全插件采用還原得到的密鑰和預(yù)設(shè)解密算法對(duì)接收到的加密數(shù)據(jù)進(jìn)行解密得到解密后的數(shù)據(jù);

      S43銷毀密鑰。

      本發(fā)明還提供了一種數(shù)據(jù)解密方法,所述數(shù)據(jù)解密方法應(yīng)用于上述密鑰存儲(chǔ)方法,所述數(shù)據(jù)解密方法中具體包括:

      S14獲取應(yīng)用信息并調(diào)用安全插件對(duì)其進(jìn)行驗(yàn)證;

      S24調(diào)用安全插件對(duì)內(nèi)部存儲(chǔ)的私鑰保護(hù)密鑰進(jìn)行解密得到私鑰,所述安全插件將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)私鑰保護(hù)密鑰進(jìn)行解密還原得到私鑰;

      S34調(diào)用安全插件采用還原得到的私鑰和預(yù)設(shè)解密算法對(duì)接收到的加密數(shù)據(jù)進(jìn)行解密,以此得到解密后的數(shù)據(jù);

      S44銷毀私鑰。

      本發(fā)明還提供了一種電子簽名方法,所述電子簽名方法應(yīng)用于上述密鑰存儲(chǔ)方法,所述電子簽名方法中包括:

      S15獲取應(yīng)用信息并調(diào)用安全插件對(duì)其進(jìn)行驗(yàn)證;

      S25調(diào)用安全插件對(duì)內(nèi)部存儲(chǔ)的保護(hù)密鑰進(jìn)行解密得到私鑰,所述安全插件將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)私鑰保護(hù)密鑰進(jìn)行解密還原得到私鑰;

      S35調(diào)用安全插件采用生成的私鑰和預(yù)設(shè)簽名算法對(duì)待簽名原文進(jìn)行簽名;

      S45銷毀私鑰。

      本發(fā)明還提供了一種密鑰存儲(chǔ)裝置,應(yīng)用于終端設(shè)備,所述終端設(shè)備中的終端應(yīng)用與認(rèn)證服務(wù)器通信連接,所述密鑰存儲(chǔ)裝置中包括:

      存儲(chǔ)模塊,用于存儲(chǔ)與用戶唯一關(guān)聯(lián)的運(yùn)算算法、應(yīng)用信息以及對(duì)密鑰加密生成的保護(hù)密鑰,或用于存儲(chǔ)與用戶唯一關(guān)聯(lián)的運(yùn)算算法、應(yīng)用信息以及對(duì)私鑰加密生成的私鑰保護(hù)密鑰;

      信息提取模塊,用于從存儲(chǔ)模塊中提取應(yīng)用信息及從外部提取密鑰/私鑰;

      第一運(yùn)算模塊,用于將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)密鑰進(jìn)行加密生成保護(hù)密鑰,或用于將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)私鑰進(jìn)行加密生成私鑰保護(hù)密鑰;以及

      第一密鑰銷毀模塊,在生成保護(hù)密鑰后銷毀密鑰,或在生成私鑰保護(hù)密鑰之后銷毀私鑰。

      本發(fā)明還提供了一種數(shù)據(jù)加解密裝置,應(yīng)用于終端設(shè)備,所述數(shù)據(jù)加解密裝置中包括上述密鑰存儲(chǔ)裝置,在所述密鑰存儲(chǔ)裝置中:

      所述存儲(chǔ)模塊還存儲(chǔ)有對(duì)待發(fā)送數(shù)據(jù)進(jìn)行加密的預(yù)設(shè)加密算法,和/或存儲(chǔ)有對(duì)接收到的加密數(shù)據(jù)進(jìn)行解密的預(yù)設(shè)解密算法;

      所述數(shù)據(jù)加解密裝置還包括:

      第一應(yīng)用信息驗(yàn)證模塊,根據(jù)存儲(chǔ)模塊中存儲(chǔ)的應(yīng)用信息對(duì)獲取的應(yīng)用信息進(jìn)行驗(yàn)證;

      第二運(yùn)算模塊,用于采用密鑰和預(yù)設(shè)加密算法對(duì)待發(fā)送數(shù)據(jù)進(jìn)行加密,或還用于采用私鑰和預(yù)設(shè)解密算法對(duì)接收到的加密數(shù)據(jù)進(jìn)行解密;以及,

      第二密鑰銷毀模塊,在對(duì)待發(fā)送數(shù)據(jù)進(jìn)行加密后銷毀密鑰,或在對(duì)接收到的加密數(shù)據(jù)進(jìn)行解密后銷毀密鑰。

      本發(fā)明還提供了一種電子簽名裝置,應(yīng)用于終端設(shè)備,所述電子簽名裝置中包括上述數(shù)據(jù)加解密裝置,在所述密鑰存儲(chǔ)裝置中:

      所述存儲(chǔ)模塊還存儲(chǔ)有對(duì)待簽名原文進(jìn)行簽名的預(yù)設(shè)簽名算法及對(duì)接收到的簽名進(jìn)行解析的電子證書和預(yù)設(shè)解簽算法;

      所述電子簽名裝置中還包括:

      第二應(yīng)用信息驗(yàn)證模塊,根據(jù)存儲(chǔ)模塊中存儲(chǔ)的應(yīng)用信息對(duì)獲取的應(yīng)用信息進(jìn)行驗(yàn)證;

      第三運(yùn)算模塊,用于采用生成的私鑰和預(yù)設(shè)簽名算法對(duì)待簽名原文進(jìn)行簽名,或采用公鑰、電子證書和預(yù)設(shè)解簽算法對(duì)接收到的簽名進(jìn)行解析;

      第三密鑰銷毀模塊,在對(duì)待簽名原文進(jìn)行簽名之后銷毀私鑰。

      與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于:

      在本發(fā)明提供的密鑰存儲(chǔ)方法及其裝置中,終端設(shè)備中的安全插件使用應(yīng)用信息作為安全因子,使用與用戶唯一關(guān)聯(lián)的運(yùn)算算法對(duì)密鑰/私鑰進(jìn)行加密生成保護(hù)密鑰/私鑰保護(hù)密鑰并將其存儲(chǔ)在安全插件中,隨后將密鑰/私鑰進(jìn)行銷毀,以此完成密鑰/私鑰在終端設(shè)備中的存儲(chǔ)。由每個(gè)終端設(shè)備中存儲(chǔ)的安全插件都是唯一的,使用該安全插件對(duì)密鑰/私鑰進(jìn)行加密生成的保護(hù)密鑰/私鑰保護(hù)密鑰自然具備了唯一性,大大提高了密鑰/私鑰存儲(chǔ)的安全性能,不容易被破解,即使某一終端設(shè)備中安裝的安全插件被破解了,也不會(huì)影響其他用戶的安全性能。另外,密鑰/私鑰在調(diào)用的過程中,只在終端設(shè)備的內(nèi)存中存在非常短暫的時(shí)間,有效避免了泄露的風(fēng)險(xiǎn)。

      在本發(fā)明提供的數(shù)據(jù)加解密方法及其裝置中,對(duì)存儲(chǔ)在安全插件中的保護(hù)密鑰/私鑰保護(hù)密鑰進(jìn)行解密還原得到密鑰/私鑰之后,使用該密鑰對(duì)待發(fā)送數(shù)據(jù)進(jìn)行加密/對(duì)接收的加密數(shù)據(jù)進(jìn)行解密,完成對(duì)數(shù)據(jù)的加解密操作。在這一過程中,由密鑰/私鑰以保護(hù)密鑰/私鑰保護(hù)密鑰的形式存儲(chǔ)在安全插件中,大大提高了加解密的過程中的安全性能及數(shù)據(jù)在傳輸過程中的安全性能。另外,這一過程中,采用多因素(如通過設(shè)置的標(biāo)識(shí)碼、設(shè)備指紋、手勢(shì)碼等)密鑰/私鑰授權(quán)機(jī)制對(duì)其的使用權(quán)限進(jìn)行保護(hù),有效地防止安全插件的非法拷貝使用,為數(shù)據(jù)的加解密提供了一個(gè)安全的運(yùn)行環(huán)境。

      在本發(fā)明提供的電子簽名方法及其裝置中,對(duì)存儲(chǔ)在安全插件中的私鑰保護(hù)密鑰進(jìn)行解密還原得到私鑰之后,使用該私鑰對(duì)待簽名原文進(jìn)行簽名,完成簽名操作。在這一過程中,由私鑰以私鑰保護(hù)密鑰的形式存儲(chǔ)在安全插件中,大大提高了簽名的安全性能。另外,這一過程中,采用多因素(如通過設(shè)置的標(biāo)識(shí)碼、設(shè)備指紋、手勢(shì)碼等)私鑰授權(quán)機(jī)制對(duì)其的使用權(quán)限進(jìn)行保護(hù),為簽名操作提供了一個(gè)安全的運(yùn)行環(huán)境。

      附圖說明

      圖1為本發(fā)明中密鑰存儲(chǔ)方法一種實(shí)施方式流程示意圖;圖2為本發(fā)明中密鑰存儲(chǔ)方法另一種實(shí)施方式流程示意圖;圖3為本發(fā)明中對(duì)待發(fā)送數(shù)據(jù)進(jìn)行加密流程示意圖;圖4為本發(fā)明中對(duì)接收數(shù)據(jù)進(jìn)行解密流程示意圖;圖5為本發(fā)明中電子簽名方法流程示意圖;圖6為本發(fā)明中電子證書的生成和存儲(chǔ)流程示意圖;圖7為本發(fā)明中密鑰存儲(chǔ)裝置結(jié)構(gòu)示意圖;圖8為本發(fā)明中數(shù)據(jù)加解密裝置結(jié)構(gòu)示意圖;圖9為本發(fā)明中電子簽名裝置結(jié)構(gòu)示意圖。

      附圖標(biāo)號(hào)說明:100-密鑰存儲(chǔ)裝置,110-存儲(chǔ)模塊,120-信息提取模塊,130-第一運(yùn)算模塊,140-第一密鑰銷毀模塊,200-數(shù)據(jù)加解密裝置,210-第一應(yīng)用信息驗(yàn)證模塊,220-第二運(yùn)算模塊,230-第二密鑰銷毀模塊,300-電子簽名裝置,310-第二應(yīng)用信息驗(yàn)證模塊,S320-第三運(yùn)算模塊,330-第三密鑰銷毀模塊。

      具體實(shí)施方式

      如圖1所示為本發(fā)明提供的密鑰存儲(chǔ)方法一種實(shí)施方式流程示意圖,具體該密鑰存儲(chǔ)方法應(yīng)用于終端設(shè)備,如手機(jī)、平板電腦等,且終端設(shè)備中的終端應(yīng)用與認(rèn)證服務(wù)器通信連接。從圖中可以看出,在該密鑰存儲(chǔ)方法中包括:S11接收認(rèn)證服務(wù)器下發(fā)的安全插件并對(duì)其進(jìn)行存儲(chǔ),安全插件中包括與用戶唯一關(guān)聯(lián)的運(yùn)算算法和應(yīng)用信息和應(yīng)用信息;S21根據(jù)應(yīng)用信息生成密鑰(具體該密鑰在終端設(shè)備中的終端應(yīng)用中產(chǎn)生);S31調(diào)用安全插件對(duì)密鑰進(jìn)行加密并將加密后生成的保護(hù)密鑰連同應(yīng)用信息一并存儲(chǔ)在安全插件中,安全插件將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)密鑰進(jìn)行加密生成保護(hù)密鑰;S41銷毀密鑰。

      從以上描述可以看出,在本實(shí)施方式中,終端設(shè)備中根據(jù)應(yīng)用信息生成了密鑰之后,隨即對(duì)其進(jìn)行加密生成保護(hù)密鑰并存儲(chǔ)在認(rèn)證服務(wù)器下發(fā)的安全插件中,與此同時(shí)將生成的密鑰進(jìn)行銷毀。之后,在使用該密鑰進(jìn)行加解密/簽名的過程中,首先對(duì)內(nèi)部存儲(chǔ)的保護(hù)密鑰進(jìn)行解密得到相應(yīng)的密鑰,之后再進(jìn)行相應(yīng)的操作,且在完成相應(yīng)操作之后將解密得到的密鑰進(jìn)行銷毀??梢钥闯觯傻拿荑€沒有直接存儲(chǔ)在終端設(shè)備中,在使用的過程中,也只是在終端設(shè)備的內(nèi)存中存在短暫的時(shí)間,用完即清空,大大提升了對(duì)密鑰的保護(hù)。

      更具體來說,在步驟S11中包括認(rèn)證服務(wù)器生成安全插件并將其下發(fā)至終端設(shè)備的步驟,具體:在使用安全插件對(duì)密鑰進(jìn)行加密之前,用戶首先通過終端設(shè)備中的終端應(yīng)用在認(rèn)證服務(wù)器中進(jìn)行注冊(cè),以此認(rèn)證服務(wù)器生成相應(yīng)的安全插件并將其返回至終端應(yīng)用中存儲(chǔ)。且認(rèn)證服務(wù)器根據(jù)終端應(yīng)用發(fā)送的應(yīng)用信息運(yùn)算得到運(yùn)算算法并編譯成安全插件的步驟,具體包括:S011根據(jù)接收的應(yīng)用信息生成隨機(jī)數(shù),并將隨機(jī)數(shù)設(shè)定為密鑰參數(shù);S012根據(jù)密鑰參數(shù)對(duì)預(yù)設(shè)簽名算法進(jìn)行重構(gòu)得到運(yùn)算算法;S013將接收到的應(yīng)用信息和生成的運(yùn)算算法一并編譯得到安全插件并將其下發(fā)至支付應(yīng)用。進(jìn)一步來說,在步驟S012,對(duì)預(yù)設(shè)簽名算法進(jìn)行重構(gòu)得到運(yùn)算算法的步驟中,具體包括:根據(jù)密鑰參數(shù)改變預(yù)設(shè)簽名算法的運(yùn)算順序得到運(yùn)算算法;和/或,根據(jù)密鑰參數(shù)改變預(yù)設(shè)簽名算法的分組數(shù)據(jù)塊的結(jié)構(gòu)及對(duì)應(yīng)分組數(shù)據(jù)塊的運(yùn)算順序得到運(yùn)算算法;和/或,根據(jù)密鑰參數(shù)改變預(yù)設(shè)簽名算法的固定參數(shù)得到運(yùn)算算法。

      以下結(jié)合具體實(shí)施例對(duì)認(rèn)證服務(wù)器生成運(yùn)算算法的過程作出詳細(xì)描述:

      通過改變預(yù)設(shè)簽名算法的運(yùn)算優(yōu)先級(jí)生成運(yùn)算算法的一個(gè)具體實(shí)施例為:根據(jù)唯一標(biāo)識(shí)應(yīng)用信息隨機(jī)生成一8位隨機(jī)密鑰,則根據(jù)生成的隨機(jī)密鑰對(duì)預(yù)算算法各步驟的運(yùn)算優(yōu)先級(jí)重新排列。此時(shí),若預(yù)設(shè)簽名算法中包括了8個(gè)步驟,且生成的隨機(jī)密鑰為31245768,則生成的運(yùn)算算法中,原本預(yù)設(shè)簽名算法中的第3個(gè)步驟優(yōu)先運(yùn)算,接著依次是第1個(gè)步驟、第2個(gè)步驟、第4個(gè)步驟、第5個(gè)步驟、第7個(gè)步驟、第6個(gè)步驟以及第8個(gè)步驟進(jìn)行運(yùn)算,以此改變了原有的預(yù)設(shè)簽名算法的運(yùn)算先后順序,生成全新的運(yùn)算算法。當(dāng)然,根據(jù)該隨機(jī)密鑰,改變預(yù)設(shè)簽名算法的規(guī)則可以根據(jù)實(shí)際情況進(jìn)行相應(yīng)的變化,如該隨機(jī)密鑰中的第1位3代表將原本預(yù)設(shè)簽名算法中8個(gè)步驟中的第1個(gè)步驟作為運(yùn)算算法中的第3個(gè)步驟進(jìn)行運(yùn)算;隨機(jī)密鑰中第2位中的1代表將原本預(yù)設(shè)簽名算法中8個(gè)步驟中的第2個(gè)步驟作為運(yùn)算算法中的第1個(gè)步驟進(jìn)行運(yùn)算,以此類推,得到根據(jù)該運(yùn)算算法的全新運(yùn)算算法。當(dāng)然,以上我們只是簡單的介紹兩個(gè)改變運(yùn)算優(yōu)先級(jí)的規(guī)則,可以根據(jù)實(shí)際情況重新進(jìn)行設(shè)定,若預(yù)設(shè)簽名算法中只包括了6個(gè)步驟,則可以通過改變生成的隨機(jī)密鑰的位數(shù)來調(diào)整,也可以通過忽略生成的8位隨機(jī)密鑰中的兩位來適應(yīng)性的調(diào)整。

      通過改變預(yù)設(shè)簽名算法的分組結(jié)構(gòu)和分組結(jié)構(gòu)的運(yùn)算優(yōu)先級(jí)來得到新的運(yùn)算算法的一個(gè)具體實(shí)施例為:假若按照預(yù)設(shè)簽名算法的分組結(jié)構(gòu)規(guī)則,將進(jìn)行運(yùn)算信息分成n個(gè)數(shù)據(jù)塊,且每個(gè)數(shù)據(jù)塊中包括8個(gè)小的分塊(a1、a2、a3、a4、a5、a6、a7以及a8),此時(shí)假若根據(jù)唯一標(biāo)識(shí)應(yīng)用信息隨機(jī)生成的隨機(jī)密鑰為73124568,且該8位隨機(jī)密鑰中的第1位代表運(yùn)算順序,第2為代表相應(yīng)的分塊。則在運(yùn)算過程中,位于第2位的3表示分塊a3與分塊a1交換以此改變?cè)摲纸M結(jié)構(gòu),位于第1位的7表示分塊a7優(yōu)先運(yùn)算,以此實(shí)現(xiàn)目的。以上我們只是示例性的給出了一種具體實(shí)施方式,在其他實(shí)施例中,對(duì)上述分組規(guī)則(每個(gè)數(shù)據(jù)的長度)、隨機(jī)秘鑰中每位數(shù)字對(duì)應(yīng)的意義(如分塊交換)等都可以根據(jù)實(shí)際情況進(jìn)行設(shè)定。

      通過改變預(yù)設(shè)簽名算法的運(yùn)算參數(shù)來得到新的運(yùn)算算法的一個(gè)具體實(shí)施例為:假若預(yù)設(shè)簽名算法中包括先后兩個(gè)常數(shù),分別為1和2,還包括一個(gè)未知數(shù)項(xiàng)X。且根據(jù)唯一標(biāo)識(shí)應(yīng)用信息隨機(jī)得到的隨機(jī)密鑰為73124568,具體該隨機(jī)密鑰中的第3位表示該固定參數(shù),則該預(yù)設(shè)簽名算法中的X即為1,以此形成新的運(yùn)算算法。當(dāng)然,在另一具體實(shí)施例中,也可以根據(jù)第3位中的1改變預(yù)設(shè)簽名算法中已有常數(shù)項(xiàng),如將已有的第二個(gè)常數(shù)2改為該第3位中的1,即生成的運(yùn)算算法中兩個(gè)常數(shù)都是1。

      作為一個(gè)完整實(shí)施例,假若生成的隨機(jī)密鑰中第1位代表運(yùn)算優(yōu)先級(jí),第2位代表分組結(jié)構(gòu),第3位代表常數(shù)項(xiàng)。此時(shí),如若生成的隨機(jī)密鑰為35781246,則分組塊中的a5與a1進(jìn)行調(diào)整改變分組結(jié)構(gòu),且a3優(yōu)先運(yùn)算,同時(shí)將運(yùn)算算法中某一常數(shù)變?yōu)?,以此生成與用戶唯一關(guān)聯(lián)的運(yùn)算算法。

      在步驟S21中具體包括:根據(jù)應(yīng)用信息生成密鑰。該應(yīng)用信息中包括用戶的個(gè)人標(biāo)識(shí)碼(Personal Identification Number,簡稱PIN碼)和/或設(shè)備指紋(可以為標(biāo)識(shí)終端設(shè)備的一切信息,如,IMEI(International Mobile Equipment Identity,國際移動(dòng)設(shè)備標(biāo)識(shí)),IMSI(International Mobile Subscriber Identification Number,國際移動(dòng)用戶識(shí)別碼)、設(shè)備型號(hào)、設(shè)備品牌、生產(chǎn)商、CPU(Central Processing Unit,中央處理器)、MAC(Media Access Control,介質(zhì)訪問控制)地址、IP(Internet Protocol,網(wǎng)絡(luò)之間互連的協(xié)議)地址等)和/或手勢(shì)碼。

      在實(shí)際應(yīng)用中,如在使用對(duì)稱算法對(duì)數(shù)據(jù)進(jìn)行加解密的過程中,使用的密鑰是同一個(gè),故在這一步驟中根據(jù)應(yīng)用信息隨機(jī)生成一個(gè)隨機(jī)數(shù),并將其作為加解密的密鑰。之后,在對(duì)數(shù)據(jù)進(jìn)行加密/解密的終端設(shè)備中使用本實(shí)施方式提供的方法對(duì)密鑰進(jìn)行加密生成保護(hù)密鑰并將其存儲(chǔ)在安全插件中,提高了密鑰存儲(chǔ)的安全性能。在具體實(shí)施例中,在具體實(shí)施例中,上述安全插件為提供終端設(shè)備密碼體制服務(wù)的軟件包,內(nèi)置與用戶唯一關(guān)聯(lián)的運(yùn)算算法。具體,若終端設(shè)備為android系統(tǒng),則以so庫的形式存在,將加密后的保護(hù)密鑰存儲(chǔ)在keystore中;若終端設(shè)備為ios系統(tǒng),則以zip壓縮包的形式存在,將加密后的保護(hù)密鑰存儲(chǔ)在keychain中?;诖?,在調(diào)用安全插件之前,首先會(huì)對(duì)終端設(shè)備的運(yùn)行環(huán)境進(jìn)行檢測,包括檢測安全插件是否ROOT、檢測終端應(yīng)用的完整性、檢測安全插件的完整性、檢測設(shè)備的硬件信息等,只有運(yùn)行環(huán)境滿足條件,才進(jìn)入后續(xù)的步驟,否則提示用戶對(duì)運(yùn)行環(huán)境進(jìn)行檢查。

      最后,要說明的是,在調(diào)用安全插件對(duì)生成的密鑰進(jìn)行加密生成保護(hù)密鑰之前,首先開啟代碼保護(hù)功能,之后根據(jù)安全插件中存儲(chǔ)的應(yīng)用信息對(duì)應(yīng)用信息進(jìn)行驗(yàn)證,如根據(jù)安全插件中內(nèi)部存儲(chǔ)的PIN碼對(duì)用戶輸入的PIN碼進(jìn)行驗(yàn)證;又如根據(jù)安全插件中存儲(chǔ)的設(shè)備指紋對(duì)提取到的設(shè)備指紋進(jìn)行驗(yàn)證等,只有應(yīng)用信息驗(yàn)證成功了才會(huì)進(jìn)入后續(xù)的密鑰加密的步驟。由開啟了代碼保護(hù)功能,有效防止了動(dòng)態(tài)調(diào)試、防止內(nèi)存dump(傾倒)式攻擊,為用戶提供了一個(gè)相對(duì)安全的運(yùn)行環(huán)境。

      基于上述實(shí)施方式,在另一實(shí)施方式中,在該密鑰存儲(chǔ)方法中包括:S11接收認(rèn)證服務(wù)器下發(fā)的安全插件并對(duì)其進(jìn)行存儲(chǔ),安全插件中包括與用戶唯一關(guān)聯(lián)的運(yùn)算算法和應(yīng)用信息和應(yīng)用信息;S21根據(jù)應(yīng)用信息生成密鑰對(duì),密鑰對(duì)中包括私鑰和公鑰;S31調(diào)用安全插件對(duì)私鑰進(jìn)行加密并將加密后生成的私鑰保護(hù)密鑰連同應(yīng)用信息一并存儲(chǔ)在安全插件中,安全插件將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)私鑰進(jìn)行加密生成私鑰保護(hù)密鑰;S41銷毀私鑰。

      在本實(shí)施方式中,終端設(shè)備中生成根據(jù)應(yīng)用信息生成了密鑰對(duì)之后,隨即對(duì)私鑰進(jìn)行加密生成私鑰保護(hù)密鑰并存儲(chǔ)在認(rèn)證服務(wù)器下發(fā)的安全插件中,與此同時(shí)將生成的私鑰進(jìn)行銷毀,即生成的私鑰不在終端設(shè)備中直接存儲(chǔ)。之后,在使用該密鑰進(jìn)行解密/簽名的過程中,首先對(duì)內(nèi)部存儲(chǔ)的私鑰保護(hù)密鑰進(jìn)行解密得到相應(yīng)的私鑰,之后再進(jìn)行相應(yīng)的操作,且在完成相應(yīng)操作之后將解密得到的私鑰進(jìn)行銷毀。

      與上述實(shí)施方式類似的,在步驟S11中同樣包括認(rèn)證服務(wù)器生成安全插件并將其下發(fā)至終端設(shè)備的步驟,具體:在使用安全插件對(duì)密鑰進(jìn)行加密之前,用戶首先通過終端設(shè)備中的終端應(yīng)用在認(rèn)證服務(wù)器中進(jìn)行注冊(cè),以此認(rèn)證服務(wù)器生成相應(yīng)的安全插件并將其返回至終端應(yīng)用中存儲(chǔ)。認(rèn)證服務(wù)器中生成運(yùn)算算法的具體過程在上述實(shí)施方式中已做出詳細(xì)描述,在此不做贅述。

      在實(shí)際應(yīng)用中,如在使用非對(duì)稱算法對(duì)數(shù)據(jù)進(jìn)行加解密的過程中,通常使用公鑰對(duì)數(shù)據(jù)進(jìn)行加密,之后使用私鑰對(duì)加密數(shù)據(jù)進(jìn)行解密,故在這一步驟中根據(jù)應(yīng)用信息隨機(jī)生成的一包括公鑰和私鑰的密鑰對(duì)。之后,在對(duì)數(shù)據(jù)進(jìn)行解密的終端設(shè)備中使用本實(shí)施方式提供的方法對(duì)私鑰進(jìn)行加密生成私鑰保護(hù)密鑰并將其存儲(chǔ)在安全插件中,以此提高私鑰存儲(chǔ)的安全性能?;诖耍诎踩寮缮矸菡J(rèn)證碼之前,首先對(duì)終端設(shè)備的運(yùn)行環(huán)境進(jìn)行檢測,包括檢測安全插件是否ROOT、檢測終端應(yīng)用的完整性、檢測安全插件的完整性、檢測設(shè)備的硬件信息等,只有運(yùn)行環(huán)境滿足條件,才進(jìn)入后續(xù)的步驟,否則提示用戶對(duì)運(yùn)行環(huán)境進(jìn)行檢查。另外,應(yīng)用信息中包括的內(nèi)容、安全插件的存儲(chǔ)方式、對(duì)終端設(shè)備的運(yùn)行環(huán)境進(jìn)行檢測、代碼功能的開啟以及對(duì)應(yīng)用信息的檢測均與上述實(shí)施方式中相同,在此不做贅述。

      如圖2所示為本發(fā)明提供的密鑰存儲(chǔ)方法另一種實(shí)施方式流程示意圖,從圖中可以看出,在該密鑰存儲(chǔ)方法中包括:S12接收認(rèn)證服務(wù)器下發(fā)的安全插件并對(duì)其進(jìn)行存儲(chǔ),該安全插件中包括與用戶唯一關(guān)聯(lián)的運(yùn)算算法、應(yīng)用信息及密鑰,密鑰由認(rèn)證服務(wù)器根據(jù)應(yīng)用信息生成;S22調(diào)用安全插件對(duì)密鑰進(jìn)行加密并將加密后生成的保護(hù)密鑰連同應(yīng)用信息一并存儲(chǔ)在安全插件中,安全插件將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)密鑰進(jìn)行加密生成保護(hù)密鑰;S32銷毀密鑰。

      從以上描述可以看出,在本實(shí)施方式中,由終端設(shè)備接收認(rèn)證服務(wù)器下發(fā)的安全插件中包括了在認(rèn)證服務(wù)器中生成的密鑰,隨即對(duì)其進(jìn)行加密生成保護(hù)密鑰并存儲(chǔ)在安全插件中,與此同時(shí)將安全插件中的密鑰進(jìn)行銷毀。之后,在使用該密鑰進(jìn)行加解密/簽名的過程中,首先對(duì)內(nèi)部存儲(chǔ)的保護(hù)密鑰進(jìn)行解密得到相應(yīng)的密鑰,之后再進(jìn)行相應(yīng)的操作,且在完成相應(yīng)操作之后將解密得到的密鑰進(jìn)行銷毀。

      更具體來說,在步驟S11中包括認(rèn)證服務(wù)器生成安全插件并將其下發(fā)至終端設(shè)備的步驟,具體:在使用安全插件對(duì)密鑰進(jìn)行加密之前,用戶首先通過終端設(shè)備中的終端應(yīng)用(Application,應(yīng)用程序)在認(rèn)證服務(wù)器中進(jìn)行注冊(cè),之后根據(jù)應(yīng)用信息生成密鑰及生成運(yùn)算算法,并編譯成安全插件返回至終端應(yīng)用中存儲(chǔ)。認(rèn)證服務(wù)器中生成運(yùn)算算法的具體過程在上述實(shí)施方式中已做出詳細(xì)描述,在此不做贅述。

      在具體實(shí)施例中,上述安全插件為提供終端設(shè)備密碼體制服務(wù)的軟件包,內(nèi)置與用戶唯一關(guān)聯(lián)的運(yùn)算算法。具體,若終端設(shè)備為android系統(tǒng),則以so庫的形式存在;若終端設(shè)備為ios系統(tǒng),則以zip壓縮包的形式存在?;诖?,在安全插件生成身份認(rèn)證碼之前,首先對(duì)終端設(shè)備的運(yùn)行環(huán)境進(jìn)行檢測,包括檢測安全插件是否ROOT、檢測終端應(yīng)用的完整性、檢測安全插件的完整性、檢測設(shè)備的硬件信息等,只有運(yùn)行環(huán)境滿足條件,才進(jìn)入后續(xù)的步驟,否則提示用戶對(duì)運(yùn)行環(huán)境進(jìn)行檢查。

      在實(shí)際應(yīng)用中,如在使用對(duì)稱算法對(duì)數(shù)據(jù)進(jìn)行加解密的過程中,使用的密鑰是同一個(gè),故在這一步驟中認(rèn)證服務(wù)器根據(jù)應(yīng)用信息隨機(jī)生成一個(gè)隨機(jī)數(shù),并將其作為加解密的密鑰。認(rèn)證服務(wù)器在生成了運(yùn)算算法之后,將生成的密鑰與運(yùn)算算法一并進(jìn)行編譯得到安全插件并下發(fā)至終端設(shè)備中。在對(duì)數(shù)據(jù)進(jìn)行加密/解密的終端設(shè)備中使用本實(shí)施方式提供的方法對(duì)密鑰進(jìn)行加密生成保護(hù)密鑰并將其存儲(chǔ)在安全插件中,提高了密鑰存儲(chǔ)的安全性能。具體該應(yīng)用信息中包括的內(nèi)容、安全插件的存儲(chǔ)方式、對(duì)終端設(shè)備的運(yùn)行環(huán)境進(jìn)行檢測、代碼功能的開啟以及對(duì)應(yīng)用信息的檢測均與上述實(shí)施方式中相同,在此不做贅述。

      基于上述實(shí)施方式,在另一實(shí)施方式中,該密鑰存儲(chǔ)方法中包括:S12接收認(rèn)證服務(wù)器下發(fā)的安全插件并對(duì)其進(jìn)行存儲(chǔ),安全插件中包括與用戶唯一關(guān)聯(lián)的運(yùn)算算法、應(yīng)用信息及密鑰對(duì),密鑰對(duì)由認(rèn)證服務(wù)器根據(jù)應(yīng)用信息生成,包括私鑰和公鑰;S22調(diào)用安全插件對(duì)私鑰進(jìn)行加密并將加密后生成的私鑰保護(hù)密鑰連同應(yīng)用信息一并存儲(chǔ)在安全插件中,安全插件將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)私鑰進(jìn)行加密生成私鑰保護(hù)密鑰;S32銷毀私鑰。

      從以上描述可以看出,在本實(shí)施方式中,由終端設(shè)備接收認(rèn)證服務(wù)器下發(fā)的安全插件中包括了在認(rèn)證服務(wù)器中生成的密鑰對(duì),隨即對(duì)其中包括的私鑰進(jìn)行加密生成私鑰保護(hù)密鑰并存儲(chǔ)在安全插件中,與此同時(shí)將安全插件中的私鑰進(jìn)行銷毀。之后,在使用該私鑰進(jìn)行解密/簽名的過程中,首先對(duì)內(nèi)部存儲(chǔ)的私鑰保護(hù)密鑰進(jìn)行解密得到相應(yīng)的私鑰,之后再進(jìn)行相應(yīng)的操作,且在完成相應(yīng)操作之后將解密得到的私鑰進(jìn)行銷毀。

      更具體來說,在步驟S11中包括認(rèn)證服務(wù)器生成安全插件并將其下發(fā)至終端設(shè)備的步驟:在使用安全插件對(duì)密鑰進(jìn)行加密之前,用戶首先通過終端設(shè)備中的終端應(yīng)用在認(rèn)證服務(wù)器中進(jìn)行注冊(cè),之后根據(jù)應(yīng)用信息生成密鑰對(duì)及生成運(yùn)算算法,并將密鑰編譯入安全插件返回至終端應(yīng)用中存儲(chǔ)。認(rèn)證服務(wù)器中生成運(yùn)算算法的具體過程在上述實(shí)施方式中已做出詳細(xì)描述,在此不做贅述。

      在實(shí)際應(yīng)用中,如在使用非對(duì)稱算法對(duì)數(shù)據(jù)進(jìn)行加解密的過程中,使用的公鑰和私鑰并不相同,故在這一步驟中認(rèn)證服務(wù)器根據(jù)應(yīng)用信息隨機(jī)生成包括公鑰和私鑰的密鑰對(duì)。之后,認(rèn)證服務(wù)器在生成了運(yùn)算算法之后,將生成的私鑰與運(yùn)算算法一并進(jìn)行編譯得到安全插件并下發(fā)至終端設(shè)備中。在對(duì)數(shù)據(jù)進(jìn)行解密的終端設(shè)備中使用本實(shí)施方式提供的方法對(duì)私鑰進(jìn)行加密生成保護(hù)密鑰并將其存儲(chǔ)在安全插件中,提高了密鑰存儲(chǔ)的安全性能。具體該應(yīng)用信息中包括的內(nèi)容、安全插件的存儲(chǔ)方式、對(duì)終端設(shè)備的運(yùn)行環(huán)境進(jìn)行檢測、代碼功能的開啟以及對(duì)應(yīng)用信息的檢測均與上述實(shí)施方式中相同,在此不做贅述。

      根據(jù)上述密鑰存儲(chǔ)方法,本發(fā)明還提供了一種數(shù)據(jù)加解密方法。如圖3所示,在該數(shù)據(jù)加解密方法中包括:S13獲取應(yīng)用信息并調(diào)用安全插件對(duì)其進(jìn)行驗(yàn)證;S23調(diào)用安全插件對(duì)內(nèi)部存儲(chǔ)的保護(hù)密鑰進(jìn)行解密得到密鑰,安全插件將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)保護(hù)密鑰進(jìn)行解密還原得到密鑰;S33調(diào)用安全插件采用還原得到的密鑰和預(yù)設(shè)加密算法對(duì)待發(fā)送數(shù)據(jù)進(jìn)行加密并將加密后的數(shù)據(jù)發(fā)送出去,或調(diào)用安全插件采用還原得到的密鑰和預(yù)設(shè)解密算法對(duì)接收到的加密數(shù)據(jù)進(jìn)行解密得到解密后的數(shù)據(jù);S43銷毀密鑰。由以上描述可知,在實(shí)際應(yīng)用中,如在使用對(duì)稱算法,如DES算法對(duì)數(shù)據(jù)進(jìn)行加解密的過程中,使用的密鑰是同一個(gè),故生成的密鑰也只有一個(gè)。具體在使用該密鑰對(duì)待發(fā)送數(shù)據(jù)進(jìn)行加解密的過程中,首先調(diào)用安全插件對(duì)內(nèi)部存儲(chǔ)的保護(hù)密鑰進(jìn)行解密得到密鑰,之后再使用該密鑰對(duì)待發(fā)送數(shù)據(jù)進(jìn)行加密及對(duì)接收到的加密數(shù)據(jù)進(jìn)行解密。

      在另一實(shí)施方式中,數(shù)據(jù)加解密方法中包括對(duì)接收數(shù)據(jù)進(jìn)行解密的步驟,如圖4所示,在對(duì)接收數(shù)據(jù)進(jìn)行解密的步驟中具體包括:S14獲取應(yīng)用信息并調(diào)用安全插件對(duì)其進(jìn)行驗(yàn)證;S24調(diào)用安全插件對(duì)內(nèi)部存儲(chǔ)的私鑰保護(hù)密鑰進(jìn)行解密得到私鑰,安全插件將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)私鑰保護(hù)密鑰進(jìn)行解密還原得到私鑰;S34調(diào)用安全插件采用還原得到的私鑰和預(yù)設(shè)解密算法對(duì)接收到的加密數(shù)據(jù)進(jìn)行解密,以此得到解密后的數(shù)據(jù);S44銷毀私鑰。由以上描述可知,在實(shí)際應(yīng)用中,如在使用非對(duì)稱算法,如RSA算法對(duì)數(shù)據(jù)進(jìn)行加解密的過程中,使用的密鑰不是同一個(gè),通常由公鑰對(duì)數(shù)據(jù)進(jìn)行加密,之后采用私鑰對(duì)加密數(shù)據(jù)進(jìn)行解密。具體在使用該私鑰對(duì)待加密進(jìn)行解密的過程中,首先調(diào)用安全插件對(duì)內(nèi)部存儲(chǔ)的私鑰保護(hù)密鑰進(jìn)行解密得到私鑰,之后再使用該私鑰對(duì)加密數(shù)據(jù)進(jìn)行加密。

      如圖5所示,本發(fā)明還提供了一種電子簽名方法,應(yīng)用于上述密鑰存儲(chǔ)方法,從圖中可以看出,在該電子簽名方法中包括:S15獲取應(yīng)用信息并調(diào)用安全插件對(duì)其進(jìn)行驗(yàn)證;S25調(diào)用安全插件對(duì)內(nèi)部存儲(chǔ)的保護(hù)密鑰進(jìn)行解密得到私鑰,安全插件將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)私鑰保護(hù)密鑰進(jìn)行解密還原得到私鑰;S35調(diào)用安全插件采用生成的私鑰和預(yù)設(shè)簽名算法對(duì)待簽名原文進(jìn)行簽名;S45銷毀私鑰。由以上描述可知,在實(shí)際應(yīng)用中,如在使用非對(duì)稱算法(PKI算法),如DES算法對(duì)待簽名原文進(jìn)行簽名的過程中,通常由私鑰對(duì)待簽名原文進(jìn)行加密,之后采用公鑰對(duì)簽名進(jìn)行解簽。具體在使用該私鑰對(duì)待簽名原文進(jìn)行加密的過程中,首先調(diào)用安全插件對(duì)內(nèi)部存儲(chǔ)的私鑰保護(hù)密鑰進(jìn)行解密得到私鑰,之后再使用該私鑰對(duì)待簽名原文進(jìn)行加密,且在簽名完成后銷毀私鑰。

      我們知道,在對(duì)簽名進(jìn)行解簽的時(shí)候需要用到電子證書和公鑰,因而,在步驟S15之前還包括用于對(duì)接收到的簽名進(jìn)行解析的電子證書的生成和存儲(chǔ)的步驟,在一種實(shí)施方式中,如圖6所示,該電子證書的生成和存儲(chǔ)步驟具體包括:S10終端應(yīng)用生成電子證書請(qǐng)求(具體為pkcs(The Public-Key Cryptography Standards)格式)并將其發(fā)送至認(rèn)證服務(wù)器,具體該電子證書請(qǐng)求中包括應(yīng)用信息和公鑰;S20認(rèn)證服務(wù)器將電子證書請(qǐng)求轉(zhuǎn)發(fā)至證書服務(wù)器;S30證書服務(wù)器將電子證書請(qǐng)求轉(zhuǎn)發(fā)至證書簽證機(jī)關(guān)(如CA(Certificate Authority,數(shù)字證書認(rèn)證中心)請(qǐng)求生成電子證書;40證書簽證機(jī)關(guān)根據(jù)電子證書請(qǐng)求生成電子證書,并將生成的電子證書返回證書服務(wù)器;S50證書服務(wù)器將電子證書轉(zhuǎn)發(fā)至認(rèn)證服務(wù)器;S60認(rèn)證服務(wù)器將其轉(zhuǎn)發(fā)至終端應(yīng)用并進(jìn)行存儲(chǔ)。具體在該實(shí)施方式中,密鑰由終端應(yīng)用根據(jù)應(yīng)用信息隨機(jī)生成,在步驟S60之后還包括:S70終端應(yīng)用將電子證書編譯入認(rèn)證服務(wù)器返回的安全插件中。

      在另一實(shí)施方式中,在該電子證書的生成和存儲(chǔ)步驟具體包括,S10終端應(yīng)用生成電子證書請(qǐng)求并將其發(fā)送至認(rèn)證服務(wù)器,具體該電子證書請(qǐng)求中包括應(yīng)用信息和公鑰;S20認(rèn)證服務(wù)器將電子證書請(qǐng)求轉(zhuǎn)發(fā)至證書服務(wù)器;S30證書服務(wù)器將電子證書請(qǐng)求轉(zhuǎn)發(fā)至證書簽證機(jī)關(guān)請(qǐng)求生成電子證書;40證書簽證機(jī)關(guān)根據(jù)電子證書請(qǐng)求生成電子證書,并將生成的電子證書返回證書服務(wù)器;S50將電子證書和私鑰編譯入安全插件,安全插件中包括與用戶唯一關(guān)聯(lián)的運(yùn)算算法和應(yīng)用信息;S60認(rèn)證服務(wù)器將安全插件返回終端應(yīng)用。具體在該實(shí)施方式中,包括私鑰和公鑰的密鑰對(duì)由認(rèn)證服務(wù)器生成,因而在步驟S50中將證書服務(wù)器反饋的電子證書、生成的私鑰、生成的運(yùn)算算法以及應(yīng)用信息一并編譯入安全插件中,并將其返回終端應(yīng)用中。

      更進(jìn)一步來說,在該電子簽名方法中還包括私鑰和電子證書更新的步驟,具體包括:S16終端應(yīng)用根據(jù)應(yīng)用信息生成新的密鑰對(duì),新的密鑰對(duì)中包括新的私鑰和公鑰;S26終端應(yīng)用生成新的電子證書請(qǐng)求并將其發(fā)送至認(rèn)證服務(wù)器,新的電子證書請(qǐng)求中包括應(yīng)用信息和新的公鑰;S36認(rèn)證服務(wù)器將新的電子證書請(qǐng)求轉(zhuǎn)發(fā)至證書服務(wù)器;S46證書服務(wù)器將新的電子證書請(qǐng)求轉(zhuǎn)發(fā)至證書簽證機(jī)關(guān)請(qǐng)求生成電子證書;S56證書簽證機(jī)關(guān)根據(jù)接收到的電子證書請(qǐng)求對(duì)現(xiàn)有的電子證書進(jìn)行驗(yàn)證;S66驗(yàn)證成功后,根據(jù)新的電子證書請(qǐng)求生成新的電子證書,并將生成的電子證書返回證書服務(wù)器;S76證書服務(wù)器將新的電子證書經(jīng)由認(rèn)證服務(wù)器轉(zhuǎn)發(fā)至終端應(yīng)用。這里,我們定期對(duì)私鑰或私鑰保護(hù)私鑰進(jìn)行更新,以防止私鑰泄露出去,提高了終端設(shè)備中私鑰存儲(chǔ)的安全性能。具體在這一過程中,利用風(fēng)險(xiǎn)控制平臺(tái),檢測異常狀態(tài),定期對(duì)安全插件和私鑰進(jìn)行強(qiáng)制更新。

      如圖7所示為本發(fā)明提供的密鑰存儲(chǔ)裝置結(jié)構(gòu)示意圖,應(yīng)用于終端設(shè)備和密鑰存儲(chǔ)方法,從圖中可以看出,在該密鑰存儲(chǔ)裝置100中包括:存儲(chǔ)模塊110、信息提取模塊120、第一運(yùn)算模塊130以及第一密鑰銷毀模塊140。

      在一種實(shí)施方式中,存儲(chǔ)模塊存儲(chǔ)有與用戶唯一關(guān)聯(lián)的運(yùn)算算法、應(yīng)用信息以及對(duì)密鑰加密生成的保護(hù)密鑰。在工作過程中,信息提取模塊用于從存儲(chǔ)模塊中提取應(yīng)用信息及從外部提取密鑰(具體該密鑰可以由終端設(shè)備生成中根據(jù)應(yīng)用信息生成,也可由認(rèn)證服務(wù)器根據(jù)應(yīng)用信息生成;若由認(rèn)證服務(wù)器生成,則隨同安全插件一同下發(fā)至終端應(yīng)用中);之后,第一運(yùn)算模塊將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)密鑰進(jìn)行加密生成保護(hù)密鑰并將其進(jìn)行存儲(chǔ);最后,第一密鑰銷毀模塊將密鑰銷毀??梢姡诿荑€由認(rèn)證服務(wù)器生成的實(shí)施方式中,在安全插件由認(rèn)證服務(wù)器向終端應(yīng)用下發(fā)的過程中,密鑰短暫存儲(chǔ)于安全插件中,在終端應(yīng)用中根據(jù)該密鑰生成了保護(hù)密鑰之后,將其銷毀。

      在另一實(shí)施方式中,存儲(chǔ)模塊存儲(chǔ)有與用戶唯一關(guān)聯(lián)的運(yùn)算算法、應(yīng)用信息以及對(duì)私鑰加密生成的私鑰保護(hù)密鑰。在工作過程中,信息提取模塊用于從存儲(chǔ)模塊中提取應(yīng)用信息及從外部提取私鑰;之后,第一運(yùn)算模塊將應(yīng)用信息作為計(jì)算因子、使用運(yùn)算算法對(duì)私鑰進(jìn)行加密生成私鑰保護(hù)密鑰;最后,第一密鑰銷毀模塊將私鑰銷毀??梢?,在私鑰由認(rèn)證服務(wù)器生成的實(shí)施方式中,在安全插件由認(rèn)證服務(wù)器向終端應(yīng)用下發(fā)的過程中,密鑰短暫存儲(chǔ)于安全插件中,在終端應(yīng)用中根據(jù)該私鑰生成了密鑰保護(hù)密鑰之后,將其銷毀。

      具體來說,在該密鑰存儲(chǔ)裝置中,應(yīng)用信息中包括用戶的個(gè)人標(biāo)識(shí)碼(Personal Identification Number,簡稱PIN碼)和/或設(shè)備指紋(可以為標(biāo)識(shí)終端設(shè)備的一切信息,如,IMEI(International Mobile Equipment Identity,國際移動(dòng)設(shè)備標(biāo)識(shí)),IMSI(International Mobile Subscriber Identification Number,國際移動(dòng)用戶識(shí)別碼)、設(shè)備型號(hào)、設(shè)備品牌、生產(chǎn)商、CPU(Central Processing Unit,中央處理器)、MAC(Media Access Control,介質(zhì)訪問控制)地址、IP(Internet Protocol,網(wǎng)絡(luò)之間互連的協(xié)議)地址等)和/或手勢(shì)碼。在具體實(shí)施例中,若終端設(shè)備為android系統(tǒng),安全插件以so庫的形式存在,將加密后的保護(hù)密鑰存儲(chǔ)在keystore中;若終端設(shè)備為ios系統(tǒng),安全插件以zip壓縮包的形式存在,將加密后的保護(hù)密鑰存儲(chǔ)在keychain中。

      進(jìn)一步來說,在該密鑰存儲(chǔ)裝置中還包括環(huán)境檢測模塊,用于對(duì)終端設(shè)備的運(yùn)行環(huán)境進(jìn)行檢測,包括檢測安全插件是否ROOT、檢測終端應(yīng)用的完整性、檢測安全插件的完整性、檢測設(shè)備的硬件信息等,只有運(yùn)行環(huán)境滿足條件,才進(jìn)入后續(xù)的第一運(yùn)算模塊的運(yùn)算步驟等,否則提示用戶對(duì)運(yùn)行環(huán)境進(jìn)行檢查。另外,還包括代碼保護(hù)模塊和驗(yàn)證模塊,其中,代碼保護(hù)模塊,用于開啟代碼保護(hù)功能;在開啟可代碼保護(hù)功能之后,驗(yàn)證模塊根據(jù)安全插件中存儲(chǔ)的應(yīng)用信息對(duì)應(yīng)用信息進(jìn)行驗(yàn)證,如根據(jù)安全插件中內(nèi)部存儲(chǔ)的PIN碼對(duì)用戶輸入的PIN碼進(jìn)行驗(yàn)證;又如根據(jù)安全插件中存儲(chǔ)的設(shè)備指紋對(duì)提取到的設(shè)備指紋進(jìn)行驗(yàn)證等,只有應(yīng)用信息驗(yàn)證成功了才會(huì)進(jìn)入后續(xù)的密鑰加密的步驟。有效防止了動(dòng)態(tài)調(diào)試、防止內(nèi)存dump(傾倒)式攻擊。

      如圖8所述為本發(fā)明提供的數(shù)據(jù)加解密裝置,應(yīng)用于終端設(shè)備,且在該數(shù)據(jù)加解密裝置中包括上述密鑰存儲(chǔ)裝置,具體該密鑰存儲(chǔ)裝置中的存儲(chǔ)模塊還存儲(chǔ)有對(duì)待發(fā)送數(shù)據(jù)進(jìn)行加密的預(yù)設(shè)加密算法,和/或存儲(chǔ)有對(duì)接收到的加密數(shù)據(jù)進(jìn)行解密的預(yù)設(shè)解密算法。再有,該數(shù)據(jù)加解密裝置200還包括:第一應(yīng)用信息驗(yàn)證模塊210、第二運(yùn)算模塊220以及第二密鑰銷毀模塊230。

      在一種實(shí)施方式中,使用該數(shù)據(jù)加解密裝置對(duì)數(shù)據(jù)進(jìn)行加密的過程中,首先,第一應(yīng)用信息驗(yàn)證模塊210根據(jù)存儲(chǔ)模塊中存儲(chǔ)的應(yīng)用信息對(duì)獲取的應(yīng)用信息進(jìn)行驗(yàn)證;之后,第二運(yùn)算模塊采用由保護(hù)密鑰解密得到的密鑰和預(yù)設(shè)加密算法對(duì)待發(fā)送數(shù)據(jù)進(jìn)行加密或?qū)用軘?shù)據(jù)進(jìn)行解密;最后,第二密鑰銷毀模塊對(duì)密鑰進(jìn)行銷毀。

      在另一實(shí)施方式中,使用該數(shù)據(jù)加解密裝置對(duì)數(shù)據(jù)進(jìn)行加密的過程中,首先,第一應(yīng)用信息驗(yàn)證模塊210根據(jù)存儲(chǔ)模塊中存儲(chǔ)的應(yīng)用信息對(duì)獲取的應(yīng)用信息進(jìn)行驗(yàn)證;之后,第二運(yùn)算模塊采用由保護(hù)密鑰解密得到的私鑰和預(yù)設(shè)解密算法對(duì)接收到的加密數(shù)據(jù)進(jìn)行解密;最后,第二密鑰銷毀模塊銷毀私鑰。

      如圖9所示為本發(fā)明提供的電子簽名裝置,應(yīng)用于終端設(shè)備,且在該電子簽名裝置包括上述數(shù)據(jù)加解密裝置,具體該密鑰存儲(chǔ)裝置的存儲(chǔ)模塊還存儲(chǔ)有對(duì)待簽名原文進(jìn)行簽名的預(yù)設(shè)簽名算法以及對(duì)接收到的簽名進(jìn)行解析的電子證書。再有,該電子簽名裝置中還包括310第二應(yīng)用信息驗(yàn)證模塊、S320第三運(yùn)算模塊和330第三密鑰銷毀模塊。

      在使用該電子簽名裝置對(duì)待簽名原文進(jìn)行簽名的過程中,首先,第二應(yīng)用信息驗(yàn)證模塊根據(jù)存儲(chǔ)模塊中存儲(chǔ)的應(yīng)用信息對(duì)獲取的應(yīng)用信息進(jìn)行驗(yàn)證;之后,第三運(yùn)算模塊采用由保護(hù)密鑰解密得到的私鑰和預(yù)設(shè)簽名算法對(duì)待簽名原文進(jìn)行簽名或采用電子證書對(duì)接收到的簽名進(jìn)行解析;最后,第三密鑰銷毀模塊在對(duì)待簽名原文進(jìn)行簽名之后銷毀密鑰。

      本發(fā)明還提供了一種電子證書生成系統(tǒng),具體包括:

      移動(dòng)端,包括上述電子簽名裝置,用于根據(jù)應(yīng)用信息和公鑰生成電子證書請(qǐng)求并將其發(fā)送至認(rèn)證服務(wù)器,及用于接收認(rèn)證服務(wù)器端返回的電子證書;或用于根據(jù)應(yīng)用信息和公鑰生成電子證書請(qǐng)求并將其發(fā)送至認(rèn)證服務(wù)器,及用于接收認(rèn)證服務(wù)器端返回的安全插件,安全插件中包括證書簽證機(jī)關(guān)簽發(fā)的電子證書。具體,這里的移動(dòng)端包括手機(jī)、平板電腦等。且該移動(dòng)端通過VPN(Virtual Private Network,虛擬專用網(wǎng)絡(luò))網(wǎng)關(guān)與認(rèn)證服務(wù)器連接。

      認(rèn)證服務(wù)器端,用于將電子證書請(qǐng)求轉(zhuǎn)發(fā)至證書服務(wù)器;或用于將證書簽證機(jī)關(guān)簽發(fā)的電子證書和私鑰編譯入安全插件,并將安全插件返回移動(dòng)端;

      證書服務(wù)器端,用于將電子證書請(qǐng)求轉(zhuǎn)發(fā)至證書簽證機(jī)關(guān)請(qǐng)求生成電子證書,及用于將證書簽證機(jī)關(guān)簽發(fā)的電子證書返回認(rèn)證服務(wù)器端;以及

      證書簽證機(jī)關(guān),根據(jù)電子證書請(qǐng)求生成電子證書。

      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1