專利名稱:儲存媒體的數(shù)據(jù)加密裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種儲存媒體的數(shù)據(jù)加密裝置,尤指一種可避免密鑰遭直接竊取的儲存媒體的數(shù)據(jù)加密裝置。
背景技術(shù):
隨著半導(dǎo)體產(chǎn)業(yè)的快速演進,內(nèi)存的容量越來越大,但體積卻越來越小,使人們得容易地隨身攜帶大容量儲存媒體,而能達到將重要數(shù)據(jù)隨身攜帶,只要有計算機就能隨時讀取儲存媒體中的重要數(shù)據(jù),非常方便。然而,也因為儲存媒體的體積越做越小,使得人們在攜帶時,不慎遺失的可能性相對提高,一旦遺失的儲存媒體中存放有重要數(shù)據(jù),任何拾獲者皆可輕易地讀取儲存媒體中的重要數(shù)據(jù),因而容易發(fā)生機密外泄的問題。為此,目前有兩種針對儲存媒體中數(shù)據(jù)的加密方法。1.設(shè)定使用者密鑰儲存媒體中儲存有一密鑰查驗程序,其可于儲存媒體首次連接計算機時,讓使用者透過計算機輸入一使用者密鑰,并由該密鑰查驗程序?qū)⑹褂谜呙荑€儲存在儲存媒體中,爾后當儲存媒體再連接計算機時,使用者必須透過計算機輸入與儲存媒體中所儲存的使用者密鑰相符的密碼,方可順利存取該儲存媒體中的數(shù)據(jù),反之則不允許存取該儲存媒體中的數(shù)據(jù)。2.使用高級加密標準(Advanced Encryption Standard,簡稱AES) :AES是目前常見的加密標準,每個使用者都會預(yù)先設(shè)定一公用密鑰及一私人密鑰,該公用密鑰是用以執(zhí)行加密,而該私人密鑰則是用于執(zhí)行解密。當要將原始數(shù)據(jù)存入該儲存媒體時,原始數(shù)據(jù)由 AES加解密軟件或硬件利用公用密鑰將原始數(shù)據(jù)加密為已加密數(shù)據(jù)后,再存入該儲存媒體中;當欲自儲存媒體中讀取已加密數(shù)據(jù)時,則必須由AES加解密軟件或硬件以內(nèi)存的私人密鑰將已加密數(shù)據(jù)進行解密,方可讀出正確的原始數(shù)據(jù)。然而,無論是設(shè)定使用者密鑰或是使用AES,都是預(yù)先在密鑰查驗程序及加解密軟件或硬件中儲存使用者密鑰、公用密鑰及私人密鑰,因此存在著使用者密鑰、公用密鑰及私人密鑰遭直接自儲存媒體或加解密軟件或硬件上竊取的風險。是以,現(xiàn)有的儲存媒體數(shù)據(jù)加密裝置,尚有待檢討,并進一步謀求可行的改進方案。
發(fā)明內(nèi)容
為更提高儲存媒體數(shù)據(jù)加密等級,本發(fā)明的主要目的在提供一種儲存媒體的數(shù)據(jù)加密裝置,其可避免儲存媒體內(nèi)存的密鑰遭直接竊取。為達成前述目的所采取的主要技術(shù)手段是令前述儲存媒體的數(shù)據(jù)加密裝置包括一密鑰輸入接口,供使用者輸入以取得一使用者密鑰;一區(qū)塊加解密單元,供進行區(qū)塊編碼或譯碼;一隨機數(shù)加解密單元,連接該密鑰輸入接口,而依該使用者密鑰進行串行位隨機數(shù)編碼或譯碼;一控制單元,連接該區(qū)塊加解密單元和隨機數(shù)加解密單元,且儲存一加密程序及一解密程序,其中該加密程序當該控制單元取得一原始數(shù)據(jù)時,先將該原始數(shù)據(jù)傳送至該區(qū)塊加解密單元進行區(qū)塊編碼,再經(jīng)該隨機數(shù)加解密單元進行串行位隨機數(shù)編碼后輸出一已加密數(shù)據(jù),由該儲存媒體加以儲存;該解密程序當該控制單元自該儲存媒體取得一已加密數(shù)據(jù)時,先將該已加密數(shù)據(jù)傳送至該隨機數(shù)加解密單元串行位隨機數(shù)譯碼后,再經(jīng)該區(qū)塊加解密單元進行區(qū)塊譯碼,若解密程序進行時,該隨機數(shù)加解密單元所取得的使用者密鑰與加密程序時所取得者相同,始可將該已加密數(shù)據(jù)還原為原始數(shù)據(jù)后輸出。利用上述技術(shù)手段,由于本加密裝置毋須儲存使用者密鑰,每次加密或是解密均由使用者自行輸入使用者密鑰,輸入正確才能正確地將已加密數(shù)據(jù)轉(zhuǎn)換回原始數(shù)據(jù),而得以順利存取儲存媒體中數(shù)據(jù),反之雖仍可讀出儲存媒體中的數(shù)據(jù),但不同的使用者密鑰將導(dǎo)致讀出的數(shù)據(jù)無法順利解密還原為原始數(shù)據(jù),故讀出的數(shù)據(jù)僅是無用的亂碼。因此,本加密裝置可有效地達成數(shù)據(jù)加密,且因毋須儲存使用者密鑰而具有避免密鑰遭直接自加密裝置上竊取的功效。
圖1 是本發(fā)明一較佳實施例的實施暨應(yīng)用示意圖。圖2 是本發(fā)明另一較佳實施例的實施暨應(yīng)用示意圖。圖3 是本發(fā)明的功能方塊圖。圖4A 是本發(fā)明中一區(qū)塊加解密單元所儲存的一加密轉(zhuǎn)換表。圖4B 是本發(fā)明中一區(qū)塊加解密單元所儲存的一解密轉(zhuǎn)換表。圖5 是本發(fā)明中一隨機數(shù)加解密單元的電路圖。符號說明(1)數(shù)據(jù)加密裝置(2)可移除式儲存裝置(3)計算機(10)密鑰輸入接口(20)區(qū)塊加解密單元 (21)加密轉(zhuǎn)換表(22)解密轉(zhuǎn)換表(30)隨機數(shù)加解密單元(31)D正反器(311)D輸入端(312)觸發(fā)輸入端(313)Q輸出端(32)互斥或門(321)第一輸入端(322)第二輸入端(323)輸出端(40)控制單元
具體實施例方式本發(fā)明的數(shù)據(jù)加密裝置,是適用于任何儲存媒體,包括計算機中的硬盤機,或是常見的可移除式儲存裝置,例如隨身碟等,若該儲存媒體是計算機中的硬盤機,則具體地是由計算機中的中央處理器(CPU)與該硬盤機交換數(shù)據(jù),若該儲存媒體是可移除式儲存裝置, 則巨觀地是由計算機與該可移除式儲存裝置交換數(shù)據(jù),以下是以儲存媒體是可移除式儲存裝置作為舉例。如圖1所示,本發(fā)明的數(shù)據(jù)加密裝置(1)則可以軟件實現(xiàn),安裝于可移除式儲存裝置(2)的閃存中,以完成與一計算機(3)交換數(shù)據(jù)時的加解密工作,或如圖2所示, 以硬件實現(xiàn),而外接于一計算機(3)和該可移除式儲存裝置(2)之間,以完成數(shù)據(jù)的加解密
工作。
關(guān)于本發(fā)明的一較佳實施例,請參閱圖3所示,包括一密鑰輸入接口(10)、一區(qū)塊加解密單元(20)、一隨機數(shù)加解密單元(30)及一控制單元(40)。上述密鑰輸入接口(10)是供使用者輸入以取得一使用者密鑰;較佳地,該密鑰輸入接口(10)是為一顯示于儲存媒體所連接的計算機(3)的屏幕上的對話框或?qū)υ挻翱?,供使用者藉由操作計算機(3)以輸入使用者密鑰;又于本實施例中,該使用者密鑰是具有128 個位碼。上述區(qū)塊加解密單元(20)是供進行區(qū)塊編碼或譯碼;關(guān)于該區(qū)塊加解密單元 (20)的一較佳實施例,請進一步參閱圖4A及圖4B所示,該區(qū)塊加解密單元(20)是儲存有一加密轉(zhuǎn)換表(21)及一解密轉(zhuǎn)換表(22),其中該區(qū)塊加解密單元(20)將數(shù)據(jù)進行加密時,是先將欲加密數(shù)據(jù)區(qū)分為多個子數(shù)據(jù)區(qū)塊,接著再逐個將子數(shù)據(jù)區(qū)塊利用該加密轉(zhuǎn)換表(21)加密而輸出區(qū)塊加密數(shù)據(jù),例如,若數(shù)據(jù)是Oxab,則加密后的資料則是0x62 ;該區(qū)塊加解密單元(20)將數(shù)據(jù)進行解密時,是將欲解密數(shù)據(jù)區(qū)分為多個子數(shù)據(jù)區(qū)塊,接著再逐個將子數(shù)據(jù)區(qū)塊利用該解密轉(zhuǎn)換表(22)解密為原始數(shù)據(jù),例如,若加密后數(shù)據(jù)是0x62,則解密后資料為Oxab。上述隨機數(shù)加解密單元(30)是連接該密鑰輸入接口(10),而依該使用者密鑰進行串行位隨機數(shù)編碼或譯碼;請進一步參閱圖5所示,該隨機數(shù)加解密單元(30)是包括η個D正反器(D flip-flop) (31),其中η是對應(yīng)使用者密鑰的數(shù)據(jù)長度,各D正反器具有一 D輸入端(311)、一觸發(fā)輸入端(312)及一 Q輸出端(313),其中第1個D正反器(31)的D輸入端是連接該區(qū)塊加解密單元(20),并取得區(qū)塊加密數(shù)據(jù)或已加密數(shù)據(jù),所有D正反器(31)的觸發(fā)輸入端(312)是連接該密鑰輸入接口(10)以取得使用者密鑰中的對應(yīng)位碼,而第1個D正反器(31)的Q輸出端(313)是連接第2個D正反器(31)的D輸入端(311),以此類推,第η個D正反器(31)的D輸入端(311)是連接第η_1個D正反器 (31)的Q輸出端(313);于本實施例中,是對應(yīng)該使用者密鑰的數(shù)據(jù)長度而有128個D正反器(31),如此將可使編碼的復(fù)雜度達到2128種組合,將難以利用試誤法加以破解;m個互斥或(exclusive or,簡稱X0R)閘(32),其中m小于η,各XOR閘(32)是包括一第一輸入端(321)、一第二輸入端(322)及一輸出端(323),其中各XOR閘(32)的第一輸入端(321)是連接一對應(yīng)D正反器(31)的D輸入端(311),第1個XOR閘(32)的第二輸入端(322)是連接第2個XOR閘(32)的輸出端(323),以此類推,第m個XOR閘(32)的第二輸入端(322)則連接第η個D正反器(31)的Q輸出端(313),第1個XOR閘(32)的輸出端(323)是供輸出已加密數(shù)據(jù)或隨機數(shù)解密數(shù)據(jù);較佳地,該隨機數(shù)加解密單元(30)是具有3個XOR閘(32),其中第1個XOR閘(32)的第一輸入端(321)是連接第1個D正反器(31)的D輸入端(311),第2個XOR閘(32)的第一輸入端(321)是連接第3個D正反器 (31)的D輸入端(311),第3個XOR閘(32)的第一輸入端(321)是連接第20個D正反器 (31)的D輸入端(311)。如此一來,該隨機數(shù)加解密單元(30)即可根據(jù)使用者密鑰,對區(qū)塊加密數(shù)據(jù)逐個位地進行串行位隨機數(shù)編碼,以及對已加密數(shù)據(jù)逐個位地進行串行為元隨機數(shù)譯碼。上述控制單元(40)是連接該區(qū)塊加解密單元(20)和隨機數(shù)加解密單元(30), 且儲存有一加密程序,當該控制單元(40)自該計算機(3)取得一原始數(shù)據(jù)時,先將該原始數(shù)據(jù)傳送至該區(qū)塊加解密單元(20)進行區(qū)塊編碼而輸出該區(qū)塊加密數(shù)據(jù),再經(jīng)該隨機數(shù)加解密單元(30)進行串行位隨機數(shù)編碼后輸出該已加密數(shù)據(jù),由該可移除式儲存裝置(2) 加以儲存;及一解密程序,是當該控制單元(40)自該可移除式儲存裝置(2)取得一已加密數(shù)據(jù)時,先將該已加密數(shù)據(jù)傳送至該隨機數(shù)加解密單元(30)串行位隨機數(shù)譯碼而輸出該隨機數(shù)解密數(shù)據(jù),再經(jīng)該區(qū)塊加解密單元(20)進行區(qū)塊譯碼,若解密程序進行時所取得的使用者密鑰與加密程序時所取得者相同,該隨機數(shù)加解密單元(30)始可將該已加密數(shù)據(jù)還原為原始數(shù)據(jù)后由該計算機(3)讀取,反之該隨機數(shù)加解密單元(30)則無法將已加密數(shù)據(jù)還原為原始數(shù)據(jù);如此一來,雖該未還原為原始數(shù)據(jù)的已加密數(shù)據(jù)仍可由計算機(3)讀取,但因并未正確地將之還原為原始數(shù)據(jù),故計算機(3)將無法正確解讀并顯示。由上述可知,本發(fā)明的加密裝置(1)具有以下優(yōu)點1.根據(jù)前述說明,本發(fā)明的加密裝置(1)需要使用者于加密時及解密時輸入使用者密鑰,若解密時輸入的使用者密鑰與加密時所輸入的使用者密鑰不同,則無法正確地將已加密數(shù)據(jù)解密,因此,本發(fā)明的加密裝置(1)不需儲存使用者密鑰,也因此無使用者密鑰遭直接自本發(fā)明的加密裝置(1)上竊取的可能性。2.由于該區(qū)塊加解密單元(20)進行加、解密時,是以查表方式完成,故僅需2個頻率即可完成,而該隨機數(shù)加解密單元(30)則僅增加了多個D正反器(31)和幾個XOR閘 (32),且在執(zhí)行加、解密時亦僅增加稍許延遲,而不增加頻率,因此,本發(fā)明的加密裝置(1) 不但可快速地執(zhí)行加、解密,且在制造上,亦毋須增加過多的電路組件即可達成,故可具備力口、解密速度快及整體體積不增加的優(yōu)點。本發(fā)明雖已于前述實施例中所揭露,但并不僅限于前述實施例中所提及的內(nèi)容, 在不脫離本發(fā)明的精神和范圍內(nèi)所作的任何變化與修改,均屬于本發(fā)明的保護范圍。
權(quán)利要求
1.一種儲存媒體的數(shù)據(jù)加密裝置,其特征在于,包括一密鑰輸入接口,供使用者輸入以取得一使用者密鑰;一區(qū)塊加解密單元,供進行區(qū)塊編碼或譯碼;一隨機數(shù)加解密單元,連接該密鑰輸入接口,而依該使用者密鑰進行串行位隨機數(shù)編碼或譯碼;一控制單元,連接該區(qū)塊加解密單元和隨機數(shù)加解密單元,且儲存一加密程序及一解密程序,其中該加密程序當該控制單元取得一原始數(shù)據(jù)時,先將該原始數(shù)據(jù)傳送至該區(qū)塊加解密單元進行區(qū)塊編碼,再經(jīng)該隨機數(shù)加解密單元進行串行位隨機數(shù)編碼后輸出一已加密數(shù)據(jù),由該儲存媒體加以儲存;該解密程序當該控制單元自該儲存媒體取得一已加密數(shù)據(jù)時,先將該已加密數(shù)據(jù)傳送至該隨機數(shù)加解密單元串行位隨機數(shù)譯碼后,再經(jīng)該區(qū)塊加解密單元進行區(qū)塊譯碼,若解密程序進行時,該隨機數(shù)加解密單元所取得的使用者密鑰與加密程序時所取得者相同,將該已加密數(shù)據(jù)還原為原始數(shù)據(jù)后輸出。
2.如權(quán)利要求1所述的儲存媒體的數(shù)據(jù)加密裝置,其特征在于,該隨機數(shù)加解密單元包括η個D正反器,其中η是對應(yīng)使用者密鑰的數(shù)據(jù)長度,各D正反器具有一 D輸入端、一觸發(fā)輸入端及一 Q輸出端,其中第1個D正反器的D輸入端是連接該區(qū)塊加解密單元或取得已加密數(shù)據(jù),所有D正反器的觸發(fā)輸入端是連接該密鑰輸入接口以取得使用者密鑰中的對應(yīng)位碼,當i = 1至η-1時,第i個D正反器的Q輸出端是連接第i+Ι個D正反器的D輸入端,而第η個D正反器的D輸入端是連接第η-1個D正反器的Q輸出端;m個互斥或門,其中m小于n,各XOR閘包括一第一輸入端、一第二輸入端及一輸出端, 其中各XOR閘的第一輸入端連接一對應(yīng)D正反器的D輸入端,當j = 1至m-1時,第j個 XOR閘的第二輸入端連接第j+Ι個XOR閘的輸出端,而第m個XOR閘的第二輸入端則連接第 η個D正反器的Q輸出端,第1個XOR閘的輸出端供輸出已加密數(shù)據(jù)或隨機數(shù)解密數(shù)據(jù)。
3.如權(quán)利要求2所述的儲存媒體的數(shù)據(jù)加密裝置,其特征在于,該使用者密鑰具有128個位碼;該隨機數(shù)加解密單元具有128個D正反器及3個XOR閘,其中第1個XOR閘的第一輸入端連接第1個D正反器的D輸入端,第2個XOR閘的第一輸入端連接第3個D正反器的 D輸入端,第3個XOR閘的第一輸入端連接第20個D正反器的D輸入端。
4.如權(quán)利要求1所述的儲存媒體的數(shù)據(jù)加密裝置,其特征在于,該區(qū)塊加解密單元儲存一加密轉(zhuǎn)換表,當該區(qū)塊加解密單元將數(shù)據(jù)進行加密時,先將原始數(shù)據(jù)區(qū)分為多個子數(shù)據(jù)區(qū)塊,接著再逐個將子數(shù)據(jù)區(qū)塊利用該加密轉(zhuǎn)換表加密后輸出給該隨機數(shù)加解密單元;及一解密轉(zhuǎn)換表,當該區(qū)塊加解密單元將數(shù)據(jù)進行解密時,將經(jīng)串行位隨機數(shù)譯碼的已加密數(shù)據(jù)區(qū)分為多個子數(shù)據(jù)區(qū)塊,接著再逐個將子數(shù)據(jù)區(qū)塊利用該解密轉(zhuǎn)換表解密為原始數(shù)據(jù)。
5.如權(quán)利要求2或3所述的儲存媒體的數(shù)據(jù)加密裝置,其特征在于,該區(qū)塊加解密單元儲存一加密轉(zhuǎn)換表,當該區(qū)塊加解密單元將數(shù)據(jù)進行加密時,先將原始數(shù)據(jù)區(qū)分為多個子數(shù)據(jù)區(qū)塊,接著再逐個將子數(shù)據(jù)區(qū)塊利用該加密轉(zhuǎn)換表加密而輸出區(qū)塊加密數(shù)據(jù)給該隨機數(shù)加解密單元;及一解密轉(zhuǎn)換表,當該區(qū)塊加解密單元將隨機數(shù)解密數(shù)據(jù)進行解密時,將隨機數(shù)解密數(shù)據(jù)區(qū)分為多個子數(shù)據(jù)區(qū)塊,接著再逐個將子數(shù)據(jù)區(qū)塊利用該解密轉(zhuǎn)換表解密為原始數(shù)據(jù)。
6.如權(quán)利要求1至3中任一項所述的儲存媒體的數(shù)據(jù)加密裝置,其特征在于,為一軟件安裝于儲存媒體中。
7.如權(quán)利要求4所述的儲存媒體的數(shù)據(jù)加密裝置,其特征在于,為一軟件安裝于儲存媒體中。
8.如權(quán)利要求5所述的儲存媒體的數(shù)據(jù)加密裝置,其特征在于,為一軟件安裝于儲存媒體中。
9.如權(quán)利要求1至3中任一項所述的儲存媒體的數(shù)據(jù)加密裝置,其特征在于,外接于一計算機和可移除式儲存裝置之間。
10.如權(quán)利要求4所述的儲存媒體的數(shù)據(jù)加密裝置,其特征在于,外接于一計算機和可移除式儲存裝置之間。
11 .如權(quán)利要求5所述的儲存媒體的數(shù)據(jù)加密裝置,其特征在于,外接于一計算機和可移除式儲存裝置之間。
全文摘要
一種儲存媒體的數(shù)據(jù)加密裝置,由一密鑰輸入接口取得一使用者密鑰,而一控制單元則執(zhí)行一加密程序,將一原始數(shù)據(jù)先由一區(qū)塊加解密單元進行區(qū)塊編碼后,再由一隨機數(shù)加解密單元利用使用者密鑰進行串行位隨機數(shù)編碼,而輸出一已加密數(shù)據(jù);該控制單元亦執(zhí)行一解密程序,將取得的已加密數(shù)據(jù)先由隨機數(shù)加解密單元利用再取得的使用者密鑰進行串行位隨機數(shù)譯碼后,再由區(qū)塊加解密單元進行區(qū)塊譯碼,只要解密時所取得的使用者密鑰與加密時所取得者相同,就可將已加密數(shù)據(jù)還原為原始數(shù)據(jù),本發(fā)明的加密裝置可有效地達成數(shù)據(jù)加密,從而避免儲存媒體內(nèi)存的密鑰遭直接竊取。
文檔編號G06F12/14GK102169465SQ201010124848
公開日2011年8月31日 申請日期2010年2月26日 優(yōu)先權(quán)日2010年2月26日
發(fā)明者陳思明 申請人:銀燦科技股份有限公司