本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別涉及一種加密方法和裝置。
背景技術(shù):
數(shù)據(jù)信息作為一種資源,它的普遍性、共享性、增值性、可處理性和多效用性,使其對(duì)于人類具有特別重要的意義。進(jìn)入網(wǎng)絡(luò)時(shí)代后,數(shù)據(jù)信息安全保障工作的難度大大提高。我們面臨日益嚴(yán)重的網(wǎng)絡(luò)安全威脅,諸如網(wǎng)絡(luò)的數(shù)據(jù)竊賊、黑客的侵襲,甚至系統(tǒng)內(nèi)部的泄密。數(shù)據(jù)信息安全已經(jīng)成為各行業(yè)信息化建設(shè)中的首要問(wèn)題。
TPM(Trusted Platform Module,可信賴平臺(tái)模塊)安全芯片是一個(gè)內(nèi)置在計(jì)算機(jī)或者服務(wù)器的微芯片,能夠防止非法用戶的訪問(wèn),它是符合TPM標(biāo)準(zhǔn)的安全芯片。TPM安全芯片具有產(chǎn)生加解密密鑰的功能,能夠?qū)Y料進(jìn)行高速的加密和解密。對(duì)于PC(personal computer,個(gè)人計(jì)算機(jī))用戶,可以加密任意一個(gè)硬盤(pán)分區(qū)。
但是,使用TPM對(duì)某一分區(qū)進(jìn)行加密,對(duì)于Windows系統(tǒng)可以完美兼容,而對(duì)于Linux系統(tǒng)會(huì)出現(xiàn)加密失敗等問(wèn)題,因此兼容性較差。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供了一種加密方法和裝置,能夠提高兼容性。
第一方面,本發(fā)明實(shí)施例提供了一種加密方法,該方法包括:生成密碼源,以及由所述密碼源生成至少一個(gè)子密鑰;
利用所述至少一個(gè)子密鑰中的任一子密鑰將待加密回環(huán)設(shè)備初始化為加密磁盤(pán);
利用所述至少一個(gè)子密鑰中的任一子密鑰將所述加密磁盤(pán)裝載到目標(biāo)文件夾。
優(yōu)選地,所述生成密碼源,包括:
通過(guò)TPM(Trusted Platform Module,可信賴平臺(tái)模塊)安全芯片生成所述密碼源。
優(yōu)選地,在所述將所述加密磁盤(pán)格式化為普通文件系統(tǒng)之后,進(jìn)一步包括:
備份所述密碼源和所述至少一個(gè)子密鑰到外部存儲(chǔ)設(shè)備;
清除所述待加密回環(huán)設(shè)備所在系統(tǒng)中的所述密碼源和所述至少一個(gè)子密鑰。
優(yōu)選地,在所述利用所述至少一個(gè)子密鑰中的任一子密鑰將待加密回環(huán)設(shè)備初始化為加密磁盤(pán)之前,進(jìn)一步包括:
確定第一個(gè)未使用的回環(huán)設(shè)備;
通過(guò)隨機(jī)偽設(shè)備創(chuàng)建第一個(gè)數(shù)的第一大小的塊設(shè)備;
將所述回環(huán)設(shè)備和所述塊設(shè)備進(jìn)行關(guān)聯(lián),形成所述待加密回環(huán)設(shè)備。
優(yōu)選地,該方法進(jìn)一步包括:
加載dm-crypt內(nèi)核模塊,并利用evice-mapper自動(dòng)注冊(cè)所述dm-crypt內(nèi)核模塊;
利用device-mapper識(shí)別所述dm-crypt內(nèi)核模塊;
所述利用所述至少一個(gè)子密鑰中的任一子密鑰將所述加密磁盤(pán)裝載到目標(biāo)文件夾,包括:
在dm-crypt內(nèi)核模塊下,通過(guò)所述device-mapper,利用所述至少一個(gè)子密鑰中的任一子密鑰將所述加密磁盤(pán)裝載到/dev/mapper文件夾中。
第二方面,本發(fā)明實(shí)施例提供了一種加密裝置,該加密裝置包括密鑰生成單元、初始化單元和裝載單元,其中,
所述密鑰生成單元,用于生成密碼源,以及由所述密碼源生成至少一個(gè)子密鑰;
所述初始化單元,用于利用所述至少一個(gè)子密鑰中的任一子密鑰將待加密回環(huán)設(shè)備初始化為加密磁盤(pán);
所述裝載單元,用于利用所述至少一個(gè)子密鑰中的任一子密鑰將所述加密磁盤(pán)裝載到目標(biāo)文件夾。
優(yōu)選地,所述密鑰生成單元,用于通過(guò)TPM安全芯片生成所述密碼源。
優(yōu)選地,該加密裝置進(jìn)一步包括:備份單元和清除單元,其中,
所述備份單元,用于備份所述密碼源和所述至少一個(gè)子密鑰到外部存儲(chǔ)設(shè)備;
所述清除單元,用于清除所述待加密回環(huán)設(shè)備所在系統(tǒng)中的所述密碼源和所述至少一個(gè)子密鑰。
優(yōu)選地,該加密裝置進(jìn)一步包括:確定單元、創(chuàng)建單元和關(guān)聯(lián)單元,其中,
所述確定單元,用于確定第一個(gè)未使用的回環(huán)設(shè)備;
所述創(chuàng)建單元,用于通過(guò)隨機(jī)偽設(shè)備創(chuàng)建第一個(gè)數(shù)的第一大小的塊設(shè)備;
所述關(guān)聯(lián)單元,用于將所述回環(huán)設(shè)備和所述塊設(shè)備進(jìn)行關(guān)聯(lián),形成所述待加密回環(huán)設(shè)備。
優(yōu)選地,該加密裝置進(jìn)一步包括:加載單元和識(shí)別單元,其中,
所述加載單元,用于加載dm-crypt內(nèi)核模塊,并利用evice-mapper自動(dòng)注冊(cè)所述dm-crypt內(nèi)核模塊;
所述識(shí)別單元,用于利用device-mapper識(shí)別所述dm-crypt內(nèi)核模塊;
所述裝載單元,用于在dm-crypt內(nèi)核模塊下,通過(guò)所述device-mapper,利用所述至少一個(gè)子密鑰中的任一子密鑰將所述加密磁盤(pán)裝載到/dev/mapper文件夾中。
本發(fā)明實(shí)施例提供了一種加密方法和裝置,通過(guò)生成密碼源,以及由密碼源生成至少一個(gè)子密鑰,然后利用至少一個(gè)子密鑰中的任一子密鑰將待加密回環(huán)設(shè)備初始化為加密磁盤(pán),最后利用至少一個(gè)子密鑰中的任一子密鑰將加密磁盤(pán)裝載到目標(biāo)文件夾。由于利用子密鑰不僅對(duì)待加密回環(huán)設(shè)備進(jìn)行初始化加密并且進(jìn)行加密裝載,從而保證了加密的成功率,提高了兼容性。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本發(fā)明一個(gè)實(shí)施例提供的一種加密方法的流程圖;
圖2是本發(fā)明一個(gè)實(shí)施例提供的另一種加密方法的流程圖;
圖3是本發(fā)明一個(gè)實(shí)施例提供的一種加密裝置的結(jié)構(gòu)示意圖;
圖4是本發(fā)明一個(gè)實(shí)施例提供的另一種加密裝置的結(jié)構(gòu)示意圖;
圖5是本發(fā)明一個(gè)實(shí)施例提供的又一種加密裝置的結(jié)構(gòu)示意圖;
圖6是本發(fā)明一個(gè)實(shí)施例提供的再一種加密裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例,基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
如圖1所示,本發(fā)明實(shí)施例提供了一種加密方法,該方法可以包括以下步驟:
步驟101:生成密碼源,以及由所述密碼源生成至少一個(gè)子密鑰。
步驟102:利用所述至少一個(gè)子密鑰中的任一子密鑰將待加密回環(huán)設(shè)備初始化為加密磁盤(pán)。
步驟103:利用所述至少一個(gè)子密鑰中的任一子密鑰將所述加密磁盤(pán)裝載到目標(biāo)文件夾。
在圖1所示的實(shí)施例中,通過(guò)生成密碼源,以及由密碼源生成至少一個(gè)子密鑰,然后利用至少一個(gè)子密鑰中的任一子密鑰將待加密回環(huán)設(shè)備初始化為加密磁盤(pán),最后利用至少一個(gè)子密鑰中的任一子密鑰將加密磁盤(pán)裝載到目標(biāo)文件夾。由于利用子密鑰不僅對(duì)待加密回環(huán)設(shè)備進(jìn)行初始化加密并且進(jìn)行加密裝載,從而保證了加密的成功率,提高了兼容性。
值得說(shuō)明的是,密碼源是隨機(jī)生成的一個(gè)密鑰。加密磁盤(pán)為L(zhǎng)UKS格式的加密磁盤(pán),其中LUSK為L(zhǎng)inux Unified Key Setup。
在本發(fā)明一個(gè)實(shí)施例中,為了避免受到外部軟件攻擊和物理盜竊,所述生成密碼源,包括:
通過(guò)TPM安全芯片生成所述密碼源。
在該實(shí)施例中,通過(guò)內(nèi)置TPM安全芯片,其是符合TPM標(biāo)準(zhǔn)的安全芯片,使用該芯片能夠有效的保護(hù)系統(tǒng),防止非法用戶的訪問(wèn),能夠有效地避免受到外部軟件攻擊和物理盜竊。
在本發(fā)明一個(gè)實(shí)施例中,為了保證密鑰的安全,在所述將所述加密磁盤(pán)格式化為普通文件系統(tǒng)之后,進(jìn)一步包括:
備份所述密碼源和所述至少一個(gè)子密鑰到外部存儲(chǔ)設(shè)備;
清除所述待加密回環(huán)設(shè)備所在系統(tǒng)中的所述密碼源和所述至少一個(gè)子密鑰。
在該實(shí)施例中,通過(guò)將密碼源和至少一個(gè)子密鑰進(jìn)行備份,并且清楚系統(tǒng)中的密碼源和至少一個(gè)子密鑰,能夠有效的避免他人從系統(tǒng)中直接獲得密碼源和至少一個(gè)子密鑰,從而得到加密文件。外部存儲(chǔ)設(shè)備可以是U盤(pán)也可以是移動(dòng)硬盤(pán),也可以是其他存儲(chǔ)設(shè)備,只要能夠?qū)γ艽a源和至少一個(gè)子密鑰進(jìn)行存儲(chǔ),且不容易被他人獲取即可。
在本發(fā)明一個(gè)實(shí)施例中,為了能夠?qū)崿F(xiàn)對(duì)文件的加密,在所述利用所述至少一個(gè)子密鑰中的任一子密鑰將待加密回環(huán)設(shè)備初始化為加密磁盤(pán)之前,進(jìn)一步包括:
確定第一個(gè)未使用的回環(huán)設(shè)備;
通過(guò)隨機(jī)偽設(shè)備創(chuàng)建第一個(gè)數(shù)的第一大小的塊設(shè)備;
將所述回環(huán)設(shè)備和所述塊設(shè)備進(jìn)行關(guān)聯(lián),形成所述待加密回環(huán)設(shè)備。
在該實(shí)施例中,建立了一個(gè)加密設(shè)備,該設(shè)備能夠?qū)用芪募M(jìn)行存儲(chǔ)和加密。要?jiǎng)?chuàng)建作為加密設(shè)備裝載的文件系統(tǒng),有兩種選擇:一是建立一個(gè)磁盤(pán)映像,然后作為回送設(shè)備加載;二是使用物理設(shè)備。無(wú)論那種情況,除了在建立和捆綁回送設(shè)備外,其它操作過(guò)程都是相似的。在Linux系統(tǒng)中會(huì)有多個(gè)回環(huán)設(shè)備,回環(huán)設(shè)備(loopback device)以/dev/loop0、/dev/loop1等命名,每個(gè)設(shè)備允許用戶以一個(gè)普通磁盤(pán)文件虛擬一個(gè)塊設(shè)備,用戶可以在這個(gè)設(shè)備上創(chuàng)建文件系統(tǒng)并像普通的磁盤(pán)一樣將它掛載??梢酝ㄟ^(guò)dev/urandom創(chuàng)建塊設(shè)備,文件名則可以根據(jù)個(gè)人喜好進(jìn)行設(shè)定,例如,為/home/secret_dir。并且塊設(shè)備的個(gè)數(shù)和大小都可以進(jìn)行設(shè)定。例如,個(gè)數(shù)可以為50個(gè),100個(gè),200個(gè)等,大小可以為1M,2M,4M等等。
在本發(fā)明一個(gè)實(shí)施例中,為了能夠構(gòu)建加密文件系統(tǒng),進(jìn)一步包括:
加載dm-crypt內(nèi)核模塊,并利用evice-mapper自動(dòng)注冊(cè)所述dm-crypt內(nèi)核模塊;
利用device-mapper識(shí)別所述dm-crypt內(nèi)核模塊;
所述利用所述至少一個(gè)子密鑰中的任一子密鑰將所述加密磁盤(pán)裝載到目標(biāo)文件夾,包括:
在dm-crypt內(nèi)核模塊下,通過(guò)所述device-mapper,利用所述至少一個(gè)子密鑰中的任一子密鑰將所述加密磁盤(pán)裝載到/dev/mapper文件夾中。
在該實(shí)施例中,對(duì)加密內(nèi)核進(jìn)行配置。在Linux系統(tǒng)中,利用dm-crypt來(lái)創(chuàng)建加密文件系統(tǒng)的方法。與其它創(chuàng)建加密文件系統(tǒng)的方法相比,dm-crypt系統(tǒng)有著無(wú)可比擬的優(yōu)越性:它的速度更快,易用性更強(qiáng)。除此之外,它的適用面也很廣,能夠運(yùn)行在各種塊設(shè)備上,即使這些設(shè)備使用了RAID(Redundant Arrays of Independent Disks,磁盤(pán)陣列)和LVM(Logical Volume Manager,邏輯卷管理)也毫無(wú)障礙。因?yàn)閐m_crypt使用內(nèi)核device mapper去加密,磁盤(pán)位置是/dev/mapper,如果沒(méi)有該文件夾,則需要手動(dòng)創(chuàng)建。
下面以在Linux系統(tǒng)中進(jìn)行加密為例,對(duì)本發(fā)明的加密方法進(jìn)行詳細(xì)說(shuō)明。
如圖2所示,本發(fā)明實(shí)施例提供了一種加密方法,該方法可以包括以下步驟:
步驟201:配置device-mapper,加載dm-crypt內(nèi)核模塊,并使用evice-mapper自動(dòng)注冊(cè)。
步驟202:通過(guò)檢驗(yàn),使device-mapper識(shí)別dm-crypt。
步驟203:通過(guò)TPM安全芯片生成密碼源,以及由密碼源生成至少一個(gè)子密鑰。
在該步驟中,使用TPM安全芯片能夠有效的保護(hù)系統(tǒng),防止非法用戶的訪問(wèn),有效地避免受到外部軟件攻擊和物理盜竊。
步驟204:確定第一個(gè)未使用的回環(huán)設(shè)備。
在該步驟中,回環(huán)設(shè)備(loopback device)以/dev/loop0、/dev/loop1等命名,每個(gè)設(shè)備允許用戶以一個(gè)普通磁盤(pán)文件虛擬一個(gè)塊設(shè)備,用戶可以在這個(gè)設(shè)備上創(chuàng)建文件系統(tǒng)并像普通的磁盤(pán)一樣將它掛載。例如,在本實(shí)施例中,獲取到的第一個(gè)未使用的回環(huán)設(shè)備為/dev/loop1。
步驟205:通過(guò)隨機(jī)偽設(shè)備創(chuàng)建100個(gè)的2M塊設(shè)備。
在該步驟中,利用Linux的/dev/urandom創(chuàng)建塊設(shè)備,文件名為/home/secret_dir,其中,每個(gè)數(shù)據(jù)庫(kù)的內(nèi)存的大小為2MB,初始化一共100個(gè)數(shù)據(jù)塊。
步驟206:將回環(huán)設(shè)備和塊設(shè)備進(jìn)行關(guān)聯(lián),形成所述待加密回環(huán)設(shè)備。
在該步驟中,將回環(huán)設(shè)備和塊設(shè)備關(guān)聯(lián),從而創(chuàng)建了一個(gè)加密設(shè)備,也就是本實(shí)施例中的待加密回環(huán)設(shè)備。例如,/home/secret_dir和/dev/loop1關(guān)聯(lián)。
步驟207:利用至少一個(gè)子密鑰中的任一子密鑰將待加密回環(huán)設(shè)備初始化為加密磁盤(pán)。
步驟208:通過(guò)device-mapper,利用至少一個(gè)子密鑰中的任一子密鑰將加密磁盤(pán)裝載到/dev/mapper文件夾中。
在該步驟中,將加密磁盤(pán)成功裝載到/dev/mapper的一個(gè)文件夾中,可以是/dev/mapper/secret,此時(shí),用戶可以看到裝載的加密磁盤(pán)及文件系統(tǒng),盡管看起來(lái)與其他磁盤(pán)和文件系統(tǒng)無(wú)異,但實(shí)際上寫(xiě)到/dev/mapper/secret下的所有數(shù)據(jù),在數(shù)據(jù)寫(xiě)入之前都是經(jīng)過(guò)透明的加密處理后才寫(xiě)入磁盤(pán)的,因此,從該處讀取的數(shù)據(jù)都是些密文。
為了方便對(duì)加密磁盤(pán)的訪問(wèn),可以創(chuàng)建一個(gè)待掛載文件夾,將/dev/mapper/secret掛載到該待掛載文件夾。例如,創(chuàng)建/home/validation文件夾,將/dev/mapper/secret掛載到/home/validation文件夾下,隨后便可以在/home/validation文件夾中進(jìn)行創(chuàng)建文件、文件夾、編輯文件等各類操作。重啟服務(wù)器,依舊可以在/home/validation文件夾中進(jìn)行創(chuàng)建文件、文件夾、編輯文件等各類操作,說(shuō)明加密磁盤(pán)正常被掛載且可以訪問(wèn)。
步驟209:備份密碼源和至少一個(gè)子密鑰到外部存儲(chǔ)設(shè)備,以及清除待加密回環(huán)設(shè)備所在系統(tǒng)中的密碼源和至少一個(gè)子密鑰。
在該步驟中,將備份密碼源和至少一個(gè)子密鑰,并將系統(tǒng)中的密碼源和至少一個(gè)子密鑰清除,可以避免他人直接對(duì)加密磁盤(pán)進(jìn)行訪問(wèn)。
在清除系統(tǒng)中的密碼源和至少一個(gè)子密鑰后,可以對(duì)加密性能進(jìn)行測(cè)試。例如:第一種情況:保證TPM安全芯片為生成密碼源和至少一個(gè)子密鑰的TPM安全芯片,且該TPM安全芯片正常工作,并將備份有密碼源和至少一個(gè)子密鑰的外部存儲(chǔ)設(shè)備連接到系統(tǒng)中,此時(shí),可成功掛載加密磁盤(pán)/dev/mapper/secret到/home/validation/下,并進(jìn)行創(chuàng)建文件、文件夾、編輯文件等各類操作;
第二種情況:保證TPM安全芯片為生成密碼源和至少一個(gè)子密鑰的TPM安全芯片,并將備份有密碼源和至少一個(gè)子密鑰的外部存儲(chǔ)設(shè)備連接到系統(tǒng)中,但TPM安全芯片功能被禁用,此時(shí),會(huì)有提示“Command failed:No key available with this passphrase”。說(shuō)明在有TPM安全芯片但是其功能是禁用的情況下,無(wú)法將TPM安全芯片中的子密鑰與外部存儲(chǔ)設(shè)備中的子密鑰校驗(yàn),則不能掛載和訪問(wèn)加密磁盤(pán)/dev/mapper/secret。
第三種情況:不安裝TPM安全芯片,但將備份有密碼源和至少一個(gè)子密鑰的外部存儲(chǔ)設(shè)備連接到系統(tǒng)中,此時(shí),同樣會(huì)有提示“Command failed:No key available with this passphrase”。說(shuō)明在沒(méi)有TPM安全芯片存在的情況下,外部存儲(chǔ)設(shè)備中的子密鑰無(wú)法與TPM安全芯片中的子密鑰校驗(yàn),則不能掛載和訪問(wèn)加密磁盤(pán)/dev/mapper/secret。
第四種情況:使用的TPM安全芯片不是生成密碼源和至少一個(gè)子密鑰的TPM安全芯片,但TPM安全芯片正常工作,并將備份有密碼源和至少一個(gè)子密鑰的外部存儲(chǔ)設(shè)備連接到系統(tǒng)中,此時(shí),同樣會(huì)有提示“Command failed:No key available with this passphrase”。說(shuō)明存在TPM安全芯片,但TPM安全芯片中沒(méi)有子密鑰,無(wú)法和外部存儲(chǔ)設(shè)備中的子密鑰去校驗(yàn),則不能掛載和訪問(wèn)加密磁盤(pán)/dev/mapper/secret。
從上面在通過(guò)TPM安全芯片生成了加密密鑰的情況下,創(chuàng)建加密磁盤(pán)并掛載,通過(guò)更改不同的配置條件,來(lái)驗(yàn)證TPM加密功能是否生效。從多方位多角度驗(yàn)證了保密度,有效地驗(yàn)證了TPM安全芯片功能的可用性。
如圖3所示,本發(fā)明實(shí)施例提供了一種加密裝置,該加密裝置可以包括:密鑰生成單元301、初始化單元302和裝載單元303,其中,
所述密鑰生成單元301,用于生成密碼源,以及由所述密碼源生成至少一個(gè)子密鑰;
所述初始化單元302,用于利用所述至少一個(gè)子密鑰中的任一子密鑰將待加密回環(huán)設(shè)備初始化為加密磁盤(pán);
所述裝載單元303,用于利用所述至少一個(gè)子密鑰中的任一子密鑰將所述加密磁盤(pán)裝載到目標(biāo)文件夾。
在該實(shí)施例中,通過(guò)密鑰生成單元生成密碼源,以及由密碼源生成至少一個(gè)子密鑰,然后通過(guò)初始化單元利用至少一個(gè)子密鑰中的任一子密鑰將待加密回環(huán)設(shè)備初始化為加密磁盤(pán),最后通過(guò)裝載單元利用至少一個(gè)子密鑰中的任一子密鑰將加密磁盤(pán)裝載到目標(biāo)文件夾。由于利用子密鑰不僅對(duì)待加密回環(huán)設(shè)備進(jìn)行初始化加密并且進(jìn)行加密裝載,從而保證了加密的成功率,提高了兼容性。
在本發(fā)明一個(gè)實(shí)施例中,為了避免受到外部軟件攻擊和物理盜竊,所述密鑰生成單元301,用于通過(guò)TPM安全芯片生成所述密碼源。
在該實(shí)施例中,通過(guò)設(shè)置TPM安全芯片能夠有效的保護(hù)系統(tǒng),防止非法用戶的訪問(wèn)。
如圖4所示,在本發(fā)明一個(gè)實(shí)施例中,為了保證密鑰的安全,該加密裝置可以進(jìn)一步包括:備份單元401和清除單元402,其中,
所述備份單元,用于備份所述密碼源和所述至少一個(gè)子密鑰到外部存儲(chǔ)設(shè)備;
所述清除單元,用于清除所述待加密回環(huán)設(shè)備所在系統(tǒng)中的所述密碼源和所述至少一個(gè)子密鑰。
在該實(shí)施例中,通過(guò)備份單元將密碼源和至少一個(gè)子密鑰備份到系統(tǒng)外部的存儲(chǔ)設(shè)備,并將系統(tǒng)內(nèi)部的密碼源和至少一個(gè)子密鑰清除,能夠有效的防止盜取密碼源和至少一個(gè)子密鑰清除,從而訪問(wèn)加密文件。
如圖5所示,在本發(fā)明一個(gè)實(shí)施例中,為了能夠?qū)崿F(xiàn)對(duì)文件的加密,該加密裝置可以進(jìn)一步包括:確定單元501、創(chuàng)建單元502和關(guān)聯(lián)單元503,其中,
所述確定單元501,用于確定第一個(gè)未使用的回環(huán)設(shè)備;
所述創(chuàng)建單元502,用于通過(guò)隨機(jī)偽設(shè)備創(chuàng)建第一個(gè)數(shù)的第一大小的塊設(shè)備;
所述關(guān)聯(lián)單元503,用于將所述回環(huán)設(shè)備和所述塊設(shè)備進(jìn)行關(guān)聯(lián),形成所述待加密回環(huán)設(shè)備。
在該實(shí)施例中,通過(guò)確定單元、創(chuàng)建單元和關(guān)聯(lián)單元,建立了一個(gè)加密設(shè)備,該設(shè)備能夠?qū)用芪募M(jìn)行存儲(chǔ)和加密。要?jiǎng)?chuàng)建作為加密設(shè)備裝載的文件系統(tǒng),有兩種選擇:一是建立一個(gè)磁盤(pán)映像,然后作為回送設(shè)備加載;二是使用物理設(shè)備。無(wú)論那種情況,除了在建立和捆綁回送設(shè)備外,其它操作過(guò)程都是相似的。
如圖6所示,在本發(fā)明一個(gè)實(shí)施例中,為了能夠構(gòu)建加密文件系統(tǒng),該加密裝置可以進(jìn)一步包括:加載單元601和識(shí)別單元602,其中,
所述加載單元601,用于加載dm-crypt內(nèi)核模塊,并利用evice-mapper自動(dòng)注冊(cè)所述dm-crypt內(nèi)核模塊;
所述識(shí)別單元602,用于利用device-mapper識(shí)別所述dm-crypt內(nèi)核模塊;
所述裝載單元303,用于在dm-crypt內(nèi)核模塊下,通過(guò)所述device-mapper,利用所述至少一個(gè)子密鑰中的任一子密鑰將所述加密磁盤(pán)裝載到/dev/mapper文件夾中。
在該實(shí)施例中,通過(guò)配置單元,加載單元和識(shí)別單元,對(duì)加密內(nèi)核進(jìn)行配置。因?yàn)閐m_crypt使用內(nèi)核device mapper去加密,磁盤(pán)位置是/dev/mapper,如果沒(méi)有該文件夾,則需要手動(dòng)創(chuàng)建。
上述裝置內(nèi)的各單元之間的信息交互、執(zhí)行過(guò)程等內(nèi)容,由于與本發(fā)明方法實(shí)施例基于同一構(gòu)思,具體內(nèi)容可參見(jiàn)本發(fā)明方法實(shí)施例中的敘述,此處不再贅述。
綜上,本發(fā)明的各實(shí)施例,至少具有如下有益效果:
1、在本發(fā)明的實(shí)施例中,通過(guò)生成密碼源,以及由密碼源生成至少一個(gè)子密鑰,然后利用至少一個(gè)子密鑰中的任一子密鑰將待加密回環(huán)設(shè)備初始化為加密磁盤(pán),最后利用至少一個(gè)子密鑰中的任一子密鑰將加密磁盤(pán)裝載到目標(biāo)文件夾。由于利用子密鑰不僅對(duì)待加密回環(huán)設(shè)備進(jìn)行初始化加密并且進(jìn)行加密裝載,從而保證了加密的成功率,提高了兼容性。
2、在本發(fā)明的實(shí)施例中,通過(guò)使用TPM生成密碼源和至少一個(gè)子密鑰,能夠有效的保護(hù)系統(tǒng),防止非法用戶的訪問(wèn),有效地避免受到外部軟件攻擊和物理盜竊。
3、在本發(fā)明的實(shí)施例中,通過(guò)將密碼源和至少一個(gè)子密鑰進(jìn)行備份,并且清楚系統(tǒng)中的密碼源和至少一個(gè)子密鑰,能夠有效的避免他人從系統(tǒng)中直接獲得密碼源和至少一個(gè)子密鑰,從而得到加密文件。
4、在本發(fā)明的實(shí)施例中,利用dm-crypt來(lái)創(chuàng)建加密文件系統(tǒng)的方法,與其它創(chuàng)建加密文件系統(tǒng)的方法相比,dm-crypt系統(tǒng)有著無(wú)可比擬的優(yōu)越性:它的速度更快,易用性更強(qiáng)。除此之外,它的適用面也很廣,能夠運(yùn)行在各種塊設(shè)備上,即使這些設(shè)備使用了RAID和LVM也毫無(wú)障礙。
需要說(shuō)明的是,在本文中,諸如第一和第二之類的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開(kāi)來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)〃·····”限定的要素,并不排除在包括所述要素的過(guò)程、方法、物品或者設(shè)備中還存在另外的相同因素。
本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成,前述的程序可以存儲(chǔ)在計(jì)算機(jī)可讀取的存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:ROM、RAM、磁碟或者光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)中。
最后需要說(shuō)明的是:以上所述僅為本發(fā)明的較佳實(shí)施例,僅用于說(shuō)明本發(fā)明的技術(shù)方案,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi)所做的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍內(nèi)。