一種本地?cái)?shù)據(jù)的安全保護(hù)系統(tǒng)和方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息安全技術(shù)領(lǐng)域,具體來(lái)說(shuō),涉及一種本地?cái)?shù)據(jù)的安全保護(hù)系統(tǒng)和方法。
【背景技術(shù)】
[0002]隨著人們的日常生活,電子數(shù)據(jù)如私人資料和重要文件大部分以數(shù)據(jù)形式存儲(chǔ)于電腦硬盤上,這些資料極易被黑客通過(guò)對(duì)電腦植入木馬軟件被竊取。近年來(lái)國(guó)內(nèi)外不乏大量個(gè)人資料泄密事件發(fā)生,個(gè)人資料信息安全成了當(dāng)今熱門話題。
[0003]現(xiàn)有電子文檔透明加解密系統(tǒng)中,常用的方法是基于文件重定向進(jìn)行透明加解密,雖然對(duì)文件進(jìn)行了一系列的保護(hù)措施,但保存文件數(shù)據(jù)的加密文件從文件創(chuàng)建開始到徹底刪除,始終保存在當(dāng)前終端計(jì)算機(jī)上。只要獲得這些數(shù)據(jù)文件,雖然我們獲得的數(shù)據(jù)是密文亂碼,但包含文件數(shù)據(jù)的全部?jī)?nèi)容,理論上總有技術(shù)手段可以將文件數(shù)據(jù)密文亂碼恢復(fù)成明文。
[0004]針對(duì)相關(guān)技術(shù)中的問題,目前尚未提出有效的解決方案。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的是提供一種本地?cái)?shù)據(jù)的安全保護(hù)系統(tǒng)和方法,不依賴聯(lián)網(wǎng)環(huán)境,將數(shù)據(jù)文件破碎分離存儲(chǔ)到計(jì)算機(jī)密盤和移動(dòng)密盤中,保證用戶的私有數(shù)據(jù)“絕對(duì)安全”,有效的克服了目前現(xiàn)有技術(shù)存在的上述不足。
[0006]本發(fā)明的目的是通過(guò)以下技術(shù)方案來(lái)實(shí)現(xiàn):
根據(jù)本發(fā)明的一方面,提供了一種本地?cái)?shù)據(jù)的安全存儲(chǔ)方法,該本地?cái)?shù)據(jù)的安全存儲(chǔ)方法包括以下步驟:
將待保護(hù)的數(shù)據(jù)文件的按照預(yù)先設(shè)置的文件屬性信息和填充信息,寫入預(yù)先設(shè)置的計(jì)算機(jī)密盤的虛假文件中;
調(diào)用預(yù)先設(shè)置的移動(dòng)密盤隨機(jī)生成數(shù)據(jù)加密密鑰和破碎密鑰,然后用預(yù)先設(shè)置的USBKey中存儲(chǔ)的加密公鑰分別對(duì)數(shù)據(jù)加密密鑰和破碎密鑰進(jìn)行加密,得到數(shù)據(jù)加密密鑰密文和破碎密鑰密文;
利用所述數(shù)據(jù)加密密鑰對(duì)待保護(hù)的數(shù)據(jù)文件進(jìn)行加密,生成密文數(shù)據(jù),再根據(jù)預(yù)先設(shè)置的破碎方法和破碎密鑰對(duì)所述密文數(shù)據(jù)進(jìn)行破碎分塊,得到η份碎片文件,并計(jì)算每份碎片文件HASH值;
調(diào)用預(yù)先配置的碎片文件在計(jì)算機(jī)密盤與移動(dòng)密盤的存儲(chǔ)比例,按照存儲(chǔ)比例將η份碎片文件分成兩組碎片文件,并分別向所述計(jì)算機(jī)密盤和移動(dòng)密盤發(fā)送相對(duì)應(yīng)的碎片文件;
將預(yù)先配置的待保護(hù)的數(shù)據(jù)文件的相關(guān)信息存儲(chǔ)在預(yù)先設(shè)置的索引數(shù)據(jù)庫(kù)的文件關(guān)鍵信息表和碎片索引信息表的各數(shù)據(jù)項(xiàng)中;
將與移動(dòng)密盤相對(duì)應(yīng)的碎片文件存儲(chǔ)在移動(dòng)密盤中,并將與計(jì)算機(jī)密盤相對(duì)應(yīng)的碎片文件存儲(chǔ)到計(jì)算機(jī)密盤的隱藏文件夾中,清除內(nèi)存。
[0007]進(jìn)一步的,還包括:
在使用移動(dòng)密盤和USBKey之前,通過(guò)預(yù)先設(shè)置的登錄信息校驗(yàn)用戶身份,在用戶身份通過(guò)校驗(yàn)的情況下,對(duì)USBKey中預(yù)先存儲(chǔ)的加密公私鑰和移動(dòng)密盤進(jìn)行使用。
[0008]進(jìn)一步的,所述文件關(guān)鍵信息表包括:數(shù)據(jù)/虛假文件ID、密盤存儲(chǔ)碎片份數(shù)、移動(dòng)密盤存儲(chǔ)碎片份數(shù)、數(shù)據(jù)加密密鑰密文、破碎密鑰密文、碎片HASH值字段;碎片索引信息表包括:碎片HASH值、碎片存儲(chǔ)位置、碎片引用數(shù)字段。
[0009]進(jìn)一步的,還包括:
用于在第一次使用移動(dòng)密盤的情況下,將預(yù)先設(shè)置的移動(dòng)密盤ID、移動(dòng)密盤路徑、預(yù)綁定設(shè)備ID、破碎分?jǐn)?shù)η以及計(jì)算機(jī)密盤的碎片存儲(chǔ)比例寫入預(yù)先設(shè)置的配置文件,即實(shí)現(xiàn)設(shè)備的綁定;
將配置文件中的已綁定設(shè)備ID信息刪除,即實(shí)現(xiàn)設(shè)備的解除綁定。
[0010]根據(jù)本發(fā)明的另一方面,提供了一種本地?cái)?shù)據(jù)的安全存儲(chǔ)裝置,該本地?cái)?shù)據(jù)的安全存儲(chǔ)裝置包括:
虛假文件寫入模塊,用于將待保護(hù)的數(shù)據(jù)文件的按照預(yù)先設(shè)置的文件屬性信息和填充信息,寫入預(yù)先設(shè)置的計(jì)算機(jī)密盤的虛假文件中;
密鑰生成保護(hù)模塊,用于調(diào)用預(yù)先設(shè)置的移動(dòng)密盤隨機(jī)生成數(shù)據(jù)加密密鑰和破碎密鑰,然后用預(yù)先設(shè)置的USBKey中存儲(chǔ)的加密公鑰分別對(duì)數(shù)據(jù)加密密鑰和破碎密鑰進(jìn)行加密,得到數(shù)據(jù)加密密鑰密文和破碎密鑰密文;
加密破碎模塊,利用所述數(shù)據(jù)加密密鑰對(duì)待保護(hù)的數(shù)據(jù)文件進(jìn)行加密,生成密文數(shù)據(jù),再根據(jù)預(yù)先設(shè)置的破碎方法和破碎密鑰對(duì)所述密文數(shù)據(jù)進(jìn)行破碎分塊,得到η份碎片文件,并計(jì)算每份碎片文件HASH值;
碎片文件分組模塊,用于調(diào)用預(yù)先配置的碎片文件在計(jì)算機(jī)密盤與移動(dòng)密盤的存儲(chǔ)比例,按照存儲(chǔ)比例將η份碎片文件分成兩組碎片文件,并分別向所述計(jì)算機(jī)密盤和移動(dòng)密盤發(fā)送相對(duì)應(yīng)的碎片文件;
索引數(shù)據(jù)庫(kù)生成模塊,用于將預(yù)先配置的待保護(hù)的數(shù)據(jù)文件的相關(guān)信息存儲(chǔ)在預(yù)先設(shè)置的索引數(shù)據(jù)庫(kù)的文件關(guān)鍵信息表和碎片索引信息表的各數(shù)據(jù)項(xiàng)中;
碎片文件存儲(chǔ)模塊,用于將與移動(dòng)密盤相對(duì)應(yīng)的碎片文件存儲(chǔ)在移動(dòng)密盤中;并將與計(jì)算機(jī)密盤相對(duì)應(yīng)的碎片文件存儲(chǔ)到計(jì)算機(jī)密盤的隱藏文件夾中,清除內(nèi)存。
[0011]進(jìn)一步的,還包括:
身份認(rèn)證模塊,用于在使用移動(dòng)密盤和USBKey之前,通過(guò)預(yù)先設(shè)置的登錄信息校驗(yàn)用戶身份,在用戶身份通過(guò)校驗(yàn)的情況下,對(duì)USBKey中預(yù)先存儲(chǔ)的加密公私鑰和移動(dòng)密盤進(jìn)行使用。
[0012]進(jìn)一步的,所述文件關(guān)鍵信息表包括:數(shù)據(jù)/虛假文件ID、密盤存儲(chǔ)碎片份數(shù)、移動(dòng)密盤存儲(chǔ)碎片份數(shù)、數(shù)據(jù)加密密鑰密文、破碎密鑰密文、碎片HASH值字段;碎片索引信息表包括:碎片HASH值、碎片存儲(chǔ)位置、碎片引用數(shù)字段。
[0013]根據(jù)本發(fā)明的另一方面,提供了一種本地?cái)?shù)據(jù)的安全讀取方法,該本地?cái)?shù)據(jù)的安全讀取方法包括以下步驟:
步驟1:讀取預(yù)先存儲(chǔ)在計(jì)算機(jī)密盤的虛假文件中的文件ID,根據(jù)虛假文件ID讀取預(yù)先配置在索引數(shù)據(jù)庫(kù)中的與虛假文件對(duì)應(yīng)的所有碎片文件的HASH值;
步驟2:根據(jù)所有碎片文件的HASH值,分別在所述移動(dòng)密盤和計(jì)算機(jī)密盤中查詢與所有碎片文件的HASH值一致的碎片文件,直到找到預(yù)先設(shè)置的η份碎片文件;
步驟3:對(duì)所有η份碎片文件逐一計(jì)算HASH值,與虛假文件對(duì)應(yīng)的HASH值碎片文件進(jìn)行一致性校驗(yàn);在虛假文件對(duì)應(yīng)的HASH值碎片文件與η份碎片文件的HASH值存在不一致的情況下,系統(tǒng)自動(dòng)執(zhí)行預(yù)先存儲(chǔ)的返回錯(cuò)誤結(jié)束操作的指令;在虛假文件對(duì)應(yīng)的HASH值碎片文件與η份碎片文件的HASH值一致的情況下,則執(zhí)行步驟4 ;
步驟4:將在計(jì)算機(jī)密盤中查找的碎片文件讀入移動(dòng)密盤;
步驟5:調(diào)用移動(dòng)密盤預(yù)先設(shè)置的密鑰存儲(chǔ)區(qū)內(nèi)存儲(chǔ)的加密私鑰,分別解密索引數(shù)據(jù)庫(kù)中碎片文件ID對(duì)應(yīng)的數(shù)據(jù)加密密鑰密文和破碎密鑰密文,得到數(shù)據(jù)加密密鑰和破碎密鑰;利用與破碎算放相適配的重組算法和破碎密鑰對(duì)η份碎片文件進(jìn)行重組得到數(shù)據(jù)文件密文,再用數(shù)據(jù)加密密鑰解密數(shù)據(jù)文件密文,得到數(shù)據(jù)文件;
步驟6:計(jì)算步驟5中所述數(shù)據(jù)文件的HASH值,與虛假文件中受保護(hù)數(shù)據(jù)文件的HASH值進(jìn)行比對(duì),在比對(duì)結(jié)果一致的情況下,將數(shù)據(jù)文件內(nèi)容展示給用戶;否則,執(zhí)行預(yù)先存儲(chǔ)的返回錯(cuò)誤結(jié)束操作的指令。
[0014]根據(jù)本發(fā)明的另一方面,提供了一種本地?cái)?shù)據(jù)的安全讀取裝置,該本地?cái)?shù)據(jù)的安全讀取裝置包括:
虛假文件讀取模塊,用于讀取預(yù)先存儲(chǔ)在計(jì)算機(jī)密盤的虛假文件中的文件ID,根據(jù)虛假文件ID讀取預(yù)先配置在索引數(shù)據(jù)庫(kù)中的與虛假文件對(duì)應(yīng)的所有碎片文件的HASH值;碎片存儲(chǔ)查詢模塊,用于根據(jù)所有碎片文件的HASH值,分別在所述移動(dòng)密盤和計(jì)算機(jī)密盤中查詢與所有碎片文件的HASH值一致的碎片文件,直到找到預(yù)先設(shè)置的η份碎片文件;
碎片文件匹配模塊,用于對(duì)所有η份碎片文件逐一計(jì)算HASH值,與虛假文件對(duì)應(yīng)的HASH值碎片文件進(jìn)行一致性校驗(yàn);在虛假文件對(duì)應(yīng)的HASH值碎片文件與η份碎片文件的HASH值存在不一致的情況下,系統(tǒng)自動(dòng)執(zhí)行預(yù)先存儲(chǔ)的返回錯(cuò)誤結(jié)束操作的指令;
碎片文件移動(dòng)模塊,用于在虛假文件對(duì)應(yīng)的HASH值碎片文件與η份碎片文件的HASH值一致的情況下;將在計(jì)算機(jī)密盤中查找的碎片文件讀入移動(dòng)密盤;
重組解密模塊,用于調(diào)用移動(dòng)密盤預(yù)先設(shè)置的密鑰存儲(chǔ)區(qū)內(nèi)存儲(chǔ)的加密私鑰,分別解密索引數(shù)據(jù)庫(kù)中碎片文件ID對(duì)應(yīng)的數(shù)據(jù)加密密鑰密文和破碎密鑰密文,得到數(shù)據(jù)加密密鑰和破碎密鑰;利用與破碎算放相適配的重組算法和破碎密鑰對(duì)η份碎片文件進(jìn)行重組得到數(shù)據(jù)文件密文,再用數(shù)據(jù)加密密鑰解密數(shù)據(jù)文件密文,得到數(shù)據(jù)文件;
文件認(rèn)證模塊,用于計(jì)算重組解密模塊得到的所述數(shù)據(jù)文件的HASH值,與虛假文件中受保護(hù)數(shù)據(jù)文件的HASH值進(jìn)行比對(duì),在比對(duì)結(jié)果一致的情況下,將數(shù)據(jù)文件內(nèi)容展示給用戶;否則,執(zhí)行預(yù)先存儲(chǔ)的返回錯(cuò)誤結(jié)束操作的指令。
[0015]根據(jù)本發(fā)明的另一方面,提供了一種本地?cái)?shù)據(jù)的安全保護(hù)系統(tǒng),該本地?cái)?shù)據(jù)的安全保護(hù)系統(tǒng)包括本地?cái)?shù)據(jù)的安全存儲(chǔ)裝置和本地?cái)?shù)據(jù)的安全讀取裝置,其中,所述本地?cái)?shù)據(jù)的安全存儲(chǔ)裝置包括:
虛假文件寫入模塊,用于將待保護(hù)的數(shù)據(jù)文件的按照預(yù)先設(shè)置的文件屬性信息和填充信息,寫入預(yù)先設(shè)置的計(jì)算機(jī)密盤的虛假文件中; 密鑰生成保護(hù)模