本發(fā)明涉及信息安全技術(shù)領域,尤其涉及一種文件加密方法、設備、文件解密方法、設備及存儲介質(zhì)。
背景技術(shù):
隨著計算機技術(shù)的高速發(fā)展,無紙化辦公成為一種趨勢,越來越多的重要文件都被存儲在計算機中。這些文件中有些是極度敏感的文件,可能涉及個人隱私、公司商業(yè)秘密或政府機關內(nèi)部文檔。對于這些重要文檔,一旦被非授權(quán)人員查看甚至外泄,后果不堪設想,因此需要采取措施對這些文檔進行保護,防止文件被非法調(diào)閱或外泄。
現(xiàn)有技術(shù)中,常用的文件保護方法即使用第三方加密程序加密,當需要查看時再進行解密,首先,這種方法使用起來較為不便,使用人員不愿去搜尋并下載第三方加密程序,其次,第三方加密程序?qū)ξ臋n的加密方式對用戶不透明,有些甚至僅僅通過修改文件屬性實現(xiàn),對于這樣的加密程序,文件受保護度較差。有些強度較高的加密系統(tǒng)僅從加密算法上入手,通過混合幾種加密算法,生成的加密文檔被泄露后,仍可通過暴力破解方式進行破譯,無法實現(xiàn)真正的文件內(nèi)容保護。
技術(shù)實現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題是,提供一種文件加密方法、設備、文件解密方法、設備及存儲介質(zhì),克服現(xiàn)有技術(shù)中的計算機中的文件保護方式安全性不高導致的文件被非法調(diào)用和/或惡意獲取的缺陷。
本發(fā)明采用的技術(shù)方案是,所述一種文件加密方法,包括:
提取密鑰單元中的硬件標識信息,根據(jù)所述硬件標識信息,生成第一密鑰信息和第二密鑰信息;
基于預置的密鑰信息設置模型,將所述第二密鑰信息設置到原文件中設定位置中,得到第一加密文件;
根據(jù)所述第一密鑰信息,將所述第一加密文件設置為多個碎片文件,并基于預置的第一碎片文件重組模型,對所述多個碎片文件進行重組,得到第二加密文件。
進一步的,在所述基于預置的密鑰信息設置模型,將所述第二密鑰信息設置到原文件中設定位置中,得到第一加密文件之后,所述方法還包括:
根據(jù)所述第一密鑰信息,提取所述原文件的第一文件標識信息,并將所述第一文件標識信息和所述第一密鑰信息存儲至所述密鑰單元中的非易失性隨機訪問存儲器nvram,以供根據(jù)所述第一文件標識信息和所述第一密鑰信息,對所述第一加密文件進行解密。
進一步的,在所述基于預置的第一碎片文件重組模型,對所述多個碎片文件進行重組,得到第二加密文件之后,所述方法還包括:
根據(jù)消息摘要算法md5計算所述第二加密文件的第二文件標識信息,并將所述第二文件標識信息保存至所述密鑰單元中的nvram,以供根據(jù)所述第二文件標識信息,對所述第二加密文件進行解密。
進一步的,在所述將所述第二文件標識信息保存至所述密鑰單元中的nvram之后,所述方法還包括:
根據(jù)所述第二文件標識信息對所述原文件對應的應用程序進行授權(quán),得到授權(quán)信息,并將所述授權(quán)信息保存至所述密鑰模塊中的nvram,以供根據(jù)所述授權(quán)信息,判斷能否對所述第二加密文件進行解密。
進一步的,所述根據(jù)所述第一密鑰信息,提取所述原文件的第一文件標識信息,包括:
計算所述原文件的長度,并根據(jù)預置的采樣率n,得到所述原文件的第i個采樣點的基準地址basei;其中,第i個采樣點的采樣區(qū)間為((basei+1)-(basei))/3;i∈[1,n];
將所述第一密鑰信息分解為n個元素,通過第i個元素對采樣區(qū)間進行取模,得到第i個偏移地址offseti;
通過所述第i個采樣點的基準地址basei和所述第i個偏移地址offseti相加,得到第i個采樣點的采樣地址posti;
對各采樣點的采樣區(qū)間分別通過md5計算,得到第一md5值;并對所述第一md5值與對應階的范德蒙德矩陣進行內(nèi)積運算,得到第二md5值;
獲取所述原文件的第一文件標識信息;所述第一文件標識信息包括:所述原文件的長度、所述預置的采樣率n和所述第二md5值。
進一步的,所述將所述第一密鑰信息分解為n個元素,包括:
將所述第一密鑰信息的字符串長度除以n,將截取到的第i個字符串設置為第i個元素。
進一步的,所述基于預置的密鑰信息設置模型,將所述第二密鑰信息設置到原文件中設定位置中,得到第一加密文件,包括:
將所述第二密鑰信息分別設置到所述原文件中的每個加密地址,得到所述第一加密文件;
其中,第i個加密地址為posti+((basei+1)-(basei))/3。
進一步的,所述根據(jù)所述第一密鑰信息,將所述第一加密文件設置為多個碎片文件,并基于預置的第一碎片文件重組模型,對所述多個碎片文件進行重組,得到第二加密文件,包括:
將所述第一密鑰信息的所有位的和與10取模,得到所述第一密鑰信息的模值m;
判斷所述模值m是否大于或等于2;若判定所述模值m大于或等于2,則將所述第一加密文件設置為m個碎片文件,對所述m個碎片文件進行依次排序,并將第m個碎片文件移動至第1個碎片文件之前,得到所述第二加密文件;
若所述模值m小于2,則將所述模值m加10,將所述第一加密文件設置為m+10個碎片文件,對所述m+10個碎片文件進行依次排序,并將第m+10個碎片文件移動至第1個碎片文件之前,得到所述第二加密文件。
本發(fā)明還提供一種文件加密設備,所述文件加密設備包括處理器、存儲器和密鑰單元;
所述處理器用于執(zhí)行存儲器中存儲的文件加密程序,以實現(xiàn)上述述的文件加密方法的步驟。
本發(fā)明還提供一種文件解密方法,包括:
當應用程序讀取設定文件時,判斷所述設定文件是否為第二加密文件;
在判定所述設定文件為第二加密文件的情況下,根據(jù)密鑰單元中的nvram存儲的授權(quán)信息,判斷所述應用程序是否被授權(quán);
在判定所述應用程序被授權(quán)的情況下,判斷所述密鑰單元中的nvram是否存儲第二文件標識信息;
在判定所述密鑰單元中的nvram存儲有所述第二文件標識信息的情況下,根據(jù)所述密鑰單元中的nvram存儲的第一密鑰信息,將所述第二加密文件設置為多個碎片文件,并基于預置的第二碎片文件重組模型,對所述多個碎片文件進行重組,得到第一加密文件;
根據(jù)所述密鑰單元中的nvram存儲的第一文件標識信息、第一密鑰信息和第二密鑰信息,對所述第一加密文件進行解密,得到原文件。
進一步的,所述根據(jù)所述密鑰單元中的nvram存儲的第一密鑰信息,將所述第二加密文件設置為多個碎片文件,并基于預置的第二碎片文件重組模型,對所述多個碎片文件進行重組,得到第一加密文件,包括:
將所述第一密鑰信息的所有位的和與10取模,得到所述第一密鑰信息的模值m;
判斷所述模值m是否大于或等于2;若判定所述模值m大于或等于2,則將所述第二加密文件設置為m個碎片文件,對所述m個碎片文件進行依次排序,并將第1個碎片文件移動至第m個碎片文件之后,得到所述第一加密文件;
若所述模值m小于2,則將所述模值m加10,將所述第一加密文件設置為m+10個碎片文件,對所述m+10個碎片文件進行依次排序,并將第1個碎片文件移動至第m+10個碎片文件之后,得到所述第一加密文件。
進一步的,所述第一文件標識信息包括:原文件的長度、預置的采樣率n和第二md5值;
所述根據(jù)所述密鑰單元中的nvram存儲的第一文件標識信息、第一密鑰信息和第二密鑰信息,對所述第一加密文件進行解密,得到原文件,包括:
根據(jù)所述密鑰單元中的nvram存儲的第一文件標識信息中的所述原文件的長度和所述預置的采樣率n,得到所述原文件的第i個采樣點的基準地址basei;其中,第i個采樣點的采樣區(qū)間為((basei+1)-(basei))/3;i∈[1,n];
將所述密鑰單元中的nvram存儲的第一密鑰信息分解為n個元素,通過第i個元素對采樣區(qū)間進行取模,得到第i個偏移地址offseti;
通過所述第i個采樣點的基準地址basei和所述第i個偏移地址offseti相加,得到第i個采樣點的采樣地址posti;
通過提取出所述第一加密文件中的每個加密地址中的第二密鑰信息,對所述第一加密文件進行解密,得到所述原文件其中,第i個加密地址為posti+((basei+1)-(basei))/3。
進一步的,在所述根據(jù)密鑰單元中的nvram存儲的授權(quán)信息,判斷所述應用程序是否被授權(quán)之后,所述方法包括:
在判定應用程序未被授權(quán)的情況下,提示所述第二加密文件讀取失敗,并將第一讀取失敗信息存儲至預置的安全隱患信息日志。
進一步的,在所述判斷所述密鑰單元中的nvram是否存儲第二文件標識信息之后,所述方法還包括:
在判定所述密鑰單元中的nvram未存儲有所述第二文件標識信息的情況下,提示所述第二加密文件讀取失敗,并將第二讀取失敗信息存儲至所述安全隱患信息日志。
本發(fā)明還提供一種文件解密設備,所述文件解密設備包括處理器、存儲器和密鑰單元;
所述處理器用于執(zhí)行存儲器中存儲的文件解密程序,以實現(xiàn)上述的文件解密方法的步驟。
本發(fā)明還提供一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)存儲有一個或者多個程序,所述一個或者多個程序可被一個或者多個處理器執(zhí)行,以實現(xiàn)上述的文件加密方法的步驟,或者以實現(xiàn)上述的文件解密方法的步驟。
采用上述技術(shù)方案,本發(fā)明至少具有下列優(yōu)點:
本發(fā)明所述一種文件加密方法、設備、文件解密方法、設備及存儲介質(zhì),能夠有效的根據(jù)密鑰單元的硬件識別信息對文件進行加密和解密,有效的提高了文件的安全性,有效的降低了文件被非法查閱的概率,即使文件被非法獲取,也不能對文件進行解密獲取文件中的內(nèi)容,極大的提高了文件的安全性。
附圖說明
圖1為本發(fā)明第一實施例的文件加密方法流程圖;
圖2為本發(fā)明第二實施例的文件加密方法流程圖;
圖3為本發(fā)明第三實施例的文件加密設備組成結(jié)構(gòu)示意圖;
圖4為本發(fā)明第四實施例的文件解密方法流程圖;
圖5為本發(fā)明第五實施例的文件解密方法流程圖;
圖6為本發(fā)明第六實施例的文件解密設備組成結(jié)構(gòu)示意圖。
具體實施方式
為更進一步闡述本發(fā)明為達成預定目的所采取的技術(shù)手段及功效,以下結(jié)合附圖及較佳實施例,對本發(fā)明進行詳細說明如后。
本發(fā)明第一實施例,一種文件加密方法,如圖1所示,包括以下具體步驟:
步驟s101,提取密鑰單元中的硬件標識信息,根據(jù)硬件標識信息,生成第一密鑰信息和第二密鑰信息。
其中,密鑰單元中的硬件標識信息至少包括以下信息之一:密鑰單元的出廠序列、密鑰單元的類型信息和密鑰單元的存儲容量信息。
當密鑰單元中的硬件標識信息被惡意篡改后,第一密鑰信息和第二密鑰信息即失效,不能根據(jù)第一密鑰信息和第二密鑰信息對加密后的文件進行解密。
步驟s102,基于預置的密鑰信息設置模型,將第二密鑰信息設置到原文件中設定位置中,得到第一加密文件。
可選的,步驟s102,包括:
將第二密鑰信息分別設置到原文件中的每個加密地址,得到第一加密文件;
其中,第i個加密地址為posti+((basei+1)-(basei))/3;
獲取第i個加密地址為posti+((basei+1)-(basei))/3的方式包括:
計算原文件的長度,并根據(jù)預置的采樣率n,得到原文件的第i個采樣點的基準地址basei;其中,第i個采樣點的采樣區(qū)間為((basei+1)-(basei))/3;i∈[1,n];
將第一密鑰信息分解為n個元素,通過第i個元素對采樣區(qū)間進行取模,得到第i個偏移地址offseti;
通過第i個采樣點的基準地址basei和第i個偏移地址offseti相加,得到第i個采樣點的采樣地址posti。
步驟s103,根據(jù)第一密鑰信息,將第一加密文件設置為多個碎片文件,并基于預置的第一碎片文件重組模型,對多個碎片文件進行重組,得到第二加密文件。
可選的,步驟s103,包括:
將第一密鑰信息的所有位的和與10取模,得到第一密鑰信息的模值m;
判斷模值m是否大于或等于2;若判定模值m大于或等于2,則將第一加密文件設置為m個碎片文件,對m個碎片文件進行依次排序,并將第m個碎片文件移動至第1個碎片文件之前,得到第二加密文件;
若模值m小于2,則將模值m加10,將第一加密文件設置為m+10個碎片文件,對m+10個碎片文件進行依次排序,并將第m+10個碎片文件移動至第1個碎片文件之前,得到第二加密文件。
本發(fā)明第一實施例所述的一種文件加密方法,能夠有效的根據(jù)密鑰單元的硬件識別信息對文件進行加密,有效的提高了文件的安全性,有效的降低了文件被非法查閱的概率,即使文件被非法獲取,也不能對文件進行解密獲取文件中的內(nèi)容,極大的提高了文件的安全性。
本發(fā)明第二實施例,一種文件加密方法,如圖2所示,包括以下具體步驟:
步驟s201,提取密鑰單元中的硬件標識信息,根據(jù)硬件標識信息,生成第一密鑰信息和第二密鑰信息。
其中,密鑰單元中的硬件標識信息至少包括以下信息之一:密鑰單元的出廠序列、密鑰單元的類型信息和密鑰單元的存儲容量信息。
當密鑰單元中的硬件標識信息被惡意篡改后,第一密鑰信息和第二密鑰信息即失效,不能根據(jù)第一密鑰信息和第二密鑰信息對加密后的文件進行解密。
步驟s202,基于預置的密鑰信息設置模型,將第二密鑰信息設置到原文件中設定位置中,得到第一加密文件。
可選的,步驟s202,包括:
將第二密鑰信息分別設置到原文件中的每個加密地址,得到第一加密文件;
其中,第i個加密地址為posti+((basei+1)-(basei))/3;
獲取第i個加密地址為posti+((basei+1)-(basei))/3的方式包括:
計算原文件的長度,并根據(jù)預置的采樣率n,得到原文件的第i個采樣點的基準地址basei;其中,第i個采樣點的采樣區(qū)間為((basei+1)-(basei))/3;i∈[1,n];
將第一密鑰信息分解為n個元素,通過第i個元素對采樣區(qū)間進行取模,得到第i個偏移地址offseti;
通過第i個采樣點的基準地址basei和第i個偏移地址offseti相加,得到第i個采樣點的采樣地址posti。
步驟s203,根據(jù)第一密鑰信息,提取原文件的第一文件標識信息,并將第一文件標識信息和第一密鑰信息存儲至密鑰單元中的nvram(non-volatilerandomaccessmemory,非易失性隨機訪問存儲器),以供根據(jù)第一文件標識信息和第一密鑰信息,對第一加密文件進行解密。
其中,根據(jù)第一密鑰信息,提取原文件的第一文件標識信息的方式,包括但不限于:
計算原文件的長度,并根據(jù)預置的采樣率n,得到原文件的第i個采樣點的基準地址basei;其中,第i個采樣點的采樣區(qū)間為((basei+1)-(basei))/3;i∈[1,n];
將第一密鑰信息分解為n個元素,通過第i個元素對采樣區(qū)間進行取模,得到第i個偏移地址offseti;
通過第i個采樣點的基準地址basei和第i個偏移地址offseti相加,得到第i個采樣點的采樣地址posti;
對各采樣點的采樣區(qū)間分別通過md5計算,得到第一md5值;并對第一md5值與對應階的范德蒙德矩陣進行內(nèi)積運算,得到第二md5值;
獲取原文件的第一文件標識信息;第一文件標識信息包括:原文件的長度、預置的采樣率n和第二md5值。
其中,將第一密鑰信息分解為n個元素的方式包括但不限于:
將第一密鑰信息的字符串長度除以n,將截取到的第i個字符串設置為第i個元素。
將第一密鑰信息存儲至密鑰單元中的nvram的方式包括但不限于:
判斷密鑰單元中的nvram是否存儲有第一密鑰信息;
若判定密鑰單元中的nvram存儲有第一密鑰信息,則不將第一密鑰信息存儲至密鑰單元中的nvram;
若判定密鑰單元中的nvram沒有存儲第一密鑰信息,則將第一密鑰信息存儲至密鑰單元中的nvram。
步驟s204,根據(jù)第一密鑰信息,將第一加密文件設置為多個碎片文件,并基于預置的第一碎片文件重組模型,對多個碎片文件進行重組,得到第二加密文件。
可選的,步驟s204,包括:
將第一密鑰信息的所有位的和與10取模,得到第一密鑰信息的模值m;
判斷模值m是否大于或等于2;若判定模值m大于或等于2,則將第一加密文件設置為m個碎片文件,對m個碎片文件進行依次排序,并將第m個碎片文件移動至第1個碎片文件之前,得到第二加密文件;
若模值m小于2,則將模值m加10,將第一加密文件設置為m+10個碎片文件,對m+10個碎片文件進行依次排序,并將第m+10個碎片文件移動至第1個碎片文件之前,得到第二加密文件。
步驟s205,根據(jù)md5(messagedigestalgorithm,消息摘要算法第五版)計算第二加密文件的第二文件標識信息,并將第二文件標識信息保存至密鑰單元中的nvram,以供根據(jù)第二文件標識信息,對第二加密文件進行解密。
其中,將第二文件標識信息保存至密鑰單元中的nvram的方式包括但不限于:
判斷密鑰單元中的nvram是否存儲有第二文件標識信息;
若判定密鑰單元中的nvram存儲有第二文件標識信息,則不將第二文件標識信息存儲至密鑰單元中的nvram;
若判定密鑰單元中的nvram沒有存儲第二文件標識信息,則將第二文件標識信息存儲至密鑰單元中的nvram。
步驟s206,根據(jù)第二文件標識信息對原文件對應的應用程序進行授權(quán),得到授權(quán)信息,并將授權(quán)信息保存至密鑰模塊中的nvram,以供根據(jù)授權(quán)信息,判斷能否對第二加密文件進行解密。
其中,根據(jù)第二文件標識信息對第二加密文件對應的應用程序進行授權(quán)的方式包括但不限于:
在可信環(huán)境下,獲取第二加密文件對應的應用程序名稱,第二加密文件運行時的應用程序進程名稱,第二加密文件對應的應用程序所在路徑,和/或第二加密文件對應的應用程序的識別信息(例如,md5值)等信息,將上述在可信環(huán)境下進行應用程序授權(quán),得到授權(quán)信息。
本發(fā)明第一實施例所述的一種文件加密方法,能夠有效的根據(jù)密鑰單元的硬件識別信息對文件進行加密,有效的提高了文件的安全性,有效的降低了文件被非法查閱的概率,即使文件被非法獲取,也不能對文件進行解密獲取文件中的內(nèi)容,極大的提高了文件的安全性。
,本發(fā)明第三實施例,一種文件加密設備,如圖3所示,包括以下組成部分:
處理器110、存儲器109、密鑰單元201。在本發(fā)明的一些實施例中,這些部件可通過總線或者其它方式連接。
處理器110可以是通用處理器,例如中央處理器(centralprocessingunit,cpu),還可以是數(shù)字信號處理器(digitalsignalprocessor,dsp)、專用集成電路(英文:applicationspecificintegratedcircuit,asic),或者是被配置成實施本發(fā)明實施例的一個或多個集成電路。其中,存儲器用于存儲處理器的可執(zhí)行指令;
存儲器109,用于存儲程序代碼,并將該程序代碼傳輸給處理器110。存儲器109可以包括易失性存儲器(volatilememory),例如隨機存取存儲器(randomaccessmemory,ram);存儲器109也可以包括非易失性存儲器(non-volatilememory),例如只讀存儲器(read-onlymemory,rom)、快閃存儲器(flashmemory)、硬盤(harddiskdrive,hdd)或固態(tài)硬盤(solid-statedrive,ssd);存儲器109還可以包括上述種類的存儲器的組合。
其中,處理器110用于調(diào)用存儲器109存儲的程序代碼管理代碼,執(zhí)行本發(fā)明第一實施例至第二實施例中任一實施例中部分或全部步驟。
本發(fā)明第三實施例所述的一種文件加密設備,能夠有效的根據(jù)密鑰單元的硬件識別信息對文件進行加密,有效的提高了文件的安全性,有效的降低了文件被非法查閱的概率,即使文件被非法獲取,也不能對文件進行解密獲取文件中的內(nèi)容,極大的提高了文件的安全性。
本發(fā)明第四實施例,一種文件解密方法,如圖4所示,包括以下具體步驟:
步驟s401,當應用程序讀取設定文件時,判斷設定文件是否為第二加密文件。
步驟s402,在判定設定文件為第二加密文件的情況下,根據(jù)密鑰單元中的nvram存儲的授權(quán)信息,判斷應用程序是否被授權(quán)。
步驟s403,在判定應用程序被授權(quán)的情況下,判斷密鑰單元中的nvram是否存儲第二文件標識信息。
步驟s404,在判定密鑰單元中的nvram存儲有第二文件標識信息的情況下,根據(jù)密鑰單元中的nvram存儲的第一密鑰信息,將第二加密文件設置為多個碎片文件,并基于預置的第二碎片文件重組模型,對多個碎片文件進行重組,得到第一加密文件;
可選的,步驟s404,包括:
在判定密鑰單元中的nvram存儲有第二文件標識信息的情況下,將第一密鑰信息的所有位的和與10取模,得到第一密鑰信息的模值m;
判斷模值m是否大于或等于2;若判定模值m大于或等于2,則將第二加密文件設置為m個碎片文件,對m個碎片文件進行依次排序,并將第1個碎片文件移動至第m個碎片文件之后,得到第一加密文件;
若模值m小于2,則將模值m加10,將第一加密文件設置為m+10個碎片文件,對m+10個碎片文件進行依次排序,并將第1個碎片文件移動至第m+10個碎片文件之后,得到第一加密文件。
步驟s405,根據(jù)密鑰單元中的nvram存儲的第一文件標識信息、第一密鑰信息和第二密鑰信息,對第一加密文件進行解密,得到原文件。
可選的,步驟s405,包括:
第一文件標識信息包括:原文件的長度、預置的采樣率n和第二md5值;
根據(jù)密鑰單元中的nvram存儲的第一文件標識信息中的原文件的長度和預置的采樣率n,得到原文件的第i個采樣點的基準地址basei;其中,第i個采樣點的采樣區(qū)間為((basei+1)-(basei))/3;i∈[1,n];
將密鑰單元中的nvram存儲的第一密鑰信息分解為n個元素,通過第i個元素對采樣區(qū)間進行取模,得到第i個偏移地址offseti;
通過第i個采樣點的基準地址basei和第i個偏移地址offseti相加,得到第i個采樣點的采樣地址posti;
通過提取出第一加密文件中的每個加密地址中的第二密鑰信息,對第一加密文件進行解密,得到原文件;
其中,第i個加密地址為posti+((basei+1)-(basei))/3。
本發(fā)明第四實施例所述的一種文件解密方法,能夠有效的根據(jù)密鑰單元的硬件識別信息對文件進行解密,有效的提高了文件的安全性,有效的降低了文件被非法查閱的概率,即使文件被非法獲取,也不能對文件進行解密獲取文件中的內(nèi)容,極大的提高了文件的安全性。
本發(fā)明第五實施例,一種文件解密方法,如圖5所示,包括以下具體步驟:
步驟s501,當應用程序讀取設定文件時,判斷設定文件是否為第二加密文件。
步驟s502,在判定設定文件為第二加密文件的情況下,根據(jù)密鑰單元中的nvram存儲的授權(quán)信息,判斷應用程序是否被授權(quán)。
步驟s503,在判定應用程序被授權(quán)的情況下,判斷密鑰單元中的nvram是否存儲第二文件標識信息;
在判定應用程序未被授權(quán)的情況下,提示第二加密文件讀取失敗,并將第一讀取失敗信息存儲至預置的安全隱患信息日志。
通過安全隱患信息日志能夠有效的對非法讀取加密文件的行為進行記錄,并對對非法讀取加密文件的行為進行追溯,進一步的提高了文件的安全性。
步驟s504,在判定密鑰單元中的nvram存儲有第二文件標識信息的情況下,根據(jù)密鑰單元中的nvram存儲的第一密鑰信息,將第二加密文件設置為多個碎片文件,并基于預置的第二碎片文件重組模型,對多個碎片文件進行重組,得到第一加密文件;
在判定密鑰單元中的nvram未存儲有第二文件標識信息的情況下,提示第二加密文件讀取失敗,并將第二讀取失敗信息存儲至安全隱患信息日志。
可選的,步驟s304,包括:
在判定密鑰單元中的nvram存儲有第二文件標識信息的情況下,將第一密鑰信息的所有位的和與10取模,得到第一密鑰信息的模值m;
判斷模值m是否大于或等于2;若判定模值m大于或等于2,則將第二加密文件設置為m個碎片文件,對m個碎片文件進行依次排序,并將第1個碎片文件移動至第m個碎片文件之后,得到第一加密文件;
若模值m小于2,則將模值m加10,將第一加密文件設置為m+10個碎片文件,對m+10個碎片文件進行依次排序,并將第1個碎片文件移動至第m+10個碎片文件之后,得到第一加密文件;
在判定密鑰單元中的nvram未存儲有第二文件標識信息的情況下,提示第二加密文件讀取失敗,并將第二讀取失敗信息存儲至安全隱患信息日志。
通過安全隱患信息日志能夠有效的對非法讀取加密文件的行為進行記錄,并對對非法讀取加密文件的行為進行追溯,進一步的提高了文件的安全性。
步驟s505,根據(jù)密鑰單元中的nvram存儲的第一文件標識信息、第一密鑰信息和第二密鑰信息,對第一加密文件進行解密,得到原文件。
可選的,步驟s505,包括:
第一文件標識信息包括:原文件的長度、預置的采樣率n和第二md5值;
根據(jù)密鑰單元中的nvram存儲的第一文件標識信息中的原文件的長度和預置的采樣率n,得到原文件的第i個采樣點的基準地址basei;其中,第i個采樣點的采樣區(qū)間為((basei+1)-(basei))/3;i∈[1,n];
將密鑰單元中的nvram存儲的第一密鑰信息分解為n個元素,通過第i個元素對采樣區(qū)間進行取模,得到第i個偏移地址offseti;
通過第i個采樣點的基準地址basei和第i個偏移地址offseti相加,得到第i個采樣點的采樣地址posti;
通過提取出第一加密文件中的每個加密地址中的第二密鑰信息,對第一加密文件進行解密,得到原文件;
其中,第i個加密地址為posti+((basei+1)-(basei))/3。
本發(fā)明第五實施例所述的一種文件解密方法,能夠有效的根據(jù)密鑰單元的硬件識別信息對文件進行解密,有效的提高了文件的安全性,有效的降低了文件被非法查閱的概率,即使文件被非法獲取,也不能對文件進行解密獲取文件中的內(nèi)容,極大的提高了文件的安全性。
本發(fā)明第六實施例,一種文件解密設備,如圖6所示,包括以下組成部分:
處理器210、存儲器209、密鑰單元202。在本發(fā)明的一些實施例中,這些部件可通過總線或者其它方式連接。
處理器210可以是通用處理器,例如中央處理器(centralprocessingunit,cpu),還可以是數(shù)字信號處理器(digitalsignalprocessor,dsp)、專用集成電路(英文:applicationspecificintegratedcircuit,asic),或者是被配置成實施本發(fā)明實施例的一個或多個集成電路。其中,存儲器用于存儲處理器的可執(zhí)行指令;
存儲器209,用于存儲程序代碼,并將該程序代碼傳輸給處理器210。存儲器209可以包括易失性存儲器(volatilememory),例如隨機存取存儲器(randomaccessmemory,ram);存儲器209也可以包括非易失性存儲器(non-volatilememory),例如只讀存儲器(read-onlymemory,rom)、快閃存儲器(flashmemory)、硬盤(harddiskdrive,hdd)或固態(tài)硬盤(solid-statedrive,ssd);存儲器209還可以包括上述種類的存儲器的組合。
其中,處理器210用于調(diào)用存儲器209存儲的程序代碼管理代碼,執(zhí)行本發(fā)明第四實施例和本發(fā)明第五實施例中部分或全部步驟。
本發(fā)明第六實施例所述的一種文件解密設備,能夠有效的根據(jù)密鑰單元的硬件識別信息對文件進行解密,有效的提高了文件的安全性,有效的降低了文件被非法查閱的概率,即使文件被非法獲取,也不能對文件進行解密獲取文件中的內(nèi)容,極大的提高了文件的安全性。
本發(fā)明第七實施例,一種計算機可讀存儲介質(zhì)。
計算機存儲介質(zhì)可以是ram存儲器、閃存、rom存儲器、eprom存儲器、eeprom存儲器、寄存器、硬盤、移動硬盤、cd-rom或者本領域已知的任何其他形式的存儲介質(zhì)。
計算機可讀存儲介質(zhì)存儲有一個或者多個程序,該一個或者多個程序可被一個或者多個處理器執(zhí)行,以實現(xiàn)本發(fā)明第一實施例、本發(fā)明第一實施例、本發(fā)明第四實施例和本發(fā)明第五實施例中任一實施例中部分或全部步驟。
本發(fā)明第七實施例的一種計算機可讀存儲介質(zhì),存儲有一個或者多個程序,該一個或者多個程序能夠?qū)崿F(xiàn)根據(jù)密鑰單元的硬件識別信息對文件進行加密或解密,有效的提高了文件的安全性,有效的降低了文件被非法查閱的概率,即使文件被非法獲取,也不能對文件進行解密獲取文件中的內(nèi)容,極大的提高了文件的安全性。
通過具體實施方式的說明,應當可對本發(fā)明為達成預定目的所采取的技術(shù)手段及功效得以更加深入且具體的了解,然而所附圖示僅是提供參考與說明之用,并非用來對本發(fā)明加以限制。