1.一種針對(duì)磁盤數(shù)據(jù)存儲(chǔ)區(qū)的加解密系統(tǒng),其特征在于,包括:加密扇區(qū)初始化模塊(112)、加密算法配置模塊(118)和數(shù)據(jù)加解密模塊(119);
所述加密扇區(qū)初始化模塊(112),用于根據(jù)磁盤分區(qū)容量以及文件系統(tǒng)特征確定加解密扇區(qū)的位置;
所述加密算法配置模塊(118),用于設(shè)置所述加解密系統(tǒng)使用的加密算法;
所述數(shù)據(jù)加解密模塊(119),用于根據(jù)所述加密算法對(duì)寫入磁盤數(shù)據(jù)存儲(chǔ)區(qū)的文件數(shù)據(jù)進(jìn)行加密,或者對(duì)由磁盤數(shù)據(jù)存儲(chǔ)區(qū)讀取的文件數(shù)據(jù)進(jìn)行解密。
2.根據(jù)權(quán)利要求1所述的加解密系統(tǒng),其特征在于,所述加密扇區(qū)初始化模塊(112)具體用于:
當(dāng)磁盤存在超級(jí)塊信息時(shí),采用第一種計(jì)算方法來(lái)確定數(shù)據(jù)塊扇區(qū)的位置,將磁盤上的數(shù)據(jù)塊扇區(qū)與盤的啟動(dòng)扇區(qū)、磁盤文件系統(tǒng)的超級(jí)快扇區(qū)以及文件信息扇區(qū)區(qū)分開;或者
當(dāng)磁盤不存在超級(jí)塊信息時(shí),采用第二種計(jì)算方法來(lái)確定數(shù)據(jù)塊扇區(qū)的位置,將磁盤上的數(shù)據(jù)塊扇區(qū)與盤的啟動(dòng)扇區(qū)、磁盤文件系統(tǒng)的超級(jí)快扇區(qū)以及文件信息扇區(qū)區(qū)分開。
3.根據(jù)權(quán)利要求要求1所述的加解密系統(tǒng),其特征在于,所述加密算法配置模塊(118)包括:用戶配置接口(113)、加密函數(shù)庫(kù)(115)和加密配置文件(117);當(dāng)用戶向所述加密算法配置模塊(118)的所述用戶配置接口(113)發(fā)出調(diào)用請(qǐng)求,所述加密算法配置模塊(118)通過(guò)所述加密函數(shù)庫(kù)(115)選擇加密算法,并將選擇結(jié)果寫入所述加密配置文件(117)中。
4.根據(jù)權(quán)利要求要求1所述的加解密系統(tǒng),其特征在于,所述數(shù)據(jù)加解密模塊(119)具體用于:
獲取用戶對(duì)磁盤的讀寫請(qǐng)求,解析出讀寫請(qǐng)求中指定的磁盤扇區(qū)和數(shù)據(jù), 判斷指定的磁盤扇區(qū)是否是數(shù)據(jù)塊扇區(qū),如果是數(shù)據(jù)塊扇區(qū)則進(jìn)行加解密處理;對(duì)解析出的用戶數(shù)據(jù),根據(jù)所述加密算法配置模塊(118)中的加密算法對(duì)讀取的數(shù)據(jù)進(jìn)行解密,對(duì)寫入的數(shù)據(jù)加密。
5.根據(jù)權(quán)利要求要求1或4所述的加解密系統(tǒng),其特征在于,所述數(shù)據(jù)加解密模塊(119)在獲取用戶對(duì)磁盤的讀寫請(qǐng)求時(shí);
對(duì)于寫請(qǐng)求,判斷寫入的扇區(qū)是否是數(shù)據(jù)塊扇區(qū),如果是數(shù)據(jù)扇區(qū),根據(jù)加密算法配置模塊(118)中對(duì)應(yīng)的加密算法對(duì)寫入磁盤的明文數(shù)據(jù)進(jìn)行加密,并將密文寫入指定的磁盤扇區(qū);如果不是數(shù)據(jù)扇區(qū),則將用戶數(shù)據(jù)直接寫入到相應(yīng)的磁盤扇區(qū);或者
對(duì)于讀請(qǐng)求,判斷讀取的扇區(qū)是否是數(shù)據(jù)塊扇區(qū),如果是數(shù)據(jù)扇區(qū),根據(jù)加密算法配置模塊(118)中對(duì)應(yīng)的加密算法對(duì)讀取的密文數(shù)據(jù)進(jìn)行解密,并返回明文給用戶;如果不是數(shù)據(jù)扇區(qū),則直接將讀取的數(shù)據(jù)返回給用戶。
6.一種針對(duì)磁盤的數(shù)據(jù)存儲(chǔ)區(qū)加解密方法,其特征在于,包括:
步驟一、根據(jù)磁盤分區(qū)容量以及文件系統(tǒng)特征確定加解密扇區(qū)的位置;
步驟二、設(shè)置所述加解密系統(tǒng)使用的加密算法;
步驟三、根據(jù)所述加密算法對(duì)寫入磁盤數(shù)據(jù)存儲(chǔ)區(qū)的文件數(shù)據(jù)進(jìn)行加密,或者對(duì)由磁盤數(shù)據(jù)存儲(chǔ)區(qū)讀取的文件數(shù)據(jù)進(jìn)行解密。
7.根據(jù)權(quán)利要求6所述的加解密方法,其特征在于,所述根據(jù)磁盤分區(qū)容量以及文件系統(tǒng)特征確定加解密扇區(qū)的位置的步驟包括:
當(dāng)磁盤存在超級(jí)塊信息時(shí),采用第一種計(jì)算方法來(lái)確定數(shù)據(jù)塊扇區(qū)的位置,將磁盤上的數(shù)據(jù)塊扇區(qū)與盤的啟動(dòng)扇區(qū)、磁盤文件系統(tǒng)的超級(jí)快扇區(qū)以及文件信息扇區(qū)區(qū)分開;或者
當(dāng)磁盤不存在超級(jí)塊信息時(shí),采用第二種計(jì)算方法來(lái)確定數(shù)據(jù)塊扇區(qū)的位置,將磁盤上的數(shù)據(jù)塊扇區(qū)與盤的啟動(dòng)扇區(qū)、磁盤文件系統(tǒng)的超級(jí)快扇區(qū)以及文件信息扇區(qū)區(qū)分開。
8.根據(jù)權(quán)利要求6所述的加解密方法,其特征在于,所述根據(jù)所述加密算法對(duì)寫入磁盤數(shù)據(jù)存儲(chǔ)區(qū)的文件數(shù)據(jù)進(jìn)行加密,或者對(duì)由磁盤數(shù)據(jù)存儲(chǔ)區(qū)讀取的文件數(shù)據(jù)進(jìn)行解密的步驟包括:
獲取用戶對(duì)磁盤的讀寫請(qǐng)求,解析出讀寫請(qǐng)求中指定的磁盤扇區(qū)和數(shù)據(jù),判斷指定的磁盤扇區(qū)是否是數(shù)據(jù)塊扇區(qū),如果是數(shù)據(jù)塊扇區(qū)則進(jìn)行加解密處理;對(duì)解析出的用戶數(shù)據(jù),根據(jù)相應(yīng)的加密算法對(duì)讀取的數(shù)據(jù)進(jìn)行解密,對(duì)寫入的數(shù)據(jù)加密。
9.根據(jù)權(quán)利要求8所述的加解密方法,其特征在于,所述根據(jù)所述加密算法對(duì)寫入磁盤數(shù)據(jù)存儲(chǔ)區(qū)的文件數(shù)據(jù)進(jìn)行加密,或者對(duì)由磁盤數(shù)據(jù)存儲(chǔ)區(qū)讀取的文件數(shù)據(jù)進(jìn)行解密的步驟包括:
對(duì)于寫請(qǐng)求,判斷寫入的扇區(qū)是否是數(shù)據(jù)塊扇區(qū),如果是數(shù)據(jù)扇區(qū),根據(jù)相應(yīng)的加密算法對(duì)寫入磁盤的明文數(shù)據(jù)進(jìn)行加密,并將密文寫入指定的磁盤扇區(qū);如果不是數(shù)據(jù)扇區(qū),則將用戶數(shù)據(jù)直接寫入到相應(yīng)的磁盤扇區(qū);或者
對(duì)于讀請(qǐng)求,判斷讀取的扇區(qū)是否是數(shù)據(jù)塊扇區(qū),如果是數(shù)據(jù)扇區(qū),根據(jù)相應(yīng)的加密算法對(duì)讀取的密文數(shù)據(jù)進(jìn)行解密,并返回明文給用戶;如果不是數(shù)據(jù)扇區(qū),則直接將讀取的數(shù)據(jù)返回給用戶。
10.根據(jù)權(quán)利要求6至9中任一權(quán)利要求所述的加解密方法,其特征在于,
每次更改磁盤的加密算法和初始化加密扇區(qū)時(shí)需要首先執(zhí)行一次步驟一和步驟二,然后循環(huán)執(zhí)行步驟三。