專利名稱:一種計算機數(shù)據(jù)保護方法
技術領域:
本發(fā)明涉及計算機信息安全技術領域,特別是指一種計算機數(shù)據(jù)保護方法。
背景技術:
數(shù)據(jù)加密是保護計算機數(shù)據(jù)安全的一個重要方法,通常個人計算機上所使用的數(shù)據(jù)保護方法多建立在操作系統(tǒng)應用層,依賴于軟件實現(xiàn)。軟件所提供的數(shù)據(jù)保護方法是利用偽隨機數(shù)或者用戶口令作為密鑰加密磁盤上的數(shù)據(jù)。由于軟件加密可以被跟蹤調試而破解密鑰,因此無法對加密數(shù)據(jù)所使用的密鑰進行有力的保護,尤其針對較為重要的計算機數(shù)據(jù)時,軟件保護難以達到所要求的安全性。
而基于硬件對數(shù)據(jù)進行加密保護,則解決了軟件所存在的易破解的問題。目前,通過硬件保護數(shù)據(jù),可以采用IC卡或者UKEY等類似外設硬件的方法加密保護數(shù)據(jù),但使用外設硬件的保護方法就像是另外配了一把鑰匙,每次使用都需要“鑰匙”來解密,在使用上不便。另一方面,由于外設硬件無法和主機系統(tǒng)綁定,還存在著丟失和被盜的安全隱患,丟失“鑰匙”不但可能使用戶數(shù)據(jù)泄漏,甚至會導致用戶自己也無法使用所加密的數(shù)據(jù)。
為了解決目前的外設硬件無法和主機系統(tǒng)綁定的問題,在本申請人同時提交的另一篇專利申請中提出了安全芯片技術。也就是將加解密的復雜過程集成在安裝在計算機主板上的一個安全芯片上,通過隨機數(shù)生成、散列運算、對稱加密密碼運算、HASH運算等算法實現(xiàn)密鑰及公私鑰對的生成,加密后的密鑰信息存儲在安全芯片內部,實現(xiàn)向外提供密鑰生成、信息加密、簽名驗證、唯一身份標識等服務。這里的公鑰是指安全芯片提供的一種加密算法,與之成對的私鑰則是安全芯片提供的針對這種公鑰的解密算法。
發(fā)明內容
本發(fā)明的目的在于利用安全芯片提供一種計算機數(shù)據(jù)保護方法,使數(shù)據(jù)可以更方便、更安全地受到保護。
實現(xiàn)本發(fā)明,包括以下步驟A、預先在計算機上安裝一個安全芯片;B、在計算機硬盤上設置一個用于存放保護數(shù)據(jù)的虛擬磁盤,并使用安全芯片生成密鑰加密虛擬磁盤;C、在從虛擬磁盤讀取或者向虛擬磁盤寫入計算機數(shù)據(jù)時,根據(jù)所述密鑰解密虛擬磁盤,然后對虛擬磁盤進行計算機數(shù)據(jù)讀寫操作。
其中,該方法進一步包括虛擬磁盤管理模塊在接收到創(chuàng)建虛擬磁盤的指定虛擬磁盤的大小和格式的指令后,通知虛擬磁盤驅動模塊建立虛擬磁盤;虛擬磁盤驅動模塊建立作為虛擬磁盤的物理載體的虛擬磁盤鏡像文件。
其中,該方法進一步包括在通過安全芯片驅動模塊接收到來自安裝在主板上安全芯片管理模塊的指令后,安全芯片生成加密用公私鑰對以及訪問該公私鑰對的口令;安全芯片生成一個隨機數(shù)密鑰對虛擬磁盤進行加密,并使用私鑰對所述隨機數(shù)密鑰進行加密形成隨機數(shù)密鑰加密塊。其中,安全芯片為不同的用戶生成不同的公私鑰對及訪問其私鑰的不同口令。
其中,該方法進一步包括通過安全芯片口令認證獲取使用安全芯片所提供的私鑰,安全芯片用此私鑰解密隨機數(shù)密鑰加密塊還原出隨機數(shù)密鑰。
其中,該方法進一步包括將被保護數(shù)據(jù)寫入虛擬磁盤時,安全芯片再次生成隨機數(shù)密鑰衍生密鑰對寫入的數(shù)據(jù)進行加密保護;被保護數(shù)據(jù)從虛擬磁盤讀出時,安全芯片用隨機數(shù)密鑰衍生密鑰對讀出的數(shù)據(jù)進行解密。
由上述步驟可以看出,數(shù)據(jù)可以受到安全芯片產(chǎn)生的多層密鑰的保護,保存在虛擬磁盤的數(shù)據(jù)任何時候至少間接通過加密虛擬磁盤而進行實時加密,保證了數(shù)據(jù)的安全;正確使用已建立的虛擬磁盤時,除輸入用戶名與安全芯片提供的訪問該用戶私鑰的口令外,其他加解密的過程由系統(tǒng)自動進行,因此用戶就可象對普通文件一樣進行操作,而無需對所保護的數(shù)據(jù)進行煩瑣的加密解密過程,使用方便。
基于安全芯片的數(shù)據(jù)保護方法,所產(chǎn)生的根公鑰,以及訪問該對應私鑰的口令保存在安全芯片內部,無法被導出,而安全芯片與計算機的綁定,實現(xiàn)所保護的數(shù)據(jù)與計算機平臺的綁定,由于安全芯片標識的唯一性,所保護的數(shù)據(jù)除本機外無法在其他計算機上讀取,即使硬盤被插到其他機器上,由于安全芯片標識的唯一性,硬盤上所保護的文件信息也不會被讀出,只能通過綁定于原計算機的安全芯片進行解密。從而確保了重要數(shù)據(jù)的安全性。
圖1為本發(fā)明數(shù)據(jù)保護方法的模塊示意圖;圖2為本發(fā)明數(shù)據(jù)保護過程的流程圖。
具體實施例方式
圖1為本發(fā)明數(shù)據(jù)保護方法的功能模塊示意圖。本發(fā)明通過安全芯片生成密鑰信息,加密保護用于存放保護數(shù)據(jù)的虛擬磁盤。為實現(xiàn)本發(fā)明,在計算機操作系統(tǒng)上設置了虛擬磁盤模塊和安全芯片模塊;另外設置了用戶管理模塊,用來對合法用戶進行管理,包括授權和驗證用戶使用安全芯片。
其中,虛擬磁盤模塊包括虛擬磁盤管理模塊和虛擬磁盤驅動模塊。虛擬磁盤管理模塊在接收到用戶下發(fā)的指令后,通知虛擬磁盤驅動模塊對虛擬磁盤進行操作,包括虛擬磁盤的建立、刪除、更改。另外,計算機操作系統(tǒng)也是通過虛擬磁盤驅動模塊實現(xiàn)數(shù)據(jù)的讀、寫、刪除或更新。
其中,安全芯片模塊包括安全芯片管理模塊、安全芯片驅動模塊和安全芯片。安全芯片管理模塊通過安全芯片驅動模塊獲得并使用安全芯片所提供的安全服務,如身份認證、信息加密、數(shù)字簽名、唯一身份標識等。安全芯片通過安全芯片驅動模塊接收來自安全芯片管理模塊的指令,生成加密用公私鑰對以及訪問該公私鑰對的口令,以及生成隨機數(shù)密鑰對存放保護數(shù)據(jù)的虛擬磁盤進行加密,加密信息存放在安全芯片內部。
圖2為基于本發(fā)明計算機數(shù)據(jù)保護方法,參照圖2進一步詳細說明步驟201預先在計算機上主板上安裝一個安全芯片,使安全芯片與計算機實現(xiàn)硬件上的綁定。
步驟202首先,通過用戶管理模塊創(chuàng)建用戶,該信息同時傳遞給密鑰管理模塊,密鑰管理模塊通過安全芯片驅動模塊通知安全芯片為該用戶生成一對加密用的公私鑰對,同時生成訪問該私鑰的口令。安全芯片為不同的用戶生成不同的公私鑰對及訪問其私鑰的不同口令。安全芯片產(chǎn)生用于虛擬磁盤保護的隨機數(shù)密鑰,并用公鑰對隨機數(shù)密鑰加密,加密后的隨機數(shù)密鑰稱為隨機密鑰加密塊存放于硬盤中。
然后,創(chuàng)建用來存放用來保護數(shù)據(jù)的虛擬磁盤,并使用隨機數(shù)密鑰對虛擬磁盤進行加密保護。
用戶通過虛擬磁盤管理模塊指定虛擬磁盤大小和格式,虛擬磁盤管理模塊在接收到創(chuàng)建虛擬磁盤的指令后,通知虛擬磁盤驅動模塊建立虛擬磁盤;虛擬磁盤驅動模塊響應虛擬磁盤管理模塊指令創(chuàng)建虛擬磁盤。這里所述的創(chuàng)建虛擬磁盤是指在硬盤上建立一個虛擬磁盤的鏡像文件,作為虛擬磁盤的物理載體。對虛擬磁盤的任何數(shù)據(jù)讀寫操作,是通過訪問此鏡像文件來完成的。
同時,用步驟202中安全芯片產(chǎn)生的隨機數(shù)密鑰對虛擬磁盤進行加密,即加密虛擬磁盤鏡像文件,來達到保護寫入虛擬磁盤上的數(shù)據(jù)的目的。在讀取數(shù)據(jù)時,只有通過隨機數(shù)密鑰解密虛擬磁盤鏡像文件后才可以對虛擬磁盤上所保護的數(shù)據(jù)進行讀寫。
步驟203在從虛擬磁盤讀取或者向虛擬磁盤寫入計算機數(shù)據(jù)時,根據(jù)所述私鑰解密所述虛擬磁盤,對虛擬磁盤進行計算機數(shù)據(jù)讀寫操作。在進行計算機數(shù)據(jù)讀寫操作之后,虛擬磁盤依然受到隨機密鑰加密塊的密鑰保護。
對虛擬磁盤讀寫保護的數(shù)據(jù)時,用戶需要通過口令認證獲取使用安全芯片所提供的私鑰,然后安全芯片通過此私鑰解密隨機數(shù)密鑰加密塊還原出隨機數(shù)密鑰,并傳遞給虛擬磁盤驅動模塊解密虛擬磁盤鏡像文件,之后用戶可正常對虛擬磁盤上被保護的數(shù)據(jù)進行訪問,保存在虛擬磁盤的數(shù)據(jù)任何時候都是間接通過加密虛擬磁盤而加密的,保證了數(shù)據(jù)的安全,因此用戶就可象對普通文件一樣進行操作,而無需對所保護的數(shù)據(jù)進行煩瑣的加密解密過程。
在將被保護數(shù)據(jù)寫入安全芯片保護的虛擬磁盤的過程中,安全芯片可以再次生成隨機數(shù)密鑰衍生密鑰對寫入的數(shù)據(jù)進行加密保護,具體如下在對虛擬磁盤寫入要保護的數(shù)據(jù)時,虛擬磁盤驅動對操作系統(tǒng)傳遞下來的數(shù)據(jù)操作參數(shù)進行分析,提取出其中的用戶數(shù)據(jù),安全芯片使用隨機密鑰的衍生密鑰對數(shù)據(jù)進行加密,加密后的數(shù)據(jù)依據(jù)操作參數(shù)寫入鏡像文件中的指定位置;相應地,在對虛擬磁盤讀出所保護的數(shù)據(jù)時,虛擬磁盤驅動對所截獲的操作系統(tǒng)傳遞下來數(shù)據(jù)操作參數(shù)進行分析,依據(jù)操作參數(shù)從鏡像文件指定位置讀取所需要的用戶數(shù)據(jù),安全芯片使用隨機密鑰的衍生密鑰對數(shù)據(jù)進行解密,解密后的數(shù)據(jù)再傳遞回操作系統(tǒng)。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。
權利要求
1.一種計算機數(shù)據(jù)保護方法,其特征在于包括以下步驟A、預先在計算機上安裝一個安全芯片;B、在計算機硬盤上設置一個用于存放保護數(shù)據(jù)的虛擬磁盤,并使用安全芯片生成密鑰加密虛擬磁盤;C、在從虛擬磁盤讀取或者向虛擬磁盤寫入計算機數(shù)據(jù)時,根據(jù)所述密鑰解密虛擬磁盤,然后對虛擬磁盤進行計算機數(shù)據(jù)讀寫操作。
2.根據(jù)權利要求1所述的計算機數(shù)據(jù)保護方法,其特征在于,在計算機操作系統(tǒng)上設置虛擬磁盤管理模塊和虛擬磁盤驅動模塊,步驟B中在計算機硬盤上設置一個用于存放保護數(shù)據(jù)的虛擬磁盤的步驟進一步包括B1、虛擬磁盤管理模塊在接收到創(chuàng)建虛擬磁盤的指令后,通知虛擬磁盤驅動模塊建立虛擬磁盤;B2、虛擬磁盤驅動模塊建立作為虛擬磁盤的物理載體的虛擬磁盤鏡像文件。
3.根據(jù)權利要求2所述的計算機數(shù)據(jù)保護方法,其特征在于,步驟B1所述創(chuàng)建虛擬磁盤的指令進一步包括指定虛擬磁盤的大小和格式的信息。
4.根據(jù)權利要求1所述的計算機數(shù)據(jù)保護方法,其特征在于,在計算機操作系統(tǒng)上設置安全芯片管理模塊和安全芯片驅動模塊,步驟B中使用安全芯片生成的隨機數(shù)密鑰對虛擬磁盤進行加密的步驟進一步包括B3、在通過安全芯片驅動模塊接收到來自安全芯片管理模塊的指令后,安全芯片生成加密用公私鑰對以及訪問該公私鑰對的口令;B4、安全芯片生成一個隨機數(shù)密鑰對虛擬磁盤進行加密,并使用私鑰對所述隨機數(shù)密鑰進行加密形成隨機數(shù)密鑰加密塊。
5.根據(jù)權利要求4所述的計算機數(shù)據(jù)保護方法,其特征在于,安全芯片為不同的用戶生成不同的公私鑰對及訪問其私鑰的不同口令。
6.根據(jù)權利要求4所述的計算機數(shù)據(jù)保護方法,其特征在于,所述隨機數(shù)密鑰解密虛擬磁盤的方法進一步包括通過安全芯片口令認證獲取使用安全芯片所提供的私鑰,安全芯片用此私鑰解密隨機數(shù)密鑰加密塊還原出隨機數(shù)密鑰。
7.根據(jù)權利要求1所述的計算機數(shù)據(jù)保護方法,其特征在于,步驟C中對虛擬磁盤進行計算機數(shù)據(jù)讀寫操作的方法進一步包括將被保護數(shù)據(jù)寫入虛擬磁盤時,安全芯片再次生成隨機數(shù)密鑰衍生密鑰對寫入的數(shù)據(jù)進行加密保護;被保護數(shù)據(jù)從虛擬磁盤讀出時,安全芯片用隨機數(shù)密鑰衍生密鑰對讀出的數(shù)據(jù)進行解密。
8.根據(jù)權利要求1所述的計算機數(shù)據(jù)保護方法,其特征在于,步驟A所述的安全芯片安裝在計算機主板上。
全文摘要
本發(fā)明公開了一種計算機數(shù)據(jù)保護方法,包括以下步驟a.預先在計算機上安裝一個安全芯片;b.在計算機硬盤上設置一個用于存放保護數(shù)據(jù)的虛擬磁盤,并使用安全芯片生成密鑰加密虛擬磁盤;c.在從虛擬磁盤讀取或者向虛擬磁盤寫入計算機數(shù)據(jù)時,根據(jù)所述密鑰解密虛擬磁盤,然后對虛擬磁盤進行計算機數(shù)據(jù)讀寫操作。應用本發(fā)明的計算機數(shù)據(jù)保護方法,計算機數(shù)據(jù)可得到更安全、更方便的保護。
文檔編號G06F12/14GK1553347SQ03136320
公開日2004年12月8日 申請日期2003年5月28日 優(yōu)先權日2003年5月28日
發(fā)明者王一平, 劉昕, 吳秋新, 李明柱, 李亞輝, 劉冰 申請人:聯(lián)想(北京)有限公司