一種磁盤數(shù)據(jù)加密的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)保護(hù)領(lǐng)域,更具體的說,是涉及一種磁盤數(shù)據(jù)加密的方法及裝置。
【背景技術(shù)】
[0002] 對磁盤內(nèi)容加密是保護(hù)數(shù)據(jù)安全的一個重要方法。近年來隨著云計算和虛擬機(jī)技 術(shù)的應(yīng)用以及黑客攻擊用戶隱私數(shù)據(jù)情況的時常發(fā)生,數(shù)據(jù)安全問題越來越受到用戶的重 視。
[0003] 現(xiàn)有技術(shù)中,存在一種磁盤加密方法,該方法在對磁盤或磁盤分區(qū)進(jìn)行加密的過 程中,對該磁盤或磁盤分區(qū)的所有扇區(qū)都進(jìn)行加密。但是,現(xiàn)有技術(shù)中的這種磁盤加密方 法,由于需要將整個磁盤或磁盤分區(qū)的所有扇區(qū)都進(jìn)行加密,因此其加密時間很長。而且, 在云計算和虛擬機(jī)環(huán)境中,用戶一般申請的硬盤存儲空間都很大,但實際卻用不了其申請 的硬盤存儲空間,因此云計算和虛擬機(jī)的供應(yīng)商往往給用戶分配的存儲空間達(dá)不到用戶對 存儲空間的申請值。這種情況下,如果用戶采用現(xiàn)有技術(shù)的加密方法進(jìn)行加密,則云計算和 虛擬機(jī)的供應(yīng)商就需要迅速將為用戶分配的存儲空間擴(kuò)容到用戶對存儲空間的申請值,從 而對云計算和虛擬機(jī)的供應(yīng)商方的宿主機(jī)的存儲資源造成浪費。
【發(fā)明內(nèi)容】
[0004] 有鑒于此,本發(fā)明提供了一種磁盤數(shù)據(jù)加密的方法及裝置,以克服現(xiàn)有技術(shù)中的 磁盤加密方法由于需要對整個磁盤的所有扇區(qū)進(jìn)行加密而導(dǎo)致的加密時間長以及存儲資 源浪費的問題。
[0005] 為實現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:
[0006] 第一方面,本申請公開了一種磁盤數(shù)據(jù)加密的方法,包括:
[0007] 確定待加密的磁盤分區(qū);
[0008] 獲取所述待加密的磁盤分區(qū)的文件系統(tǒng)類型;
[0009] 根據(jù)所述文件系統(tǒng)類型,確定所述待加密的磁盤分區(qū)中存儲文件數(shù)據(jù)的磁盤單 元;
[0010] 對所述存儲文件數(shù)據(jù)的磁盤單元進(jìn)行加密。
[0011] 在第一方面的第一種可能實現(xiàn)的方式中,所述根據(jù)所述文件系統(tǒng)類型,確定所述 待加密的磁盤分區(qū)中存儲文件數(shù)據(jù)的磁盤單元包括:
[0012] 根據(jù)所述文件系統(tǒng)類型,獲取所述待加密的磁盤分區(qū)的文件分配表;
[0013] 根據(jù)所述文件分配表,確定所述待加密的磁盤分區(qū)中存儲文件數(shù)據(jù)的磁盤單元。
[0014] 在第一方面的第二種可能實現(xiàn)的方式中,所述方法還包括:
[0015] 在磁盤數(shù)據(jù)加密過程中,如果有新數(shù)據(jù)存儲至所述待加密的磁盤分區(qū),則記錄存 儲了所述新數(shù)據(jù)的磁盤單元的物理地址;
[0016] 則,根據(jù)所述文件系統(tǒng)類型,確定所述待加密的磁盤分區(qū)中存儲文件數(shù)據(jù)的磁盤 單元包括:根據(jù)所述文件分配表以及記錄的物理地址,確定所述待加密的磁盤分區(qū)中存儲 文件數(shù)據(jù)的磁盤單元。
[0017] 在第一方面、第一方面的第一種及第二種可能實現(xiàn)的方式的基礎(chǔ)上,所述對所述 存儲文件數(shù)據(jù)的磁盤單元進(jìn)行加密包括:循環(huán)執(zhí)行步驟a)和步驟b),分多次對所述存儲文 件數(shù)據(jù)的磁盤單元進(jìn)行加密,直至所述待加密的磁盤分區(qū)中所有存儲文件數(shù)據(jù)的磁盤單元 加密完畢;
[0018] a)在第一預(yù)設(shè)時長內(nèi),對所述待加密的磁盤分區(qū)中存儲文件數(shù)據(jù)的磁盤單元進(jìn)行 加密,當(dāng)?shù)谝活A(yù)設(shè)時長結(jié)束時,執(zhí)行步驟b);
[0019] b)在第二預(yù)設(shè)時長內(nèi),執(zhí)行磁盤輸入/輸出隊列中的指令,所述指令包括寫指令 和讀指令,當(dāng)?shù)诙A(yù)設(shè)時長結(jié)束時,返回執(zhí)行步驟a)。
[0020] 在第一方面、第一方面的第一種及第二種可能實現(xiàn)的方式的基礎(chǔ)上,所述方法還 包括:
[0021] 步驟b)中,在第二預(yù)設(shè)時長結(jié)束之前,若檢測到磁盤輸入/輸出隊列中的指令已 經(jīng)執(zhí)行完畢,返回執(zhí)行步驟a)。
[0022] 第二方面,本申請公開了一種磁盤數(shù)據(jù)加密的裝置,包括:
[0023] 待加密確定模塊,用于確定待加密的磁盤分區(qū);
[0024] 文件系統(tǒng)獲取模塊,用于獲取所述待加密的磁盤分區(qū)的文件系統(tǒng)類型;
[0025] 磁盤單元確定模塊,用于根據(jù)所述文件系統(tǒng)類型,確定所述待加密的磁盤分區(qū)中 存儲文件數(shù)據(jù)的磁盤單元;
[0026] 加密模塊,用于對所述存儲文件數(shù)據(jù)的磁盤單元進(jìn)行加密。
[0027] 在第二方面的第一種可能實現(xiàn)的方式中,所述磁盤單元確定模塊包括:
[0028] 文件分配表獲取模塊,用于根據(jù)所述文件系統(tǒng)類型,獲取所述待加密的磁盤分區(qū) 的文件分配表;
[0029] 磁盤單元確定子模塊,用于根據(jù)所述文件分配表,確定所述待加密的磁盤分區(qū)中 存儲文件數(shù)據(jù)的磁盤單元。
[0030] 在第二方面的第二種可能實現(xiàn)的方式中,所述磁盤數(shù)據(jù)的加密裝置還包括:
[0031] 關(guān)系記錄模塊,用于在磁盤數(shù)據(jù)加密過程中,如果有新數(shù)據(jù)存儲至所述待加密的 磁盤分區(qū),則記錄存儲了所述新數(shù)據(jù)的磁盤單元的物理地址;
[0032] 則所述磁盤單元確定模塊具體用于:根據(jù)所述文件分配表以及所述記錄的物理地 址,確定所述待加密的磁盤分區(qū)中存儲文件數(shù)據(jù)的磁盤單元。
[0033] 在第二方面、第二方面的第一種及第二種可能實現(xiàn)的方式的基礎(chǔ)上,所述加密模 塊包括:
[0034] 流程執(zhí)行模塊,用于循環(huán)執(zhí)行操作a)和操作b),分多次對所述存儲文件數(shù)據(jù)的磁 盤單元進(jìn)行加密,直至所述待加密的磁盤分區(qū)中所有存儲文件數(shù)據(jù)的磁盤單元加密完畢;
[0035] 其中,操作a)為:在第一預(yù)設(shè)時長內(nèi),對所述待加密的磁盤分區(qū)中存儲文件數(shù)據(jù) 的磁盤單元進(jìn)行加密,當(dāng)?shù)谝活A(yù)設(shè)時長結(jié)束時,執(zhí)行操作b);
[0036] 操作b)為:在第二預(yù)設(shè)時長內(nèi),執(zhí)行磁盤輸入/輸出隊列中的指令,所述指令包括 讀指令和寫指令,當(dāng)?shù)诙A(yù)設(shè)時長結(jié)束時,返回執(zhí)行操作a)。
[0037] 在第二方面、第二方面的第一種及第二種可能實現(xiàn)的方式的基礎(chǔ)上,所述磁盤數(shù) 據(jù)的加密裝置還包括:
[0038] 檢測模塊,用于在操作b)中,在第二預(yù)設(shè)時長結(jié)束之前,若檢測到磁盤輸入/輸出 隊列中的指令已經(jīng)執(zhí)行完畢,返回執(zhí)行操作a)。
[0039] 經(jīng)由上述的技術(shù)方案可知,與現(xiàn)有技術(shù)相比,本發(fā)明實施例公開了一種磁盤數(shù)據(jù) 加密的方法及裝置,所述磁盤數(shù)據(jù)加密的方法在對磁盤進(jìn)行加密前,會首先確定需要進(jìn)行 加密的磁盤的磁盤分區(qū),即確定待加密的磁盤分區(qū),再根據(jù)所述待加密的磁盤分區(qū)的文件 系統(tǒng)類型確定該待加密的磁盤分區(qū)中的磁盤單元是否已經(jīng)存儲了文件數(shù)據(jù),只有在所述磁 盤單元已經(jīng)存儲了文件數(shù)據(jù)的情況下,才會對該磁盤單元塊進(jìn)行加密處理,而對于沒有存 儲文件數(shù)據(jù)的磁盤單元,可以不進(jìn)行加密處理,從而不需要對整個磁盤分區(qū)的所有磁盤單 元進(jìn)行加密,大大縮短了加密時間,提高了處理效率。即使在云計算和虛擬機(jī)的環(huán)境下,云 計算和虛擬機(jī)的供應(yīng)商也不需要為用戶分配大量多余的空閑磁盤容量,從而不會造成云計 算和虛擬機(jī)的供應(yīng)商方的宿主機(jī)的存儲資源的浪費。
【附圖說明】
[0040] 為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù) 提供的附圖獲得其他的附圖。
[0041] 圖1為本發(fā)明實施例公開的磁盤數(shù)據(jù)加密的方法的流程圖;
[0042] 圖2為本發(fā)明實施例公開的確定存儲文件數(shù)據(jù)的磁盤單元的流程圖;
[0043] 圖3為本發(fā)明實施例公開的另一個磁盤數(shù)據(jù)的加密方法的流程圖;
[0044] 圖4為本發(fā)明實施例公開的又一個磁盤數(shù)據(jù)的加密的方法流程圖;
[0045] 圖5為本發(fā)明實施例公開的對加密磁盤數(shù)據(jù)進(jìn)行讀寫操作的示意圖;
[0046] 圖6為本發(fā)明實施例公開的磁盤數(shù)據(jù)加密的裝置的結(jié)構(gòu)示意圖;
[0047] 圖7為本發(fā)明實施例公開的磁盤單元確定模塊的結(jié)構(gòu)示意圖;
[0048] 圖8為本發(fā)明實施例公開的另一個磁盤數(shù)據(jù)的加密裝置的結(jié)構(gòu)示意圖;
[0049] 圖9為本發(fā)明實施例公開的又一個磁盤數(shù)據(jù)的加密裝置的結(jié)構(gòu)示意圖。
【具體實施方式】
[0050] 下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于 本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他 實施例,都屬于本發(fā)明保護(hù)的范圍。
[0051] 圖1為本發(fā)明實施例公開的磁盤數(shù)據(jù)加密的方法的流程圖,參見圖1所示,所述磁 盤數(shù)據(jù)加密的