專利名稱:數(shù)據(jù)處理系統(tǒng)、密碼管理方法及數(shù)據(jù)讀取與寫入方法
技術(shù)領域:
本發(fā)明有關(guān)于一種數(shù)據(jù)處理系統(tǒng)以及相關(guān)數(shù)據(jù)處理方法, 特別是有關(guān)于一種與具有虛擬磁盤的數(shù)據(jù)處理系統(tǒng)相關(guān)的數(shù)據(jù) 處理以及密碼管理方法。
背景技術(shù):
一般而言,虛擬磁盤技術(shù),即通過虛擬化技術(shù),將計算機 系統(tǒng)上的普通文件或文件虛擬成計算機系統(tǒng)的一個磁盤裝置供 使用者使用。其中,這個被虛擬化的文件亦可稱之為映像文件。 通常為了數(shù)據(jù)安全以及保護的目的,磁盤中的數(shù)據(jù)都要加密存 放在映像文件中,因此使用者欲讀取的時候需要進行解密。當 合法使用者通過虛擬磁盤管理系統(tǒng)的校驗后,系統(tǒng)便允許使用 者對虛擬磁盤進行讀寫操作。
讀寫操作即伴隨著數(shù)據(jù)在映像文件中的加解密。加解密的
過程即選定特定的加解密算法,通過提供特定的密鑰,利用加 解密算法對原始數(shù)據(jù)(明文)/加密數(shù)據(jù)(密文)進行加解密運算, 從而產(chǎn)生出密文/明文的過程。所以當加解密算法公開的情況 下,密鑰的選定、保存和恢復是被加密數(shù)據(jù)能否安全保存以及 合法使用者能否正確恢復出被加密數(shù)據(jù)的關(guān)鍵。
在虛擬磁盤中,使用密碼來校驗使用者合法性,并且使用 密鑰來加解密虛擬磁盤中的數(shù)據(jù)。通過外接的數(shù)據(jù)庫或者安全 移動裝置(例如移動電話或個人數(shù)字助理)保存使用者的密鑰為 目前電子商務中常使用的方法之一,當使用者登入的時候,必 須連接數(shù)據(jù)庫或者安全移動裝置并讀取其中的密鑰,再利用密 鑰進行讀寫操作。由于密鑰與虛擬磁盤分開放置, 一般可提供較佳的安全保護。然而,這樣的方法需要額外的硬件裝置,成 本較高且硬件裝置的維護并不容易。
另 一種方式為通過合法使用者密碼即時產(chǎn)生密鑰的方法, 當使用者使用合法密碼登入成功后,再通過加密函數(shù)(例如雜湊 函數(shù))作用于合法密碼產(chǎn)生密鑰,以供使用者讀寫虛擬磁盤的數(shù) 據(jù)。然而,這種方法于修改密碼時,需要解密使用者的所有數(shù) 據(jù),并使用新密鑰對所有數(shù)據(jù)進行重新加密,造成大量的加解 密運算,因此修改速度較慢,并不實用。此外,使用此法也無 法提供密碼重獲功能,無法于密碼遺失時且沒有備份的情況下 恢復密碼。
發(fā)明內(nèi)容
本發(fā)明為 一 種用于管理虛擬磁盤的數(shù)據(jù)處理方法以及相關(guān) 的數(shù)據(jù)處理系統(tǒng),以解決上述無法快速進行密碼修改以及密碼 無法恢復的問題。
本發(fā)明所述的數(shù)據(jù)讀取方法,用以讀耳又一虛擬磁盤中的加
密數(shù)據(jù),包括下列步驟首先,接收一密碼輸入以及一讀取要 求。其次,依據(jù)讀取要求,由虛擬磁盤中讀出一映像文件,其 中映像文件具有 一 加密數(shù)據(jù)、 一 密碼校驗串以及 一 第 一 加密文 件。接著,依據(jù)密碼輸入以及密碼校驗串,判斷是否解密加密 數(shù)據(jù),若是,則利用密碼輸入,產(chǎn)生一中間密鑰。之后,利用 中間密鑰以及第一加密文件,得到加密數(shù)據(jù)對應的一隨機密鑰, 并利用隨機密鑰解密加密數(shù)據(jù)以讀取加密數(shù)據(jù)中的原始數(shù)據(jù)。
本發(fā)明所述的數(shù)據(jù)處理系統(tǒng),包括 一 處理單元以及 一 虛擬 磁盤。虛擬》茲盤耦接至處理單元,虛擬》茲盤具有一映像文件, 且該映像文件具有一加密數(shù)據(jù)、 一密碼校驗串以及一第一加密 文件。其中,處理單元接收一密碼輸入以及一讀取要求,依據(jù)讀取要求,由虛擬/磁盤中讀出一映^象文件,依據(jù)密碼輸入以及 密碼校驗串,判斷是否解密加密數(shù)據(jù),若是,則利用密碼輸入, 產(chǎn)生一中間密鑰,并利用中間密鑰以及第一加密文件,得到加 密數(shù)據(jù)對應的一隨機密鑰,隨后利用隨機密鑰解密加密數(shù)據(jù)以 讀取加密數(shù)據(jù)中的原始數(shù)據(jù),其中密碼校驗串以及第 一加密文 件與登入用的一原始密碼相關(guān)。
本發(fā)明所述的數(shù)據(jù)寫入方法,用以將數(shù)據(jù)寫入至一虛擬磁
盤,包括下列步驟4妄收一密碼輸入以及一寫入要求;依據(jù)寫
入要求,擷耳又虛擬;茲盤中的一映像文件,其中映^象文件具有一
加密數(shù)據(jù)、 一密碼校驗串以及一第一加密文件;依據(jù)密碼輸入 以及密碼校驗串,判斷是否將一輸入數(shù)據(jù)寫入至加密數(shù)據(jù);若 是,則利用密碼輸入,產(chǎn)生一第一密鑰;以及利用第一密鑰以 及第一加密文件,得到加密數(shù)據(jù)對應的一第二密鑰,并利用第 二密鑰加密輸入數(shù)據(jù)以寫入至加密數(shù)據(jù)中。
本發(fā)明所述的密碼管理方法,用以管理一虛擬磁盤的密碼, 包括下列步驟接收一密碼修改要求、 一密碼輸入以及一新密 碼輸入;依據(jù)密碼修改要求,擷取虛擬》茲盤中的一映像文件, 其中映像文件具有 一加密數(shù)據(jù)、 一 密碼校驗串以及一 第 一加密 文件;依據(jù)密碼輸入以及密碼校驗串,判斷是否啟動一密碼修 改程序;若是,則利用密碼輸入,產(chǎn)生一第一密鑰;利用該第 一密鑰以及該第 一加密文件,得到加密數(shù)據(jù)對應的 一 第二密鑰; 利用新密碼輸入產(chǎn)生一新密碼校驗串以及一第三密鑰;利用新 密碼校驗串取代密碼校驗串,并以該第三密鑰產(chǎn)生一第三加密 文件,以第三機密文件取代第一加密文件。其中,加密數(shù)據(jù)以 第二密鑰進行加密。
本發(fā)明可提供更高的數(shù)據(jù)可靠性,并可解決現(xiàn)有映像文件 無法恢復密碼的問題。
圖1A顯示一依據(jù)本發(fā)明實施例的數(shù)據(jù)處理系統(tǒng)的示意圖。
圖1B顯示一依據(jù)本發(fā)明實施例的映4象文件的示意圖。
圖2顯示 一依據(jù)本發(fā)明實施例的建立虛擬磁盤方法的流程圖。
圖3顯示一依據(jù)本發(fā)明實施例的數(shù)據(jù)讀取方法的流程圖。 圖4顯示一依據(jù)本發(fā)明實施例的數(shù)據(jù)寫入方法的流程圖。 圖5顯示一依據(jù)本發(fā)明實施例的密碼修改方法的流程圖。 圖6顯示一依據(jù)本發(fā)明實施例的密碼重獲方法的流程圖。
具體實施例方式
為使本發(fā)明的上述和其他目的、特征和優(yōu)點能更明顯易懂, 下文特舉出較佳實施例,并配合所附圖式,作詳細說明如下。
本發(fā)明的實施例是關(guān)于虛擬磁盤的數(shù)據(jù)處理方法、密碼管 理方法及相關(guān)的數(shù)據(jù)處理系統(tǒng),利用 一隨機密鑰來當作加解密 用的密鑰保護虛擬磁盤中的數(shù)據(jù),并利用登入用的原始密碼產(chǎn) 生一中間密鑰保護此隨機密鑰,可確保加解密用的密鑰的安全 性并提供快速修改密碼的功能,也提供了密碼重獲功能。
圖1A顯示一依據(jù)本發(fā)明實施例的數(shù)據(jù)處理系統(tǒng)100。數(shù)據(jù) 處理系統(tǒng)100(例如一個人計算機或可攜式電子裝置)中至少包 括一處理單元110、 一虛擬磁盤120、 一顯示單元130、 一輸入單 元140以及一隨才幾數(shù)產(chǎn)生單元150,其中處理單元110分別耦4妾至 虛擬》茲盤120、顯示單元130、輸入單元140以及隨機數(shù)產(chǎn)生單元 l50。隨機數(shù)產(chǎn)生單元1S0用以產(chǎn)生一隨機密鑰(random key)或一 隨機碼,用以對虛擬《茲盤120中的數(shù)據(jù)進行加解密或用以產(chǎn)生新 的密碼。顯示單元130例如一液晶顯示屏幕(LCD)用以顯示一使 用者界面、相關(guān)畫面或執(zhí)行結(jié)果,供使用者與數(shù)據(jù)處理系統(tǒng)IOO進行交互。于本實施例中,顯示單元130可用以顯示密碼相關(guān)問 題,而使用者可通過輸入單元140(例如4建盤或鼠標),輸入密碼 相關(guān)問題的答案,以用于后續(xù)的密碼重獲程序。使用者亦可通 過輸入單元140輸入一要求,例如一讀取/寫入虛擬,茲盤的要求 或者一密碼修改或重獲要求。處理單元110可接收使用者輸入的 這些要求,并纟丸4于一對應的程序或方法以回應該項要求。舉例 來說,當接收一讀取或?qū)懭胩摂M磁盤120的要求時,處理單元IIO 執(zhí)行一讀耳又或?qū)懭胩摂Mi茲盤程序,分別用以讀出虛擬磁盤120 中的數(shù)據(jù)或?qū)?shù)據(jù)寫入至虛擬磁盤120中。當接收一密碼修改要 求時,處理單元110^丸行一密碼修改程序,用以修改登入用的原 始密碼,而當接收一密碼重獲要求時,處理單元110執(zhí)行一密碼 重獲程序,用以于使用者遺失密碼后,提供一認證機制,若為 合法使用者時,可通過密碼重獲程序,重新獲得一個新的密碼 并自動更新虛擬-磁盤120中對應的數(shù)據(jù)。
虛擬磁盤120中具有一映像文件122。 一4殳而言,虛擬磁盤 120儲存在一實體儲存裝置(未圖示)(例如硬盤或非易失性存儲 器)中,可為實體儲存裝置的部分或全部儲存空間。映像文件122 中則包含了加密過的數(shù)據(jù)以及認證相關(guān)數(shù)據(jù),例如原始密碼校 驗串、加密數(shù)據(jù)、密碼相關(guān)問題以及對應的答案校驗串、第一 加密文件以及第二加密文件等等。
圖1B顯示一依據(jù)本發(fā)明實施例的映像文件122的示意圖。 如圖1B所示,映像文件122中包括了原始密碼校驗串、加密數(shù) 據(jù)、密碼相關(guān)問題以及對應的答案校驗串、第一加密文件以及 第二加密文件。其中,原始密碼校驗串與一使用者用以登入的 原始密碼相關(guān),用以驗證該使用者是否為合法者。密碼相關(guān)問 題由使用者自行產(chǎn)生并輸入,例如使用者的個人資料(生日、年 齡)或個人化資料(例如特定喜好問題)等等。答案校驗串與密碼相關(guān)問題對應的答案相關(guān)。第 一加密文件以及第二加密文件則 分別與原始密碼以及密碼相關(guān)問題對應的答案相關(guān),用以保護
用來加解密虛擬磁盤120的映像文件122中的數(shù)據(jù)的隨機密鑰。 關(guān)于如何建立虛擬》茲盤120以及產(chǎn)生映〗象文件122的過程將說明 如下。
圖2顯示 一依據(jù)本發(fā)明實施例的建立虛擬磁盤方法的流程 圖,可由處理單元110所執(zhí)行。當使用者糸欠建立一虛擬/磁盤時, 下達一建立虛擬^茲盤要求給數(shù)據(jù)處理系統(tǒng)IOO,于是處理單元 110將接收此建立虛擬》茲盤要求。如步驟S202,處理單元110接 收使用者輸入的一原始密碼、N個密碼相關(guān)問題以及對應的答 案,其中N大于1。 4妄著,如步驟S204,處理單元110利用隨枳j 數(shù)產(chǎn)生單元150隨機產(chǎn)生一加解密用的隨機密鑰。如步驟S206, 處理單元110利用第一加密函數(shù)以及原始密碼,產(chǎn)生一原始密碼 校驗串。其中,第一加密函數(shù)可為任何常見的加密函數(shù),例 如一第一雜湊函數(shù)(hash function)。例如,處理單元110可利用 第 一 雜湊函數(shù)計算原始密碼,得到 一 個固定長度(例如12 8位或 256位)的雜湊值,并將計算出的雜湊值設為原始密碼校驗串。 換言之,原始密碼校驗串即為與原始密碼相關(guān)的固定長度的雜 湊值,例如一128位或256位的雜湊值。 一般而言,雜湊值由一 序列數(shù)據(jù)計算出的固定長度數(shù)值,可用于驗證通過非安全通道 傳送的數(shù)據(jù)整合性。通過比較接收到數(shù)據(jù)和傳送出數(shù)據(jù)的雜湊 值,可判斷數(shù)據(jù)是否已變更。
如步驟S208,處理單元110利用第二加密函數(shù)以及原始密 碼,產(chǎn)生一中間密鑰。其中,第二加密函數(shù)可為任何常見但與 第一加密函數(shù)不可互相推導的加密函數(shù),例如與第 一雜湊函數(shù) 不同的一第二雜湊函數(shù)。類似地,處理單元110可利用第二雜湊 函數(shù)計算原始密碼,得到另 一 個固定長度(例如12 8位或2 5 6位)的雜湊值,并將計算出的雜湊值設為中間密鑰。換言之,中間
密鑰即為與原始密碼相關(guān)的固定長度的雜湊值,例如一 128位或256位的雜湊值。
接著,如步驟S210,處理單元110利用步驟S208產(chǎn)生的中間密鑰以及一選定的預設加密演算法,加密隨機密鑰,得到一第一加密文件。舉例來說,處理單元110可通過預設加密演算法并以中間密鑰當作加密用的密鑰用以加密隨機密鑰,加密后的結(jié)果即為第一加密文件。請注意,于本實施例中,預設的加密或解密演算法可為任何現(xiàn)有的加密或解密演算法,例如AES或SHA-256加解密演算法,且解密演算法與加密演算法對應。舉例來說,若加密時采用SHA-256相關(guān)的加密演算法對數(shù)據(jù)進行加密,解密時便必須采用SHA-256相關(guān)的解密演算法以對數(shù)據(jù)進行解密。
如步驟S212,處理單元110利用N個密碼相關(guān)問題及其對應的答案以及第一加密函數(shù),產(chǎn)生N個對應的答案校驗串。舉例來說,當N為10時,表示有10個密碼相關(guān)問題,則處理單元IIO可分別利用第 一 加密函數(shù)計算每 一 個密碼相關(guān)問題對應的答案以得到10個對應的答案校驗串。
如步驟S214,處理單元110接著利用N個對應的答案以及第二加密函數(shù),產(chǎn)生一答案密鑰。舉例來說,處理單元110可將N個對應的答案所對應的字串依序串接,產(chǎn)生一與答案相關(guān)的合并字串,再利用第二加密函數(shù)計算合并字串,得到一雜湊值,并將計算出的雜湊值設為答案密鑰。
之后,如步驟S216,利用答案密鑰以及加密演算法,加密隨機密鑰,得到一第二加密文件,并如步驟S218,將原始數(shù)據(jù)以隨機密鑰加密后,產(chǎn)生一加密數(shù)據(jù)。舉例來說,處理單元110可通過預設加密演算法并以答案密鑰當作加密用的密鑰用以加密隨機密鑰,加密后的結(jié)果即為第二加密文件。
最后,如步驟S220,處理單元110建立虛擬石茲盤(區(qū))120,并將產(chǎn)生的原始密碼校驗串、N個密碼相關(guān)問題以及對應的答案校驗串、加密數(shù)據(jù)、第一加密文件以及第二加密文件儲存在虛擬磁盤120的一映像文件122中。
于本發(fā)明實施例中,當使用者欲對虛擬》茲盤120進行讀取或?qū)懭氩僮鲿r,即欲對映像文件122進行讀取或?qū)懭氩僮鳌?br>
圖3顯示一依據(jù)本發(fā)明實施例的數(shù)據(jù)讀取方法的流程圖,可由處理單元110所才丸行。首先,如步驟S302,處理單元110接收使用者的一密碼輸入以及一讀取要求。如步驟S304,處理單元IIO依據(jù)讀取要求,由虛擬磁盤120中讀出映像文件122。接著,如步驟S306,處理單元110判斷是否允許讀取要求并解密加密數(shù)據(jù)。處理單元110可利用第一加密函數(shù)計算密碼輸入,得到密碼輸入對應的密碼輸入校驗串,再比較密碼輸入校驗串與原始密碼校驗串是否相符合,若相符合(步驟S306的"是"),表示密碼輸入即為原始密碼,便決定解密加密數(shù)據(jù),繼續(xù)后續(xù)的解密步驟;反之,若兩者不符合(步驟S306的"否,,),表示可能為非法使用者,則不允許讀取要求且決定不解密加密數(shù)據(jù),并結(jié)束流禾呈。
若決定解密加密數(shù)據(jù)(步驟S306的"是"),如步驟S308,處理單元110便利用密碼輸入,產(chǎn)生一中間密鑰(第一密鑰)。類似地,處理單元110可利用第二加密函數(shù)(例如第二雜湊函數(shù))計算密碼輸入,得到 一 個固定長度(例如128位或256位)的雜湊值,并將計算出的雜湊值設為中間密鑰。接著,如步驟S310,處理
單元110再利用中間密鑰以及第 一 加密文件,得到加密數(shù)據(jù)對應的一隨機密鑰(第二密鑰)。處理單元110可利用中間密鑰以及預設解密演算法,解密第一加密文件,得到隨機密鑰。舉例來說,處理單元110可通過預設解密演算法并以中間密鑰當作解密用
的密鑰用以解密第一加密文件,解密后的結(jié)果即為隨機密鑰。
解出隨機密鑰后,如步驟S312,處理單元110便可利用隨機密鑰解密加密數(shù)據(jù)以讀取加密數(shù)據(jù)中的原始數(shù)據(jù)。由于加密數(shù)據(jù)由原始數(shù)據(jù)通過隨機密鑰加密而得到,因此可利用隨機密鑰當作解密用的密鑰解密加密數(shù)據(jù),解出原始數(shù)據(jù),再讀出原始數(shù)據(jù)給使用者。
值得注意的是,于以下實施例中,第一加密函數(shù)以及第二加密函數(shù)的選取以及產(chǎn)生/得到隨機密鑰或中間密鑰的方式與前述虛擬萬茲盤建立程序或虛擬f茲盤讀耳又程序中的方式相似,因此相關(guān)細節(jié)不再贅述。
圖4顯示一依據(jù)本發(fā)明實施例的數(shù)據(jù)寫入方法的流程圖,可由處理單元110所4丸行。如圖4所示,如步驟S402,處理單元IIO接收一密碼輸入以及一寫入要求,接著,如步驟S404,依據(jù)寫入要求,擷取虛擬磁盤120中的映像文件122。隨后,如步驟S406,處理單元110判斷是否將一輸入數(shù)據(jù)寫入至加密數(shù)據(jù)。類似地,處理單元110可利用第一加密函數(shù)計算密碼輸入,得到密碼輸入對應的密碼輸入校驗串,再比較密碼輸入校驗串與原
始密碼校驗串是否相符合,若相符合(步驟S406的"是"),表示密碼輸入即為原始密碼,便決定允許寫入要求,并決定將輸入數(shù)據(jù)寫入至加密數(shù)據(jù),繼續(xù)后續(xù)的解密步驟;反之,若兩者不符合(步驟S406的"否"),表示可能為非法使用者,則不允許寫入要求且決定不將輸入數(shù)據(jù)寫入至加密數(shù)據(jù),并結(jié)束流程。
若決定將輸入數(shù)據(jù)寫入至加密數(shù)據(jù)(步驟S406的"是"),如步驟S408,處理單元110便利用密碼輸入,產(chǎn)生一中間密鑰(第一密鑰)。類似地,處理單元110可利用第二加密函數(shù)計算密碼輸入,得到一個固定長度的雜湊值,并將計算出的雜湊值設為中間密鑰。接著,如步驟S410,處理單元110再利用中間密鑰以及第 一加密文件,得到加密數(shù)據(jù)對應的 一 隨機密鑰(第二密鑰)。舉例來說,處理單元110可通過預設解密演算法并以中間密鑰當作解密用的密鑰用以解密第一加密文件,解密后的結(jié)果即為隨機密鑰。解出隨機密鑰后,如步驟S412,處理單元IIO便可利用隨機密鑰加密輸入數(shù)據(jù),并將加密后的輸入數(shù)據(jù)寫入至加密^:據(jù)中。
此外,本發(fā)明更提供密碼管理方法,用以管理與虛擬磁盤存取相關(guān)的密碼,以修改或重獲密碼。
于一實施例中,本發(fā)明提供一種密碼修改方法,使得使用者可以更新登入用的密碼,并以新的密碼取代原始密碼。
圖5顯示一依據(jù)本發(fā)明實施例的密碼修改方法的流程圖,可由處理單元110所才丸行。
如圖5所示,如步驟S502,處理單元110接收一密碼修改要求、 一原始密碼輸入以及一新密碼輸入。4妄著,如步驟S504,處理單元110依據(jù)密碼修改要求,擷耳又虛擬^茲盤120中的映〗象文件122。如步驟S506,處理單元110判斷是否啟動一密碼修改程序。若否,結(jié)束流程;若是,如步驟S508,處理單元110利用原始密碼輸入,產(chǎn)生一中間密鑰(第一密鑰)。類似地,處理單元110可利用第 一加密函數(shù)計算原始密碼輸入,得到原始密碼輸入對應的密碼輸入校驗串,再比較密碼輸入校驗串與原始密碼校驗串是否相符合,若相符合(步驟S506的"是"),表示密碼輸入即為原始密碼,便決定啟動密碼修改程序,繼續(xù)后續(xù)的解密步驟;反之,若兩者不符合(步驟S506的"否"),表示可能為非法使用者,則不啟動密碼修改程序,并結(jié)束流程。
當產(chǎn)生中間密鑰后,接著,如步驟S510,處理單元110利用中間密鑰以及第一加密文件,得到加密數(shù)據(jù)對應的一隨機密鑰(第二密鑰),并如步驟S512,再利用新密碼輸入以及第一加密函數(shù),產(chǎn)生一新密碼校驗串。舉例來說,處理單元110可通過預設解密演算法并以中間密鑰當作解密用的密鑰用以解密第一加密文件,解密后的結(jié)果即為隨機密鑰。
接著,如步驟S514,處理單元110利用新密碼輸入以及第二加密函數(shù),產(chǎn)生一新中間密鑰(第三密鑰),并如步驟S516,利用新中間密鑰以及加密演算法,加密隨機密鑰,得到一第三加密文件。最后,如步驟S518,處理單元110分別以新密碼才交驗串以及第三加密文件取代原始密碼4交-驗串以及第 一加密文件,完成密碼修改程序。于是,使用者便可以新密碼進行虛擬磁盤的登入及讀寫操作。
相較于現(xiàn)有加解密虛擬磁盤的方法,于進行密碼修改時,依據(jù)本發(fā)明的密碼修改方法僅需更動部分的數(shù)據(jù),不用對已加密數(shù)據(jù)進行全部解密后再以新密碼重新加密,可節(jié)省大量的處理時間并大幅增加虛擬》茲盤的^f吏用效能。
此外,于另一實施例中,本發(fā)明亦提供一種密碼重獲方法,使得使用者可以于密碼遺失時,重新獲得新的密碼以登入及讀取虛擬f茲盤。
圖6顯示 一依據(jù)本發(fā)明實施例的密碼重獲方法的流程圖,可由處理單元110所執(zhí)行。
首先,如步驟S602,處理單元110接收一密碼重獲要求。于是,如步驟S604,處理單元110依據(jù)密碼重獲要求,啟動一密碼重獲程序并擷取虛擬磁盤120中的映像文件122。接著,如步驟S606,處理單元110依序顯示儲存在映像文件122中的N個密碼相關(guān)問題。舉例來說,處理單元110可將映像文件122中卡者存的N個密碼相關(guān)問題依序顯示在顯示單元130上,并提示使用者輸入對應的答案。使用者可通過輸入單元140輸入與N個密碼相關(guān)問題對應的答案。接著,如步驟S608,處理單元110接收N個密碼相關(guān)問題對應的N個答案輸入,再如步驟S610,利用第一加密函數(shù)以及N個答案輸入,產(chǎn)生N個對應的答案輸入校驗串。舉例來說,當N為10時,表示有10個密碼相關(guān)問題,則處理單元110可分別利用第 一加密函數(shù)計算每一個密碼相關(guān)問題對應的答案輸入以得到10個對應的答案輸入校驗串。
接著,如步驟S612,處理單元110比4交N個對應的答案輸入校驗串是否皆與N個答案校驗串相符。若發(fā)現(xiàn)有任何一個問題對應的答案輸入校驗串與其對應的答案校驗串不符合時(步驟S612的"否"),便結(jié)束流程。若所有問題對應的答案輸入校驗串與其對應的答案校驗串皆符合時(步驟S612的"是"),表示應為合法使用者,應該允許使用者重獲虛擬磁盤密碼。于是,如步驟S614,處理單元110利用N個答案輸入以及第二加密函數(shù),產(chǎn)生一答案密鑰(第四密鑰),再如步驟S616,利用答案密鑰以及解密演算法,解密第二加密文件,得到隨機密鑰(第二密鑰)。舉例來i兌,處理單元110可將N個對應的答案輸入所對應的字串依序串接,產(chǎn)生一與答案相關(guān)的合并字串,再利用第二加密函數(shù)計算合并字串,得到一雜湊值,并將計算出的雜湊值設為答案密鑰,之后,通過預設解密演算法并以答案密鑰當作解密用的密鑰用以解密第二加密文件,解密后的結(jié)果即為隨機密鑰。
解出隨機密鑰后,如步驟S618,處理單元110利用隨機數(shù)產(chǎn)生單元150隨機產(chǎn)生一隨機碼作為新密碼。接著,如步驟S620,處理單元110利用新密碼以及第一加密函數(shù),產(chǎn)生一新密碼校驗串,并如步驟S622,利用新密碼以及第二加密函數(shù),產(chǎn)生一新中間密鑰(第五密鑰)。其次,如步驟S624,處理單元IIO再利用新中間密鑰以及加密演算法,加密隨機密鑰,得到一第四加密文件。請注意,步驟S620、 S622以及S624類似于步驟S206、 S208以及S210,故其細節(jié)不在此贅述。
最后,如步驟S626,處理單元110分別以新密碼校驗串以及第四加密文件耳又代原始密碼校驗串以及第 一加密文件,并如
步驟S628,提供新密碼給使用者,用以當作重獲密碼。于是,使用者 <更可以此新密碼進行登入及讀取虛擬 一磁盤。
因此,可以根據(jù)上述密碼重獲程序,提供虛擬磁盤密碼重獲功能,不僅可提供更高的數(shù)據(jù)可靠性,也解決現(xiàn)有映像文件無法恢復密碼的問題。
綜上所述,依據(jù)本發(fā)明的數(shù)據(jù)讀取或?qū)懭敕椒捌湎嚓P(guān)的數(shù)據(jù)處理系統(tǒng),可在本地端完成虛擬磁盤的密鑰管理,無須額外的數(shù)據(jù)庫或外接裝置,可提供更高的安全性且有效降低成本。此外,依據(jù)本發(fā)明的密碼管理方法,也可提供更快速的密碼修改功能以及密碼重獲功能,使得使用上更為方便。
上述說明提供多種不同實施例或應用本發(fā)明的不同方法。實例中的特定裝置以及方法用以幫助闡釋本發(fā)明的主要精神及目的,當然本發(fā)明不限于此。
以上所述僅為本發(fā)明較佳實施例,然其并非用以限定本發(fā)明的范圍,任何熟悉本項技術(shù)的人員,在不脫離本發(fā)明的精神和范圍內(nèi),可在此基礎上做進一步的改進和變化,因此本發(fā)明的保護范圍當以本申請的權(quán)利要求書所界定的范圍為準。
附圖中符號的簡單說明如下
100數(shù)據(jù)處理系統(tǒng)
110:處理單元
120,虛擬磁盤
122. 映像文件
130顯示單元140:輸入單元 150:隨機數(shù)產(chǎn)生單元 S202-S220:步驟 S302-S312:步驟 S402-S412:步驟 S502-S518:步驟 S602-S628:步驟。
權(quán)利要求
1.一種數(shù)據(jù)讀取方法,其特征在于,用以讀取一虛擬磁盤中的加密數(shù)據(jù),該數(shù)據(jù)讀取方法包括下列步驟接收一密碼輸入以及一讀取要求;依據(jù)該讀取要求,由該虛擬磁盤中讀出一映像文件,其中該映像文件具有一加密數(shù)據(jù)、一密碼校驗串以及一第一加密文件;依據(jù)該密碼輸入以及該密碼校驗串,判斷是否解密該加密數(shù)據(jù);若是,則利用該密碼輸入,產(chǎn)生一中間密鑰;以及利用該中間密鑰以及該第一加密文件,得到該加密數(shù)據(jù)對應的一隨機密鑰,并利用該隨機密鑰解密該加密數(shù)據(jù)以讀取該加密數(shù)據(jù)中的原始數(shù)據(jù)。
2. 根據(jù)權(quán)利要求l所述的數(shù)據(jù)讀取方法,其特征在于,該 映像文件還具有與密碼相關(guān)的多個問題及所述問題對應的多個 答案校驗串,以及與所述問題對應的答案相關(guān)的一第二加密文 件。
3. 根據(jù)權(quán)利要求2所述的數(shù)據(jù)讀取方法,其特征在于,該 數(shù)據(jù)讀取方法還包括接收一密碼重獲要求以及對應所述問題的多個答案輸入; 依據(jù)所述答案輸入以及所述答案校驗串,判斷是否啟動一密碼重獲程序;若是,則利用所述答案輸入,產(chǎn)生一答案密鑰;以及 利用該答案密鑰以及該第二加密文件,得到該隨機密鑰,并利用該隨機密鑰產(chǎn)生一重獲密碼以更新與該密碼校驗串相關(guān)的一原始密碼。
4. 根據(jù)權(quán)利要求l所述的數(shù)據(jù)讀取方法,其特征在于,該 判斷是否解密該加密數(shù)據(jù)的步驟還包括利用該密碼輸入以及一第一加密函數(shù),產(chǎn)生一密碼輸入校驗串;以及將該密碼輸入校驗串與該密碼校驗串進行比較,若該密碼 輸入校驗串與該密碼校驗串相符合,則決定解密該加密數(shù)據(jù)。
5. 根據(jù)權(quán)利要求4所述的數(shù)據(jù)讀取方法,其特征在于,該 利用該密碼輸入產(chǎn)生該中間密鑰的步驟還包括利用該密碼輸入以及一第二加密函凄史,產(chǎn)生該中間密鑰, 其中該第二加密函數(shù)與該第一加密函數(shù)不同。
6. 根據(jù)權(quán)利要求5所述的數(shù)據(jù)讀取方法,其特征在于,該 得到該加密數(shù)據(jù)對應的該隨機密鑰的步驟還包括通過該中間密鑰解密該第一加密文件,以得到該隨才幾密鑰。
7. 根據(jù)權(quán)利要求5所述的數(shù)據(jù)讀取方法,其特征在于,該 第 一加密函數(shù)與該第二加密函數(shù)為雜湊函數(shù)。
8. 根據(jù)權(quán)利要求5所述的數(shù)據(jù)讀取方法,其特征在于,該 密碼校驗串是利用該第 一加密函數(shù)加密 一原始密碼而產(chǎn)生。
9. 根據(jù)權(quán)利要求5所述的數(shù)據(jù)讀取方法,其特征在于,該 隨機密鑰是隨機產(chǎn)生的 一 隨機數(shù)碼。
10. 根據(jù)權(quán)利要求l所述的數(shù)據(jù)讀取方法,其特征在于,該 數(shù)據(jù)讀取方法還包括接收 一 密碼修改要求、該密碼輸入以及 一 新密碼輸入; 依據(jù)該密碼輸入以及該密碼校驗串,判斷是否啟動一密碼 修改程序;若是,則利用該新密碼輸入產(chǎn)生 一 新密碼校驗串以及 一 第 三密鑰;利用該新密碼校驗串取代該密碼校驗串,并以該第三密鑰 產(chǎn)生 一 第三加密文件,以該第三加密文件取代該第 一加密文件。
11. 一種數(shù)據(jù)處理系統(tǒng),其特征在于,該數(shù)據(jù)處理系統(tǒng)包括一處理單元;以及一虛擬磁盤,耦接至該處理單元,該虛擬磁盤具有一映像 文件,且該映像文件具有一加密數(shù)據(jù)、 一密碼校驗串以及一第 一加密文件;其中該處理單元接收一密碼輸入以及一讀取要求,依據(jù)該 讀取要求由該虛擬萬茲盤中讀出 一 映<象文件,依據(jù)該密碼輸入以及該密碼校驗串,判斷是否解密該加密數(shù)據(jù),以及若是,則利 用該密碼輸入產(chǎn)生一中間密鑰,并利用該中間密鑰以及該第一 加密文件,得到該加密數(shù)據(jù)對應的一隨機密鑰,隨后利用該隨 機密鑰解密該加密數(shù)據(jù)以讀取該加密數(shù)據(jù)中的原始數(shù)據(jù),其中 該密碼校驗串以及該第一加密文件與登入用的一原始密碼相 關(guān)。
12. 根據(jù)權(quán)利要求ll所述的數(shù)據(jù)處理系統(tǒng),其特征在于, 該數(shù)據(jù)處理系統(tǒng)還包括一隨機數(shù)產(chǎn)生單元,耦接至該處理單元, 用以產(chǎn)生該隨機密鑰。
13. —種數(shù)據(jù)寫入方法,其特征在于,用以將數(shù)據(jù)寫入至 一虛擬磁盤,該數(shù)據(jù)寫入方法包括下列步驟接收一密碼輸入以及一寫入要求;依據(jù)該寫入要求,擷取該虛擬,茲盤中的一映^象文件,其中 該映4象文件具有一加密it據(jù)、 一密碼才t-驗串以及一第一加密文 件;依據(jù)該密碼輸入以及該密碼校驗串,判斷是否將一輸入數(shù)據(jù)寫入至該加密數(shù)據(jù);若是,則利用該密碼輸入,產(chǎn)生一第一密鑰;以及利用該第 一 密鑰以及該第 一加密文件,得到該加密數(shù)據(jù)對應的一第二密鑰,并利用該第二密鑰加密該輸入數(shù)據(jù)以寫入至該加密數(shù)據(jù)中。
14. 一種密碼管理方法,其特征在于,用以管理一虛擬磁 盤的密碼,該密碼管理方法包括下列步驟接收 一 密碼修改要求、 一 密碼輸入以及 一 新密碼輸入; 依據(jù)該密碼^奮改要求,擷耳又該虛擬石茲盤中的一映4象文件,其中該映^象文件具有一加密數(shù)據(jù)、 一密碼校驗串以及一第一加密文件;依據(jù)該密碼輸入以及該密碼校驗串,判斷是否啟動一密碼 修改程序;若是,則利用該密碼輸入,產(chǎn)生一第一密鑰; 利用該第 一 密鑰以及該第 一加密文件,得到該加密數(shù)據(jù)對 應的一第二密鑰;利用該新密碼輸入產(chǎn)生 一新密碼校驗串以及一 第三密鑰; 利用該新密碼校驗串取代該密碼校驗串,并以該第三密鑰 產(chǎn)生 一第三加密文件,以該第三才幾密文件:取代該第 一加密文件, 其中該加密數(shù)據(jù)以該第二密鑰進行加密。
15. 根據(jù)權(quán)利要求14所述的密碼管理方法,其特征在于,該映像文件還具有與密碼相關(guān)的多個問題及所述問題對應的多個答案校驗串,以及與所述問題的答案相關(guān)的 一第二加密文件,并且該密碼管理方法還包括接收一密碼重獲要求以及對應所述問題的多個答案輸入; 依據(jù)所述答案輸入以及所述答案校驗串,判斷是否啟動一密碼重獲程序;若是,則利用所述答案輸入,產(chǎn)生一第四密鑰;以及 利用該第四密鑰以及該第二加密文件,得到該第二密鑰,并利用該第二密鑰產(chǎn)生 一重獲密碼以更新與該密碼校驗串相關(guān)的一原始密碼。
16. 根據(jù)權(quán)利要求15所述的密碼管理方法,其特征在于, 該利用該密碼輸入產(chǎn)生該第 一 密鑰的步驟還包括利用該密碼輸入以及一第二加密函數(shù),產(chǎn)生該第一密鑰, 其中該第二加密函數(shù)與該第一加密函數(shù)不同。
17. 根據(jù)權(quán)利要求15所述的密碼管理方法,其特征在于, 該得到該加密數(shù)據(jù)對應的該第二密鑰的步驟還包括通過該第 一 密鑰解密該第 一加密文件,以得到該第二密鑰。
全文摘要
一種數(shù)據(jù)處理系統(tǒng)、密碼管理方法及數(shù)據(jù)讀取與寫入方法,其中,該數(shù)據(jù)讀取方法用以讀取一虛擬磁盤中的加密數(shù)據(jù),包括下列步驟首先,接收一密碼輸入以及一讀取要求,并依據(jù)讀取要求,由虛擬磁盤中讀出一映像文件。其中,映像文件具有一加密數(shù)據(jù)、一密碼校驗串以及一第一加密文件。其次,依據(jù)密碼輸入以及密碼校驗串,判斷是否解密加密數(shù)據(jù);若是,則利用密碼輸入,產(chǎn)生一中間密鑰。接著,利用中間密鑰以及第一加密文件,得到加密數(shù)據(jù)對應的一隨機密鑰,并利用隨機密鑰解密加密數(shù)據(jù)以讀取加密數(shù)據(jù)中的原始數(shù)據(jù)。本發(fā)明可提供更高的數(shù)據(jù)可靠性,并可解決現(xiàn)有映像文件無法恢復密碼的問題。
文檔編號G06F12/14GK101539890SQ200910136220
公開日2009年9月23日 申請日期2009年4月29日 優(yōu)先權(quán)日2009年4月29日
發(fā)明者吳光輝, 毅 周, 雪 崔 申請人:威盛電子股份有限公司