專利名稱:數(shù)據(jù)加密/解密方法及其裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種數(shù)據(jù)加密/解密方法,特別是涉及一種存儲裝置的數(shù)據(jù)加密/解密方法。
背景技術(shù):
外圍設(shè)備附加卡上的控制芯片,一般而言,在主系統(tǒng)上均有與之相關(guān)的驅(qū)動程序或應(yīng)用程序來和操作系統(tǒng)搭配運作,以便使外圍設(shè)備附加卡能發(fā)揮最佳的功能。除此之外,目前的芯片設(shè)計上已朝向多功能化和系統(tǒng)化的整合趨勢發(fā)展,為求應(yīng)用上能盡量滿足不同客戶的不同需求,許多外圍設(shè)備附加卡上的控制芯片皆提供讀寫非易失性存儲器的接口。
藉此,前述的驅(qū)動程序或應(yīng)用程序便可指示控制芯片通過這個接口讀寫儲存在非易失性存儲器中的必要或刻制的特定數(shù)據(jù),如此一來,外圍設(shè)備附加卡的制造商便可以自行定義和規(guī)劃來達到產(chǎn)品區(qū)隔的目的。
然而,通過前述的非易失性存儲器接口讀寫數(shù)據(jù)時,傳統(tǒng)的作法并未經(jīng)過適當(dāng)?shù)陌踩用軝C制以防止數(shù)據(jù)被竊取。一旦被取得非易失性存儲器里的數(shù)據(jù),辛勤研發(fā)的外圍設(shè)備附加卡和搭配的驅(qū)動程序或應(yīng)用程序等軟、硬件智能結(jié)晶將很容易遭非法抄襲與大量復(fù)制。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的是防止儲存在非易失性存儲器的機密數(shù)據(jù)和程序遭到竊取及抄襲。
本發(fā)明的另一目的是防止外圍設(shè)備附加卡和搭配的程序等軟、硬件遭到非法大量復(fù)制。
為實現(xiàn)上述目的,本發(fā)明提出一種數(shù)據(jù)加密/解密方法,適用于一存儲裝置。首先從存儲裝置中,取得一特定碼。然后,在寫入周期時,加密特定碼與第一數(shù)據(jù),用以得到加密數(shù)據(jù)。接著,根據(jù)存取地址,將加密數(shù)據(jù)寫入存儲裝置中。因此,存儲裝置具有特定數(shù)據(jù)及加密數(shù)據(jù)。
本發(fā)明還提出一種數(shù)據(jù)加密/解密裝置,至少包括一存儲裝置以及一處理裝置。存儲裝置具有一特定碼。處理裝置耦接存儲裝置,在寫入周期時,加密特定碼與第一數(shù)據(jù),以得到加密數(shù)據(jù),并根據(jù)存取地址,將加密數(shù)據(jù)寫入存儲裝置,使得存儲裝置具有特定碼及加密數(shù)據(jù)。
為使本發(fā)明的上述和其它目的、特征、和優(yōu)點能更明顯易懂,下文特舉出較佳實施例,并結(jié)合附圖詳細說明如下。
圖1示出了儲存數(shù)據(jù)于存儲裝置的一可能方法流程圖。
圖2示出了由存儲裝置讀取數(shù)據(jù)的一可能方法流程圖。
圖3示出了圖1的一可能電路實施例。
圖4示出了圖2的一可能電路實施例。
附圖符號說明32存儲裝置;34處理裝置;342轉(zhuǎn)換單元;344運算單元;346控制單元;DI特定碼;KEY密鑰值;DE加密數(shù)據(jù);AD存取地址。
具體實施例方式
本發(fā)明的特征在于,當(dāng)使用者欲儲存原始數(shù)據(jù)至存儲裝置時,需加密存儲裝置內(nèi)的特定碼與原始數(shù)據(jù)后,方能儲存加密數(shù)據(jù)于存儲裝置中;若使用者欲由存儲裝置讀取數(shù)據(jù)時,則需解密特定碼與存儲裝置內(nèi)的加密數(shù)據(jù)后,方能得到原始數(shù)據(jù)。
圖1示出了儲存數(shù)據(jù)于存儲裝置的一可能方法流程圖。當(dāng)使用者欲儲存一原始數(shù)據(jù)于存儲裝置時,首先,取出存儲裝置內(nèi)的一特定碼(步驟110)。當(dāng)存儲裝置在出廠前,制造廠商會在存儲裝置內(nèi)儲存一特定碼,該特定碼可用以代表此存儲裝置的序號或是出廠日期等相關(guān)數(shù)據(jù)。不同廠商所制造的存儲裝置,具有不同的特定碼;并且由于不同的存儲裝置具有不同的序號,因此,同一批生產(chǎn)的存儲裝置亦具有不同的特定碼。特定碼的位(bit)長度可為任意長度,例如32bits、64bits、128bits、或是256bits。
然后,為了提高保密的程度,故將存儲裝置內(nèi)的特定碼轉(zhuǎn)換成一密鑰值(步驟120)。舉例而言,假設(shè),特定碼為256bits時,可藉由一轉(zhuǎn)換程序,將特定碼轉(zhuǎn)換為32bits的密鑰值。當(dāng)密鑰值的位數(shù)與特定碼的位數(shù)相差愈大時,表示其保密的程度愈高。
接著,加密原始數(shù)據(jù)、密鑰值、以及存取地址(步驟130)。本發(fā)明可運用任何加密運算以加密原始數(shù)據(jù)、密鑰值、以及存取地址,用以產(chǎn)生一加密數(shù)據(jù)。當(dāng)不同的存儲裝置具有不同的特定碼時,其所轉(zhuǎn)換的密鑰值亦會不同。因此,不同的存儲裝置若欲在相同的存取地址儲存相同的原始數(shù)據(jù)時,在經(jīng)過加密運算后,會產(chǎn)生不同的加密數(shù)據(jù)予不同的存儲裝置,如此,可大幅提高保密程度。
由于本發(fā)明亦將存取地址與原始數(shù)據(jù)進行加密,因此,不同的存取地址若具有相同的原始數(shù)據(jù),在經(jīng)過加密后,會產(chǎn)生不同的加密數(shù)據(jù)。例如,在地址0000H~0005H的原始數(shù)據(jù)均為00時,經(jīng)過加密后,地址0000H~0005H的加密數(shù)據(jù)均不相同,可能為00、01、02、03、04、05,藉此可提保密程度。換言之,亦可僅將密鑰值與原始數(shù)據(jù)作加密,如此,相同的原始數(shù)據(jù)經(jīng)加密后,會產(chǎn)生相同的加密數(shù)據(jù)。
最后,依據(jù)存取地址,將加密數(shù)據(jù)儲存于存儲裝置中(步驟140)。此時,存儲裝置不但具有最初的特定碼,亦具有加密數(shù)據(jù)。由于存儲裝置所儲存的數(shù)據(jù)已經(jīng)過加密,因此,可大大提高數(shù)據(jù)的安全性。
圖2示出了由存儲裝置讀取數(shù)據(jù)的一可能方法流程圖。首先,根據(jù)存取地址,由存儲裝置中取出加密數(shù)據(jù)(步驟210)。由于儲存于存儲裝置的加密數(shù)據(jù)均被加密過,因此,需將加密數(shù)據(jù)解密后,方能得到原始數(shù)據(jù)。
接著,解密所取出的加密數(shù)據(jù)、密鑰值、以及存取地址(步驟220)。此步驟需配合圖1的步驟130。由于上述加密流程是加密原始數(shù)據(jù)與密鑰值及存取地址,因此,在解密流程中,需解密密鑰值、存取地址、及加密數(shù)據(jù),方能讀取到原始數(shù)據(jù)。
加密所使用的密鑰值,在解密時亦需使用相同的密鑰值。并且,解密時所使用的解密運算,需配合加密時所使用的加密運算,兩者具有互補關(guān)系。若加密運算中,未考慮存取地址此變量時,則解密運算亦不需考慮存取地址。
當(dāng)存儲裝置中的加密數(shù)據(jù)被解密后,便可得到原始數(shù)據(jù)(步驟230)。
圖3示出了圖1的一可能電路實施例。如圖所示,處理裝置34加密將欲儲存的原始數(shù)據(jù)后,再儲存于存儲裝置32,用以確保原始數(shù)據(jù)的安全性,其中,存儲裝置32為快閃只讀存儲器(Flash ROM)、或是其它只讀存儲器。處理裝置34包括轉(zhuǎn)換單元342、運算單元344、以及控制單元346。
轉(zhuǎn)換單元342用以將存儲裝置32內(nèi)的特定碼DI轉(zhuǎn)換成密鑰值KEY。假設(shè)轉(zhuǎn)換單元342將特定碼DI的位長度由256bits,轉(zhuǎn)換成位長度為32bits的密鑰值KEY。當(dāng)特定碼DI的位長度與密鑰值KEY的位長度差異愈大時,則表示保密程度愈高。亦可省略轉(zhuǎn)換單元342。
控制單元346輸出原始數(shù)據(jù)DS及存取地址AD予運算單元344。由于,此時是欲儲存數(shù)據(jù)于存儲裝置32中,因此,運算單元344執(zhí)行加密運算,本發(fā)明并不限制加密運算的方法。運算單元344將密鑰值KEY與原始數(shù)據(jù)DS及存取地址AD作加密運算后,便可產(chǎn)生加密數(shù)據(jù)DE,并根據(jù)存取地址AD,將加密數(shù)據(jù)DE儲存于存儲裝置32。如此,存儲裝置32不但具有特定碼DI,亦具有加密數(shù)據(jù)DE。
另外,為了更提高保密程度,故運算單元344所執(zhí)行的加密運算,考慮了存取地址這個變量。在進行加密運算時,亦可省略存取地址這個變量。假設(shè)運算單元344在執(zhí)行加密運算時,考慮了存取地址的狀況下,當(dāng)不同的存取地址具有相同的原始數(shù)據(jù)時,在經(jīng)過加密運算后,會產(chǎn)生不同的加密數(shù)據(jù)。
圖4示出了圖2的一可能電路實施例。圖4的電路架構(gòu)與圖3相同,但由于圖4是讀取存儲裝置32中的加密數(shù)據(jù),因此,圖4的運算單元344用以執(zhí)行解密運算。
首先,轉(zhuǎn)換單元342將存儲裝置32內(nèi)的特定碼DI轉(zhuǎn)換成密鑰值KEY。然后,運算單元344根據(jù)控制單元346所輸出的存取地址AD,讀取存儲裝置32內(nèi)的加密數(shù)據(jù)DE。由于在圖3的加密運算中,考慮存取地址AD,因此,運算單元344將密鑰值KEY、存取地址AD、以及加密數(shù)據(jù)DE作解密運算,用以得到原始數(shù)據(jù)DS??刂茊卧?46再依據(jù)原始數(shù)據(jù)DS作相關(guān)的處理。
由上述可知,本發(fā)明具有以下優(yōu)點一、由于儲存于存儲裝置的數(shù)據(jù)均被加密過,因此,大幅降低存儲裝置內(nèi)的數(shù)據(jù)被竊取及抄襲的機率。
二、不同的存儲裝置內(nèi)的特定碼并不一定相同,因此利用該特定碼所產(chǎn)生的密鑰值亦不相同。當(dāng)不同的存儲裝置欲儲存相同的原始數(shù)據(jù)時,不同的密鑰值在與相同的原始數(shù)據(jù)作加密運算后,將使得不同的存儲裝置儲存不同的加密數(shù)據(jù)。
三、由于本發(fā)明的加密運算考慮了存取地址,因此,當(dāng)不同的存取地址具有相同的原始數(shù)據(jù)時,通過本發(fā)明可產(chǎn)生不同的加密數(shù)據(jù),提高保密程度,使得數(shù)據(jù)不易遭到非法大量復(fù)制。
雖然本發(fā)明已以較佳實施例披露如上,然其并非用以限定本發(fā)明,本領(lǐng)域的技術(shù)人員在不脫離本發(fā)明的精神和范圍的前提下,可作若干的更動與潤飾,因此本發(fā)明的保護范圍以本發(fā)明的權(quán)利要求為準(zhǔn)。
權(quán)利要求
1.一種數(shù)據(jù)加密/解密裝置,至少包括一存儲裝置,具有一特定碼;以及一處理裝置,耦接上述存儲裝置,在一寫入周期時,加密上述特定碼與一第一數(shù)據(jù),以得到一加密數(shù)據(jù),并根據(jù)一存取地址,將上述加密數(shù)據(jù)儲存于上述存儲裝置,使得上述存儲裝置具有上述特定碼及上述加密數(shù)據(jù)。
2.如權(quán)利要求1所述的數(shù)據(jù)加密/解密系統(tǒng),其中,上述處理裝置將上述特定碼轉(zhuǎn)換成一密鑰值,再與上述第一數(shù)據(jù)進行加密。
3.如權(quán)利要求2所述的數(shù)據(jù)加密/解密裝置,其中,上述第一數(shù)據(jù)為欲儲存于上述存儲裝置的一原始數(shù)據(jù)。
4.如權(quán)利要求3所述的數(shù)據(jù)加密/解密裝置,當(dāng)上述處理裝置在一讀取周期時,根據(jù)上述存取地址,由上述存儲裝置中,讀取上述加密數(shù)據(jù),再解密上述加密數(shù)據(jù)、以及上述密鑰值,用以得到上述原始數(shù)據(jù)。
5.如權(quán)利要求2所述的數(shù)據(jù)加密/解密裝置,其中,上述第一數(shù)據(jù)包括上述存取地址以及欲儲存于上述存儲裝置的一原始數(shù)據(jù)。
6.如權(quán)利要求5所述的數(shù)據(jù)加密/解密裝置,當(dāng)上述處理裝置在一讀取周期時,根據(jù)上述存取地址,由上述存儲裝置中,讀取上述加密數(shù)據(jù),再解密上述加密數(shù)據(jù)、上述存取地址、以及上述密鑰值,用以得到上述原始數(shù)據(jù)。
7.如權(quán)利要求3所述的數(shù)據(jù)加密/解密裝置,其中,上述處理裝置包括一轉(zhuǎn)換單元,用以將上述特定碼轉(zhuǎn)換成上述密鑰值;一控制單元,在上述寫入周期時,輸出上述第一數(shù)據(jù);以及一運算單元,加密上述密鑰值與上述第一數(shù)據(jù)。
8.如權(quán)利要求1所述的數(shù)據(jù)加密/解密裝置,其中,上述特定碼是由上述存儲裝置的制造廠商所設(shè)定。
9.如權(quán)利要求1所述的數(shù)據(jù)加密/解密裝置,其中,不同的上述存儲裝置具有不同的上述特定碼。
10.如權(quán)利要求1所述的數(shù)據(jù)加密/解密裝置,其中,上述存儲裝置為一只讀存儲器。
全文摘要
一種數(shù)據(jù)加密/解密方法,適用于一存儲裝置;當(dāng)欲寫入數(shù)據(jù)于存儲裝置時,先加密存儲裝置內(nèi)的特定碼與欲寫入數(shù)據(jù),再將加密后的數(shù)據(jù)寫入存儲裝置中,用以降低儲存于存儲裝置內(nèi)的數(shù)據(jù)被竊取的機率。
文檔編號G06F12/14GK1588328SQ200410055979
公開日2005年3月2日 申請日期2004年8月3日 優(yōu)先權(quán)日2004年8月3日
發(fā)明者蘇浩坤, 胡培杰, 朱孟煌 申請人:威盛電子股份有限公司