專利名稱:數(shù)據(jù)處理裝置以及數(shù)據(jù)處理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及對存儲裝置中保存的數(shù)據(jù)進(jìn)行保護(hù)的技術(shù)。
背景技術(shù):
移動電話等的嵌入設(shè)備由于具備付費內(nèi)容等有價值的資產(chǎn),所以成為非法獲得該資產(chǎn)的攻擊對象。作為該攻擊之一,有數(shù)據(jù)探測(data probing)。數(shù)據(jù)探測是從MPU(Micro Processor Unit)芯片與外部RAM (Random Access Memory)之間露出的數(shù)據(jù)總線布線讀出數(shù)據(jù)的攻擊。作為防止因該數(shù)據(jù)探測而導(dǎo)致的信息泄漏的方法,有數(shù)據(jù)擾頻(data scramble)。 數(shù)據(jù)擾頻是通過在從MPU芯片向外發(fā)出數(shù)據(jù)之前將數(shù)據(jù)轉(zhuǎn)換成擾頻數(shù)據(jù),來對攻擊者加密該數(shù)據(jù)內(nèi)容的技術(shù)。這里針對圖1進(jìn)行說明。圖1中圖解說明了現(xiàn)有的數(shù)據(jù)擾頻的一個例子。在圖1中,作為數(shù)據(jù)處理裝置的MPU芯片1具有位寬都是w-bit的地址總線11和數(shù)據(jù)總線12,與作為存儲裝置的外部RAM2分別連接。并且,MPU芯片1在內(nèi)部具有處理器 100和擾頻部200。地址總線11輸出由處理器100輸出的、賦予給外部RAM2的地址數(shù)據(jù)。擾頻部200對處理器100輸出的寫入數(shù)據(jù)、即與由地址總線11輸出的地址數(shù)據(jù)確定的外部RAM2的存儲位置對應(yīng)的該寫入數(shù)據(jù)進(jìn)行擾頻,來獲得加密數(shù)據(jù)。數(shù)據(jù)總線12輸出擾頻部200獲得的加密數(shù)據(jù)。對圖1所示的擾頻部200的構(gòu)成進(jìn)一步加以說明。擾頻部200構(gòu)成為具備密鑰寄存器201、異或運算電路(以下稱為“X0R電路” )202、替代函數(shù)處理部203、以及M)R電路204。密鑰寄存器201是存儲有W-bit擾頻密鑰數(shù)據(jù)K的寄存器。XOR電路202求出和地址總線11輸出的地址數(shù)據(jù)相同的地址數(shù)據(jù)、與密鑰寄存器 201中儲存的擾頻密鑰數(shù)據(jù)的每一位的異或。替代函數(shù)處理部203進(jìn)行使從XOR電路202輸出的w_bit數(shù)據(jù)的輸入,與由w_bit 位表現(xiàn)的任意一個數(shù)據(jù)唯一對應(yīng)地加以輸出的替代轉(zhuǎn)換處理。XOR電路204在擾頻動作時,求出處理器100輸出的寫入數(shù)據(jù)、與從替代函數(shù)處理部203輸出的和地址數(shù)據(jù)對應(yīng)的數(shù)據(jù)(掩碼(mask)值)的每一位的異或。從該M)R電路 204輸出的數(shù)據(jù)是將寫入數(shù)據(jù)擾頻后的加密數(shù)據(jù),該數(shù)據(jù)被從數(shù)據(jù)總線12向外部RAM2輸出。該加密數(shù)據(jù)被存儲到外部RAM2中的、由地址總線11輸出的地址數(shù)據(jù)確定的存儲位置。在MPU芯片1從外部RAM2讀出該加密數(shù)據(jù)的情況下,擾頻部200進(jìn)行去擾頻 (descramble)動作。MPU芯片1從外部RAM2讀出加密數(shù)據(jù)時由地址總線11輸出的地址數(shù)據(jù)與寫入該加密數(shù)據(jù)時的地址數(shù)據(jù)相同。因此,如果密鑰寄存器201的擾頻密鑰數(shù)據(jù)K與替代函數(shù)處理部203中的替代轉(zhuǎn)換F這兩者和擾頻動作時的相同,則加密數(shù)據(jù)讀出時從替代函數(shù)處理部203輸出的掩碼值與加密數(shù)據(jù)寫入時的掩碼值相同。XOR電路204在去擾頻動作時求出從外部RAM2讀出的加密數(shù)據(jù)、與從替代函數(shù)處理部203輸出的掩碼值的每一位的異或。這里,由于加密數(shù)據(jù)寫入時和讀出時掩碼值相同, 所以加密數(shù)據(jù)與掩碼值的異或成為原來的寫入數(shù)據(jù)。這樣結(jié)束了加密數(shù)據(jù)的去擾頻,得到的原來的寫入數(shù)據(jù)被處理器100讀入。這樣,在圖1所示的構(gòu)成中,MPU芯片1內(nèi)部的擾頻部200進(jìn)行向外部RAM2寫入的數(shù)據(jù)的擾頻。即,由于處理器100與擾頻部200的布線沒有露出到MPU芯片1外部,所以無法通過數(shù)據(jù)探測來讀出被實施擾頻前的寫入數(shù)據(jù)。另外,在該圖1所示的構(gòu)成中,進(jìn)行數(shù)據(jù)處理的處理器100 —般地利用在準(zhǔn)備寫入數(shù)據(jù)之前,可以對地址總線11準(zhǔn)備地址數(shù)據(jù)這一特性,來進(jìn)行掩碼值的預(yù)先計算。如此地通過盡量減少針對寫入數(shù)據(jù)的處理,實現(xiàn)了在處理器100與外部RAM2之間所被允許的延遲時間內(nèi)完成擾頻處理這一高速響應(yīng)性能。一般在向存儲裝置寫入的數(shù)據(jù)的擾頻中,如果通過公共密鑰分組加密等生成掩碼值,則能夠提高安全性,即使處理方式被公開了,也能夠確保安全性。但是,由于公共密鑰分組加密一般處理復(fù)雜,所以如果使用公共密鑰分組加密,則難以滿足傳輸寫入數(shù)據(jù)的數(shù)據(jù)總線12所要求的條件、即高速響應(yīng)性能。另一方面,采用圖1所示的構(gòu)成的擾頻通過把擾頻部200嵌入到MPU芯片1內(nèi),來將攻擊者難以知曉生成掩碼值的算法作為安全性的擔(dān)保。由于采用該構(gòu)成的擾頻與即使擾頻的算法被公開但引入了安全的加密處理的情況相比計算量少,所以具有能夠高速處理這一特征。另外,圖1所示的構(gòu)成中的數(shù)據(jù)擾頻部200使用從處理器100輸出的寫入數(shù)據(jù)與地址數(shù)據(jù)這兩方信息,來生成擾頻數(shù)據(jù)(加密數(shù)據(jù))。這樣,通過采用還取決于地址數(shù)據(jù)的數(shù)據(jù)擾頻算法,即使在寫入數(shù)據(jù)相同的情況下,寫入到外部RAM2的擾頻數(shù)據(jù)也會因地址數(shù)據(jù)的不同而不同,因此解析對抗性提高。另外,作為其他的背景技術(shù),公知有在存儲器單元側(cè)也進(jìn)行數(shù)據(jù)的擾頻的技術(shù);和對加密后的數(shù)據(jù)進(jìn)一步加密的雙重加密技術(shù)。專利文獻(xiàn)1 日本特開2001-109667號公報專利文獻(xiàn)2 日本特開2002-3^844號公報專利文獻(xiàn)3 日本特開2004-110408號公報如上所述,通過在MPU芯片1內(nèi)具備擾頻部200,能夠針對數(shù)據(jù)探測來使數(shù)據(jù)成為加密數(shù)據(jù)。但是,依然存在攻擊者對擾頻算法進(jìn)行解析這一危險性。為了確保擾頻的安全性,需要對擾頻算法的安全性進(jìn)行評價。對如圖1的擾頻部200中所采用那樣的、使用擾頻密鑰數(shù)據(jù)進(jìn)行數(shù)據(jù)擾頻的算法、 即帶密鑰的擾頻算法的安全性進(jìn)行評價的項目之一,是對基于已知的明文電文攻擊的密鑰窮舉搜索攻擊的對抗性。在該密鑰窮舉搜索攻擊中,擾頻密鑰數(shù)據(jù)、寫入數(shù)據(jù)、擾頻數(shù)據(jù)以及地址數(shù)據(jù)、與安裝了擾頻算法的硬件的組中,除了擾頻密鑰數(shù)據(jù)以外的數(shù)據(jù)被賦予給攻擊者。攻擊者在該情況下,任意地設(shè)定擾頻密鑰數(shù)據(jù)來執(zhí)行擾頻。然后,反復(fù)進(jìn)行該執(zhí)行,直到確定出在被賦予的組中使用的擾頻密鑰數(shù)據(jù)為止。
擾頻密鑰數(shù)據(jù)的密鑰長度越長,針對該密鑰窮舉搜索攻擊的對抗性越高。另外,可通過使該密鑰窮舉搜索攻擊所需要的計算量采用在現(xiàn)實的時間內(nèi)無法計算的值,來確保安全性。圖1的擾頻部200中采用的帶密鑰的擾頻算法無法使擾頻密鑰數(shù)據(jù)的密鑰長度 (位長)長至處理器100的字長以上。例如,目前多數(shù)面向嵌入設(shè)備的處理器的字長為32bit以下。這里,考慮對將字長設(shè)為32bit的情況下的、對圖1的擾頻部200的密鑰窮舉搜索攻擊。如果假設(shè)每一秒鐘能夠執(zhí)行1000次擾頻,則經(jīng)過50天就能夠探索出擾頻密鑰數(shù)據(jù)。另外,作為對帶密鑰的擾頻算法的攻擊方法,公知有一種選擇明文電文攻擊的方法。在該攻擊中,設(shè)想成攻擊者雖然無法知曉擾頻密鑰數(shù)據(jù),但能夠自由設(shè)定數(shù)據(jù)和地址數(shù)據(jù)來獲得擾頻數(shù)據(jù)的情況。即,該攻擊是假定攻擊者的能力比密鑰窮舉搜索攻擊高的攻擊。在圖1的擾頻部200中,攻擊者首先針對全部的地址數(shù)據(jù)生成寫入數(shù)據(jù)與擾頻數(shù)據(jù)的對兒。然后,如果計算出擾頻數(shù)據(jù)與寫入數(shù)據(jù)的異或,則就可以知曉針對全部擾頻數(shù)據(jù)的掩碼值。于是,攻擊者可以在不知曉擾頻密鑰數(shù)據(jù)的狀態(tài)下,使用得到的掩碼值將任意地址的擾頻數(shù)據(jù)去擾頻成數(shù)據(jù)。
發(fā)明內(nèi)容
本發(fā)明鑒于上述問題而提出,其想要解決的課題是,提供一種對選擇明文電文攻擊具有對抗性的數(shù)據(jù)擾頻方式。本說明書中公開的數(shù)據(jù)處理裝置具有地址總線、擾頻部和數(shù)據(jù)總線。其中,地址總線用于輸出對存儲裝置賦予的地址數(shù)據(jù)。擾頻部用于對與由地址總線輸出的地址數(shù)據(jù)確定的存儲裝置的存儲位置對應(yīng)的寫入數(shù)據(jù)進(jìn)行擾頻,來獲得加密數(shù)據(jù)。數(shù)據(jù)總線用于輸出擾頻部獲得的加密數(shù)據(jù)。其中,擾頻部具有第1擾頻單元、第1轉(zhuǎn)換單元和第2擾頻單元。其中,第1擾頻單元通過求出與和地址數(shù)據(jù)對應(yīng)的第1掩碼數(shù)據(jù)的每一位的異或,來對寫入數(shù)據(jù)進(jìn)行擾頻從而獲得第1擾頻數(shù)據(jù)。第1轉(zhuǎn)換單元用于對該第1擾頻數(shù)據(jù)一對一地進(jìn)行替代轉(zhuǎn)換。第 2擾頻單元通過求出與和地址數(shù)據(jù)對應(yīng)的第2掩碼數(shù)據(jù)的每一位的異或,來對由第1轉(zhuǎn)換單元針對第1掩碼數(shù)據(jù)實施轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行擾頻從而獲得第2擾頻數(shù)據(jù)。其中,擾頻部將該第2擾頻數(shù)據(jù)作為加密數(shù)據(jù)。該裝置中,在第1轉(zhuǎn)換單元對第1擾頻單元擾頻后的寫入數(shù)據(jù)進(jìn)行了替代轉(zhuǎn)換的基礎(chǔ)上,第2擾頻單元進(jìn)一步進(jìn)行擾頻??煞乐褂稍摰?轉(zhuǎn)換單元針對寫入數(shù)據(jù)的處理,成為與掩碼值的單純的異或。即,根據(jù)該裝置的構(gòu)成,擾頻部的輸入輸出中的寫入數(shù)據(jù)與加密數(shù)據(jù)的關(guān)系除了取決于地址數(shù)據(jù)以外,還取決于寫入數(shù)據(jù)。因此,由該裝置進(jìn)行的數(shù)據(jù)擾頻對選擇明文電文攻擊具有對抗性。另外,在該裝置中,作為用于求出針對寫入數(shù)據(jù)的掩碼值的單元,具有第1擾頻單元和第2擾頻單元這2個擾頻單元。這里,通過根據(jù)地址數(shù)據(jù)與第1擾頻密鑰數(shù)據(jù)求出第 1掩碼數(shù)據(jù),根據(jù)地址數(shù)據(jù)與第2擾頻密鑰數(shù)據(jù)求出第2掩碼數(shù)據(jù),能夠使擾頻密鑰數(shù)據(jù)整體的密鑰長度比現(xiàn)有的密鑰長度長。由此,對密鑰窮舉搜索攻擊的對抗性與前述的以往情況相比得以提高。
另外,在該裝置的第1擾頻單元以及第2擾頻單元中,可以預(yù)先進(jìn)行為了根據(jù)地址數(shù)據(jù)來獲得掩碼值的計算。因此,如果將轉(zhuǎn)換單元設(shè)為高速,則該裝置能夠使擾頻動作實現(xiàn)高速響應(yīng)性能。另外,在本說明書中,還公開了通過該數(shù)據(jù)處理裝置對存儲裝置中存儲的加密數(shù)據(jù)進(jìn)行去擾頻,來獲得原來的寫入數(shù)據(jù)的去擾頻裝置。該去擾頻裝置具有地址總線、第1去擾頻單元、逆轉(zhuǎn)換單元和第2去擾頻單元。其中,地址總線用于輸出對存儲裝置賦予的地址數(shù)據(jù)。第1去擾頻單元通過求出與前述的第2掩碼數(shù)據(jù)的每一位的異或,來對從由地址數(shù)據(jù)確定的存儲裝置的存儲位置讀出的加密數(shù)據(jù)進(jìn)行去擾頻從而獲得中間去擾頻數(shù)據(jù)。逆轉(zhuǎn)換單元針對該中間去擾頻數(shù)據(jù), 進(jìn)行由前述的第1轉(zhuǎn)換單元實施的替代轉(zhuǎn)換的逆轉(zhuǎn)換。第2去擾頻單元通過求出與第1掩碼數(shù)據(jù)的每一位的異或,來對由逆轉(zhuǎn)換單元針對中間去擾頻數(shù)據(jù)實施逆轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行去擾頻從而獲得原來的寫入數(shù)據(jù)。根據(jù)該去擾頻裝置,前述的數(shù)據(jù)處理裝置讀出存儲裝置中存儲的加密數(shù)據(jù)并對其進(jìn)行去擾頻,能夠獲得原來的寫入數(shù)據(jù)。另外,當(dāng)然能夠構(gòu)成為前述的數(shù)據(jù)處理裝置具有該去擾頻裝置的構(gòu)成要素,由數(shù)據(jù)處理裝置自身根據(jù)加密數(shù)據(jù)來獲得原來的寫入數(shù)據(jù)。而且,本說明書中還公開了上述的數(shù)據(jù)處理裝置進(jìn)行的數(shù)據(jù)處理方法、以及上述的去擾頻裝置進(jìn)行的去擾頻方法。根據(jù)本說明書中公開的裝置以及方法,起到能夠提供一種對選擇明文電文攻擊具有對抗性的數(shù)據(jù)擾頻方式這一效果。
圖1是圖解表示現(xiàn)有的數(shù)據(jù)擾頻的一個例子的圖。圖2是數(shù)據(jù)處理裝置的整體構(gòu)成圖。圖3是圖解表示圖2所示的擾頻部的構(gòu)成的第1例的圖。圖4是圖解表示圖2所示的擾頻部的構(gòu)成的第2例的圖。圖5是去擾頻部的構(gòu)成圖。圖6A是替代函數(shù)以及其逆函數(shù)的第1例。圖6B是替代函數(shù)以及其逆函數(shù)的第2例。圖7是圖解表示圖2所示的擾頻部的構(gòu)成的第3例的圖。圖8是圖解表示圖2所示的擾頻部的構(gòu)成的第4例的圖。圖9是圖解表示圖2所示的擾頻部的構(gòu)成的第5例的圖。附圖標(biāo)記說明1-MPU芯片;2-外部RAM ;11_地址總線;12-數(shù)據(jù)總線;100-處理器;200-擾頻部;201、211、221-l、221-2、221-n-密鑰寄存器;202、204、212、214、221_1、 221-2、224-l、224-2、222-n、224-n-異或運算電路;203、213、220、223-1、223-2、230_1、 230-2、320、223-n、230-n-替代函數(shù)處理部;205、215_寄存器;206-基本部;206-1-第1基本部;206-2-第2基本部;216-擴展部;216-1-第1擴展部;216-2-第2擴展部;300-去擾頻部。
具體實施例方式
8
以下,基于附圖對本發(fā)明的實施方式進(jìn)行說明。圖2中圖解表示了作為數(shù)據(jù)處理裝置的MPU芯片1的整體構(gòu)成。在圖2中,MPU芯片1具有位寬都是w-bit的地址總線11和數(shù)據(jù)總線12,與作為存儲裝置的外部RAM2分別連接。并且,MPU芯片1在內(nèi)部具有處理器100和擾頻部200。地址總線11輸出由處理器100輸出的、賦予給外部RAM2的地址數(shù)據(jù)。擾頻部200對處理器100輸出的寫入數(shù)據(jù)、即與由地址總線11輸出的地址數(shù)據(jù)確定的外部RAM2的存儲位置對應(yīng)的該寫入數(shù)據(jù)進(jìn)行擾頻,得到加密數(shù)據(jù)。數(shù)據(jù)總線12輸出擾頻部200得到的加密數(shù)據(jù)。對圖2所示的擾頻部200的構(gòu)成進(jìn)一步加以說明。圖3中圖解表示了該擾頻部 200的構(gòu)成的第1例。在圖3中,擾頻部200構(gòu)成為具備密鑰寄存器201及211、X0R電路202、204、212 及214、以及替代函數(shù)處理部203及213。密鑰寄存器201是保存有w-bit擾頻密鑰數(shù)據(jù)KO的寄存器。該密鑰寄存器201 中預(yù)先保存的擾頻密鑰數(shù)據(jù)KO (在以下的說明中,有時也將該密鑰數(shù)據(jù)KO稱為“第1擾頻密鑰數(shù)據(jù)”)能夠變更。XOR電路202求出和地址總線11輸出的地址數(shù)據(jù)相同的地址數(shù)據(jù)、與密鑰寄存器 201中保存的第1擾頻密鑰數(shù)據(jù)的每一位的異或。替代函數(shù)處理部203進(jìn)行使從M)R電路202輸出的w_bit數(shù)據(jù)的輸入,與由w_bit 位表現(xiàn)的任意一個數(shù)據(jù)唯一對應(yīng)地輸出的替代轉(zhuǎn)換處理。在該替代函數(shù)處理部203中進(jìn)行的替代轉(zhuǎn)換FO —般將輸入輸出的關(guān)系設(shè)為非線形。其中,替代函數(shù)處理部203通過將基本邏輯元件(邏輯乘電路、邏輯和電路、非電路等)組合而構(gòu)成。不過,如果處理速度不受限, 則例如也可以參照存儲裝置中預(yù)先存儲的、對輸入輸出的對應(yīng)關(guān)系預(yù)先進(jìn)行了定義的表來進(jìn)行替代轉(zhuǎn)換。其中,在以下的說明中,將從該替代函數(shù)處理部203輸出的數(shù)據(jù)中、與地址數(shù)據(jù)對應(yīng)的該數(shù)據(jù)稱為“第1掩碼數(shù)據(jù)”。XOR電路204通過求出處理器100輸出的寫入數(shù)據(jù)、與從替代函數(shù)處理部203輸出的第1掩碼數(shù)據(jù)的每一位的異或,來進(jìn)行該寫入數(shù)據(jù)的擾頻。在以下的說明中,將由密鑰寄存器201JOR電路202及204、以及替代函數(shù)處理部 203進(jìn)行的擾頻稱為“第1擾頻”。另外,將通過該第1擾頻而得到的數(shù)據(jù)稱為“第1擾頻數(shù)據(jù)”。密鑰寄存器211是保存有w-bit擾頻密鑰數(shù)據(jù)Kl的寄存器。該密鑰寄存器211 中預(yù)先保存的擾頻密鑰數(shù)據(jù)Kl (在以下的說明中,有時也將該密鑰數(shù)據(jù)Kl稱為“第2擾頻密鑰數(shù)據(jù)”)也能夠變更。XOR電路212求出和地址總線11輸出的地址數(shù)據(jù)相同的地址數(shù)據(jù)、與密鑰寄存器 211中保存的第2擾頻密鑰數(shù)據(jù)的每一位的異或。替代函數(shù)處理部213進(jìn)行使從XOR電路212輸出的w_bit數(shù)據(jù)的輸入,與由w_bit 位表現(xiàn)的任意一個數(shù)據(jù)唯一對應(yīng)地輸出的替代轉(zhuǎn)換處理。在該替代函數(shù)處理部213中進(jìn)行的替代轉(zhuǎn)換Fl也與替代轉(zhuǎn)換FO同樣,一般將輸入輸出的關(guān)系設(shè)為非線形。該替代函數(shù)處理部213也通過將基本邏輯元件組合而構(gòu)成,如果處理速度不受限,則例如也可以參照存儲裝置存儲的對輸入輸出的對應(yīng)關(guān)系進(jìn)行了預(yù)先定義的表來進(jìn)行替代轉(zhuǎn)換。其中,在以下的說明中,將從該替代函數(shù)處理部213輸出的數(shù)據(jù)中、與地址數(shù)據(jù)對應(yīng)的該數(shù)據(jù)稱為“第2 掩碼數(shù)據(jù)”。XOR電路214通過求出基于第1擾頻而得到的第1擾頻數(shù)據(jù)、與從替代函數(shù)處理部 213輸出的第2掩碼數(shù)據(jù)的每一位的異或,來進(jìn)行該第1擾頻數(shù)據(jù)的擾頻。在以下的說明中,將由密鑰寄存器211JOR電路212及214、以及替代函數(shù)處理部 213進(jìn)行的擾頻稱為“第2擾頻”。另外,將通過該第2擾頻而得到的數(shù)據(jù)稱為“第2擾頻數(shù)據(jù)”。在圖3的構(gòu)成中,通過該第2擾頻而得到的第2擾頻數(shù)據(jù)是對處理器100輸出的寫入數(shù)據(jù)進(jìn)行擾頻后的加密數(shù)據(jù),該數(shù)據(jù)被從數(shù)據(jù)總線12向外部RAM2輸出。該加密數(shù)據(jù)被存儲到外部RAM2中的、由地址總線11輸出的地址數(shù)據(jù)確定的存儲位置。這樣,圖3所示的擾頻部200的構(gòu)成是將圖1所示的現(xiàn)有構(gòu)成縱列2級連接而成的構(gòu)成。因此,為了對通過該構(gòu)成而得到的加密數(shù)據(jù)進(jìn)行去擾頻從而得到原來的寫入數(shù)據(jù), 只要以與圖3相反的順序進(jìn)行圖1所示的現(xiàn)有構(gòu)成中的去擾頻即可。在圖3的構(gòu)成中,使用密鑰長度都是w-bit的第1擾頻密鑰數(shù)據(jù)以及第2擾頻密鑰數(shù)據(jù),來進(jìn)行寫入數(shù)據(jù)的擾頻。因此,作為擾頻部200整體,寫入數(shù)據(jù)的擾頻所使用的擾頻密鑰數(shù)據(jù)的密鑰長度在表觀上變成2倍(2w-bit),但由于圖3的構(gòu)成能夠向與其等效的圖1的構(gòu)成轉(zhuǎn)換,所以和圖1相比安全性不變。接著,對圖4進(jìn)行說明。圖4是圖解表示了圖2所示的擾頻部200的構(gòu)成的第2 例。在圖4中,對與圖3所示的要素相同的構(gòu)成要素賦予了相同的附圖標(biāo)記。對這些構(gòu)成要素的一部分省略說明。該圖4所示的構(gòu)成與圖3所示的構(gòu)成的第1例的不同之處在于追加了對通過第 1擾頻而得到的第1擾頻數(shù)據(jù)一對一地進(jìn)行替代轉(zhuǎn)換的替代函數(shù)處理部220。而且,在該圖 4所示的構(gòu)成的第2擾頻中,通過由XOR電路214求出與第2掩碼數(shù)據(jù)的每一位的異或來對替代函數(shù)處理部220對第1擾頻數(shù)據(jù)轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行擾頻,從而得到第2擾頻數(shù)據(jù)。而且,該第2擾頻數(shù)據(jù)成為對處理器100輸出的寫入數(shù)據(jù)進(jìn)行擾頻后的加密數(shù)據(jù)。替代函數(shù)處理部220進(jìn)行使w-bit第1擾頻數(shù)據(jù)的輸入,與由w-bit位表現(xiàn)的任意一個數(shù)據(jù)一對一對應(yīng)地輸出的替代轉(zhuǎn)換處理。由該替代函數(shù)處理部220進(jìn)行的替代轉(zhuǎn)換 G也和替代轉(zhuǎn)換F0、F1同樣,一般將輸入輸出的關(guān)系設(shè)為非線形。該替代函數(shù)處理部220通過將基本邏輯元件組合而構(gòu)成,如果處理速度不受限,則例如也可以參照存儲裝置預(yù)先保存的對輸入輸出的對應(yīng)關(guān)系進(jìn)行了預(yù)先定義的表來進(jìn)行替代轉(zhuǎn)換。不過,由于該替代函數(shù)處理部220進(jìn)行向外部RAM2寫入的數(shù)據(jù)的替代轉(zhuǎn)換,所以優(yōu)選轉(zhuǎn)換處理為高速。在該圖4所示的構(gòu)成中,在替代函數(shù)處理部220對通過第1擾頻進(jìn)行了擾頻后的寫入數(shù)據(jù)(即第1擾頻數(shù)據(jù))實施了替代轉(zhuǎn)換的基礎(chǔ)上,第2擾頻進(jìn)一步進(jìn)行擾頻。由此, 能夠防止針對寫入數(shù)據(jù)的處理成為與掩碼值的單純的異或。即,根據(jù)該圖4所示的構(gòu)成,擾頻部200的輸入輸出中的寫入數(shù)據(jù)與加密數(shù)據(jù)的關(guān)系除了取決于地址數(shù)據(jù)之外,還取決于寫入數(shù)據(jù)。因此,具有圖4所示的構(gòu)成的擾頻部200所進(jìn)行的數(shù)據(jù)擾頻對選擇明文電文攻擊具有對抗性。另外,由于替代函數(shù)處理部220的輸入輸出不從擾頻部向外露出,所以能夠防止對替代函數(shù)處理部220的攻擊。即,在將替代函數(shù)處理部220設(shè)置到204的左側(cè)或214的右側(cè)的情況下,成為針對替代函數(shù)處理部220的單純差分攻擊脆弱的構(gòu)成。因此,在圖4 所示的構(gòu)成中,需要將替代函數(shù)處理部220設(shè)置在204與214之間。并且,在該圖4所示的構(gòu)成中,作為擾頻部200整體,寫入數(shù)據(jù)的擾頻所使用的擾頻密鑰數(shù)據(jù)的密鑰長度成為2倍(2w-bit)。因此,對密鑰窮舉搜索攻擊的對抗性與圖1的現(xiàn)有構(gòu)成相比得以提高。接下來,對被具有該圖4所示的構(gòu)成的擾頻部200的MPU芯片1存儲在外部RAM2 中的加密數(shù)據(jù)的去擾頻進(jìn)行說明。圖5是對該加密數(shù)據(jù)進(jìn)行去擾頻的去擾頻部的構(gòu)成圖。在圖5的構(gòu)成中,作為數(shù)據(jù)處理裝置的圖2的MPU芯片1在內(nèi)部具備去擾頻部300。 當(dāng)然也可以取代這樣構(gòu)成,而構(gòu)成為與MPU芯片1獨立的去擾頻裝置中具備去擾頻部300。在圖5中,對與圖4所示的要素相同的構(gòu)成要素賦予了相同的附圖標(biāo)記。省略了這些構(gòu)成要素的一部分的說明。圖5所示的去擾頻部300構(gòu)成為具備密鑰寄存器201及211、X0R電路202、204、 212及214、以及替代函數(shù)處理部203、213及320。其中,地址總線11與圖4所示的同樣,輸出由處理器100輸出的、賦予給外部RAM2的地址數(shù)據(jù)。XOR電路214通過求出與前述第2掩碼數(shù)據(jù)的每一位的異或來對從由地址數(shù)據(jù)確定的外部RAM2的存儲位置讀出的加密數(shù)據(jù)(即前述的第2擾頻數(shù)據(jù))進(jìn)行去擾頻。于是、 得到前述的由替代函數(shù)處理部220進(jìn)行了轉(zhuǎn)換后的第1擾頻數(shù)據(jù)。這里將該去擾頻稱為 “第1去擾頻”,將通過該第1去擾頻而得到的數(shù)據(jù)稱為“中間去擾頻數(shù)據(jù)”。替代函數(shù)處理部320對M)R電路214得到的中間去擾頻數(shù)據(jù),進(jìn)行由替代函數(shù)處理部220實施的替代轉(zhuǎn)換G的逆轉(zhuǎn)換G—1。于是,得到前述的第1擾頻數(shù)據(jù)。這里,對圖6A進(jìn)行說明。圖6A是替代函數(shù)G以及其逆函數(shù)G—1的第1例。其中, 該圖6A的替代函數(shù)G的例子是輸入輸出的字長為4-bit( "0 "(2進(jìn)制下“0000”) “f”(2 進(jìn)制下“1111”)這16個值)的例子。圖6A中表現(xiàn)了替代函數(shù)G例如被輸入“8”時輸出“0”的情況。而且,表現(xiàn)了如果作為該替代函數(shù)G的輸出的“0”被輸入給逆函數(shù)G—1,則輸出對替代函數(shù)G輸入的“8”的情況。在圖6A中,該替代函數(shù)G與其逆函數(shù)G—1的輸入輸出的關(guān)系顯然在“0” “f ”的所有值下都成立。另外,該替代函數(shù)G的輸入輸出關(guān)系也明顯一對一地對應(yīng)。其中,替代函數(shù)處理部320也和替代函數(shù)處理部220同樣,通過將基本邏輯元件組合而構(gòu)成。這里,如果處理速度不受限,則例如也可以參照存儲裝置中存儲的對輸入輸出的對應(yīng)關(guān)系進(jìn)行了預(yù)先定義的表來進(jìn)行替代轉(zhuǎn)換。不過,由于該替代函數(shù)處理部320進(jìn)行從外部RAM2讀出的數(shù)據(jù)的替代轉(zhuǎn)換,所以優(yōu)選轉(zhuǎn)換處理為高速,這也與替代函數(shù)處理部220 同樣。返回到圖5的說明。XOR電路204通過求出與前述的第1掩碼數(shù)據(jù)的每一位的異或,來去擾頻由替代函數(shù)處理部320對中間去擾頻數(shù)據(jù)逆轉(zhuǎn)換后的數(shù)據(jù)。于是,得到在擾頻部200進(jìn)行擾頻動作時處理器100輸出的原來的寫入數(shù)據(jù)。這里將該去擾頻稱為“第2去擾頻”。圖5中表示了構(gòu)成的去擾頻部300所實施的去擾頻動作如以上那樣進(jìn)行。這里,將圖4的擾頻部200的構(gòu)成與圖5的去擾頻部300的構(gòu)成進(jìn)行對比。于是, XOR電路204無論在哪個構(gòu)成中,都求出被輸入的數(shù)據(jù)(在擾頻部200中為寫入數(shù)據(jù),在去
11擾頻部300中為中間去擾頻數(shù)據(jù)的逆轉(zhuǎn)換后的數(shù)據(jù))與前述的第1掩碼數(shù)據(jù)的異或。因此, 擾頻部200的第1擾頻與去擾頻部300的第2去擾頻中可以共享M)R電路204。另外,XOR 電路214無論在哪個構(gòu)成中,都求出被輸入的數(shù)據(jù)(在擾頻部200中是第1擾頻數(shù)據(jù),在去擾頻部300中是從外部RAM2讀出的加密數(shù)據(jù))與前述的第2掩碼數(shù)據(jù)的異或。因此,擾頻部200的第2擾頻與去擾頻部300的第1去擾頻可以共享M)R電路204。這樣,通過在擾頻部200進(jìn)行的擾頻動作與去擾頻部300進(jìn)行的去擾頻動作中共享XOR電路204及214,能夠削減MPU芯片1的電路規(guī)模。并且,由密鑰寄存器201、XOR電路202以及替代函數(shù)處理部203構(gòu)成的用于獲得第1掩碼數(shù)據(jù)的構(gòu)成,在擾頻部200與去擾頻部300中相同。而且,由密鑰寄存器211、X0R 電路212以及替代函數(shù)處理部213構(gòu)成的用于獲得第2掩碼數(shù)據(jù)的構(gòu)成,在擾頻部200與去擾頻部300中也相同。因此,在使擾頻部200與去擾頻部300在單一的MPU芯片1內(nèi)部共存的情況下,能夠共享密鑰寄存器201及211、X0R電路202及212、以及替代函數(shù)處理部 203及213。通過將這些構(gòu)成要素在擾頻部200進(jìn)行的擾頻動作與去擾頻部300進(jìn)行的去擾頻動作中共享,也能夠削減MPU芯片1的電路規(guī)模。另外,也可以在替代函數(shù)處理部220與替代函數(shù)處理部320中,共享對被輸入的數(shù)據(jù)一對一地進(jìn)行替代轉(zhuǎn)換并且該替代轉(zhuǎn)換的正轉(zhuǎn)換與其逆轉(zhuǎn)換為同態(tài)的替代函數(shù)處理部 (這里稱為“同態(tài)替代轉(zhuǎn)換”)。這里,對圖6B進(jìn)行說明。圖6B是替代函數(shù)G以及其逆函數(shù)G—1的第2例。其中,該圖6B的替代函數(shù)G的例子也與圖6A所示的第1例同樣,是輸入輸出的字長為4-bit ("0"(2 進(jìn)制為“0000”) “f” O進(jìn)制為“1111”)這16個值)的例子。圖6B中表現(xiàn)了替代函數(shù)G例如被輸入“0”時輸出“3”的情況。而且,表現(xiàn)了將作為該替代函數(shù)G的輸出的“3”輸入給逆函數(shù)G—1時,輸出對替代函數(shù)G輸入的“0”的情況。 在圖6B中,該替代函數(shù)G與其逆函數(shù)G—1的輸入輸出的關(guān)系顯然在“0” “f”的所有值下都成立。而且,該替代函數(shù)G的輸入輸出關(guān)系也明顯一對一地對應(yīng)。并且,在圖6B的例子中,替代函數(shù)G中的輸入與輸出的對應(yīng)關(guān)系和其逆函數(shù)G—1中的對應(yīng)關(guān)系也明顯相同。因此,該圖6B的替代函數(shù)正轉(zhuǎn)換G與其逆轉(zhuǎn)換G—1同態(tài)。如果構(gòu)成進(jìn)行這樣的同態(tài)替代轉(zhuǎn)換的函數(shù)處理部,則可以在替代函數(shù)處理部220 與替代函數(shù)處理部320中對其共享。即,通過將進(jìn)行同態(tài)替代轉(zhuǎn)換的函數(shù)處理部在擾頻部 200中的替代函數(shù)處理部220與去擾頻部300中的替代函數(shù)處理部320中共享,能夠削減 MPU芯片1的電路規(guī)模。接下來,對由圖4所示的擾頻部200實施的擾頻的安全性進(jìn)行研究。例如,考慮將處理器的字長(即地址數(shù)據(jù)及寫入數(shù)據(jù)的位寬)設(shè)為32-bit的情況。此時,可以將第1擾頻密鑰數(shù)據(jù)以及第2擾頻密鑰數(shù)據(jù)都設(shè)為32-bit。此時,擾頻密鑰數(shù)據(jù)整體的密鑰長度為64-bit。該情況下,如果假設(shè)1秒鐘能夠進(jìn)行1000次擾頻動作,則針對前述的帶密鑰的擾頻算法的密鑰窮舉搜索攻擊需要584,942,417年。另外,即使1秒鐘能夠進(jìn)行1,000, 000, 000次擾頻動作,也需要584年。因此,想要在現(xiàn)實的時間內(nèi)發(fā)現(xiàn)擾頻密鑰數(shù)據(jù)非常困難。其中,對處理器100而言,優(yōu)選是對外部RAM2的訪問為高速的處理器。因此,優(yōu)選由擾頻部200進(jìn)行的擾頻動作以及由去擾頻部300進(jìn)行的去擾頻動作所需要的時間少。這里,如果將進(jìn)行替代轉(zhuǎn)換或其逆轉(zhuǎn)換的替代函數(shù)處理部203、213、220以及320例如構(gòu)成如以下那樣,則能夠縮短該時間。即,在將字長設(shè)為32-bit的情況下,取代將替代函數(shù)處理部203、213、220以及320 單純地構(gòu)成為32-bit的替代函數(shù),而例如由32-bit的置換函數(shù)與8個4-bit替代函數(shù)的組合進(jìn)行代替。一般而言,替代函數(shù)字長越長,構(gòu)成的復(fù)雜度以指數(shù)級增加,轉(zhuǎn)換所需要的時間也越長。因此,通過將由于只進(jìn)行位的重新排列所以構(gòu)成極其容易且轉(zhuǎn)換時間短的置換函數(shù)、與字長短的替代函數(shù)組合,作為字長長的替代函數(shù)的代用,能夠縮短替代轉(zhuǎn)換所需要的時間。另外,作為代替而使用的替代函數(shù)并不限定于4-bit字長的函數(shù),例如也可以使用2個6-bit替代函數(shù)與4個5-bit替代函數(shù),或者可以使用4個8-bit置換函數(shù)。另外,替代函數(shù)處理部203及213不需要進(jìn)行同態(tài)替代轉(zhuǎn)換,可以進(jìn)行非同態(tài)的替代轉(zhuǎn)換。進(jìn)行非同態(tài)的替代轉(zhuǎn)換的電路有時與同態(tài)的相比處理速度高。接著,對圖7進(jìn)行說明。圖7中圖解表示了圖2所示的擾頻部200的構(gòu)成的第3 例。在圖7中,對與圖4所示的要素相同的構(gòu)成要素賦予了相同的附圖標(biāo)記。省略這些構(gòu)成要素的一部分的說明。圖7所示的擾頻部200的構(gòu)成適合于使擾頻部200同步動作的情況,與圖3所示的構(gòu)成的第1例不同之處在于追加了寄存器205及215。寄存器205中存儲保持有從替代函數(shù)處理部203輸出的第1掩碼數(shù)據(jù)。而在寄存器215中存儲保持有從替代函數(shù)處理部213輸出的第2掩碼數(shù)據(jù)。在圖7所示的構(gòu)成中,進(jìn)行數(shù)據(jù)處理的處理器100利用了在準(zhǔn)備寫入數(shù)據(jù)之前,可以對地址總線11準(zhǔn)備地址數(shù)據(jù)這一一般的特性。S卩,首先進(jìn)行由M)R電路202及204實現(xiàn)的地址數(shù)據(jù)與第1擾頻密鑰數(shù)據(jù)及第2 擾頻密鑰數(shù)據(jù)的異或運算、和該運算結(jié)果通過替代函數(shù)處理部203及213實現(xiàn)的替代轉(zhuǎn)換。 然后,將得到的第1掩碼數(shù)據(jù)以及第2掩碼數(shù)據(jù)分別保存到寄存器205及215中。然后,在從處理器100輸出寫入數(shù)據(jù)時,執(zhí)行XOR電路204的異或運算、其運算結(jié)果通過替代函數(shù)處理部220實施的替代轉(zhuǎn)換、以及基于M)R電路214的異或運算。然后,作為其執(zhí)行結(jié)果,將得到的加密數(shù)據(jù)向RAM2輸出。其中,通過圖7所示的構(gòu)成的擾頻部200的擾頻而得到的加密數(shù)據(jù)的去擾頻,例如可以使用圖5所示的構(gòu)成的去擾頻部300來進(jìn)行。接著,對圖8進(jìn)行說明。圖8中圖解表示了圖2所示的擾頻部200的構(gòu)成的第4 例。在圖8中,對與圖4所示的要素相同的構(gòu)成要素賦予了相同的附圖標(biāo)記。省略了這些構(gòu)成要素的一部分的說明。其中,在這里將圖4所示的擾頻部200的構(gòu)成、即由密鑰寄存器201及211、XOR電路202、204、212及214、以及替代函數(shù)處理部203、213、及220構(gòu)成的結(jié)構(gòu)稱為基本部。S卩,在圖8所示的擾頻部200的構(gòu)成中,將由密鑰寄存器201JOR電路 202及204、以及替代函數(shù)處理部203構(gòu)成的結(jié)構(gòu)稱為第1基本部206-1。另外,在圖8中, 將由密鑰寄存器211、XOR電路212及214、以及替代函數(shù)處理部213及220構(gòu)成的結(jié)構(gòu)稱為第2基本部206-2。另一方面,在圖8中,將由密鑰寄存器221-1、XOR電路222-1及224-1、以及替代函數(shù)處理部223-1及230-1構(gòu)成的結(jié)構(gòu)稱為第1擴展部216-1。而且,在圖8中,將由密鑰寄存器221-2 JOR電路222-2及224-2、以及替代函數(shù)處理部223-2及230-2構(gòu)成的和第1 擴展部216-1相同的結(jié)構(gòu),稱為第2擴展部216-2。S卩,圖8所示的擾頻部200構(gòu)成為具備第1基本部206-1及第2基本部206_2、 和都將對象數(shù)據(jù)擾頻而輸出擾頻數(shù)據(jù)的第1擴展部216-1及第2擴展部216-2。這里,第2基本部206-2被輸入通過由第1基本部206-1進(jìn)行的前述的第1擾頻而獲得的數(shù)據(jù)(即第1擾頻數(shù)據(jù)),作為對象數(shù)據(jù)。而且,第2基本部206-2進(jìn)行前述的第 2擾頻,輸出前述的第2擾頻數(shù)據(jù)。第1擴展部216-1被輸入第2基本部206-2輸出的擾頻數(shù)據(jù)(第2擾頻數(shù)據(jù))作為對象數(shù)據(jù)。在第1擴展部216-1中,替代函數(shù)處理部230-1將該對象數(shù)據(jù)一對一地替代轉(zhuǎn)換,并且密鑰寄存器221-1、XOR電路222-1以及替代函數(shù)處理部223-1生成與地址數(shù)據(jù)對應(yīng)的掩碼數(shù)據(jù)。然后,XOR電路2M-1求出由替代函數(shù)處理部230-1進(jìn)行的替代轉(zhuǎn)換后的數(shù)據(jù)、與該掩碼數(shù)據(jù)的每一位的異或。第1擴展部216-1如此進(jìn)行第2基本部206-2輸出的擾頻數(shù)據(jù)的進(jìn)一步的擾頻。第2擴展部216-2被輸入第1擴展部216-1輸出的擾頻數(shù)據(jù),作為對象數(shù)據(jù)。在第2擴展部216-2中,替代函數(shù)處理部230-2將該對象數(shù)據(jù)一對一地替代轉(zhuǎn)換,并且密鑰寄存器221-2、XOR電路222-2以及替代函數(shù)處理部223-2生成與地址數(shù)據(jù)對應(yīng)的掩碼數(shù)據(jù)。 然后,XOR電路224-2求出由替代函數(shù)處理部230-2進(jìn)行的替代轉(zhuǎn)換后的數(shù)據(jù)、與該掩碼數(shù)據(jù)的每一位的異或。第2擴展部216-2如此進(jìn)行第1擴展部216-1輸出的擾頻數(shù)據(jù)的進(jìn)一步的擾頻。圖8所示的擾頻部200將第2擴展部216_2輸出的擾頻數(shù)據(jù)作為加密數(shù)據(jù),從數(shù)據(jù)總線12向外部RAM2輸出。這樣,圖8所示的擾頻部200的構(gòu)成是在圖4所示的第2構(gòu)成中,將緊接著基本部的擴展部縱列2級連接而成的構(gòu)成。因此,為了對通過該構(gòu)成而得到的加密數(shù)據(jù)進(jìn)行去擾頻,來得到原來的寫入數(shù)據(jù),只要倒序進(jìn)行2次對于擴展部的去擾頻,然后進(jìn)行對于基本部的去擾頻即可。圖8所示的擾頻部200利用4個密鑰寄存器201及211以及221_1及221_2中保存的4個擾頻密鑰數(shù)據(jù),進(jìn)行寫入數(shù)據(jù)的擾頻。因此,作為擾頻部200整體,寫入數(shù)據(jù)的擾頻所使用的擾頻密鑰數(shù)據(jù)的密鑰長度成為4倍(#-bit)。從而,通過采用圖8的構(gòu)成,使得對密鑰窮舉搜索攻擊的對抗性比圖4的構(gòu)成更加提高。接著,對圖9進(jìn)行說明。圖9圖解表示了圖2所示的擾頻部200的構(gòu)成的第5例。 該第5例是將圖8所示的第4例中的擴展部的縱列連接數(shù)擴展為η級的例子。在圖9中,擾頻部200具有基本部206 ;和擴展部216,其具備對對象數(shù)據(jù)進(jìn)行擾頻而輸出擾頻數(shù)據(jù)的η個(其中,η至少為1以上的整數(shù))擴展擾頻部。這里,第η擴展擾頻部構(gòu)成為具備密鑰寄存器221-n、X0R電路222-η及224-η、以及替代函數(shù)處理部223-η及230-η。這里,替代函數(shù)處理部230_η對該第η擴展擾頻部中的成為擾頻對象的對象數(shù)據(jù)一對一地進(jìn)行替代轉(zhuǎn)換。另一方面,密鑰寄存器221-n、XOR電路 222-η以及替代函數(shù)處理部223-η求出與處理器100輸出的地址數(shù)據(jù)對應(yīng)的掩碼數(shù)據(jù)(追加掩碼數(shù)據(jù))。然后,XOR電路通過求出與該追加掩碼數(shù)據(jù)的每一位的異或,來對由替代函數(shù)處理部230-Π對對象數(shù)據(jù)實施替代轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行擾頻,輸出擾頻數(shù)據(jù)(追加擾頻數(shù)據(jù))。其中,此時的對象數(shù)據(jù)是第(n-1)擴展擾頻部輸出的追加擾頻數(shù)據(jù)(另外,在 η = 1時是基本部206輸出的擾頻數(shù)據(jù))。圖9的擾頻部200如以上那樣構(gòu)成,將第η擴展擾頻部獲得的追加擾頻數(shù)據(jù)作為加密數(shù)據(jù),從數(shù)據(jù)總線12向外部RAM2輸出。這樣,圖9所示的擾頻部200的構(gòu)成是在圖4所示的第2構(gòu)成中,將緊接著基本部的擴展部縱列η級連接而成的構(gòu)成。因此,為了對由該構(gòu)成得到的加密數(shù)據(jù)進(jìn)行去擾頻、得到原來的寫入數(shù)據(jù),只要按倒序進(jìn)行η次針對擴展部的去擾頻,然后進(jìn)行針對基本部的去擾頻即可。圖9所示的擾頻部200使用11+2個密鑰寄存器201、211、、221-1、…、221_η中保存的η+2個擾頻密鑰數(shù)據(jù),進(jìn)行寫入數(shù)據(jù)的擾頻。因此,作為擾頻部200整體,寫入數(shù)據(jù)的擾頻所使用的擾頻密鑰數(shù)據(jù)的密鑰長度成為(η+2)倍((n+2)w-bit)。從而,通過采用圖9 的構(gòu)成,對密鑰窮舉搜索攻擊的對抗性與圖4的構(gòu)成相比更加提高。另外,在圖9的構(gòu)成中,為了高速化,也可以在允許的安全性范圍內(nèi)將替代函數(shù)處理部230-n削減到小于η個。而且,本發(fā)明并不限于以上說明的實施方式,在實施階段能夠在不變更其主旨的范圍進(jìn)行各種變形。
權(quán)利要求
1.一種數(shù)據(jù)處理裝置,其特征在于, 具有地址總線,其輸出對存儲裝置賦予的地址數(shù)據(jù);擾頻部,其對寫入數(shù)據(jù)進(jìn)行擾頻從而獲得加密數(shù)據(jù),其中,該寫入數(shù)據(jù)對應(yīng)于由該地址總線所輸出的地址數(shù)據(jù)確定的該存儲裝置的存儲位置;和數(shù)據(jù)總線,其輸出該擾頻部獲得的加密數(shù)據(jù), 該擾頻部具有第1擾頻單元,其通過求出與和該地址數(shù)據(jù)對應(yīng)的第1掩碼數(shù)據(jù)的每一位的異或,來對該寫入數(shù)據(jù)進(jìn)行擾頻從而獲得第1擾頻數(shù)據(jù);第1轉(zhuǎn)換單元,其對該第1擾頻數(shù)據(jù)一對一地進(jìn)行替代轉(zhuǎn)換;和第2擾頻單元,其通過求出與和該地址數(shù)據(jù)對應(yīng)的第2掩碼數(shù)據(jù)的每一位的異或,來對由該第1轉(zhuǎn)換單元針對該第1擾頻數(shù)據(jù)實施轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行擾頻從而獲得第2擾頻數(shù)據(jù),將該第2擾頻數(shù)據(jù)作為該加密數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)處理裝置,其特征在于,該第1擾頻單元對該地址數(shù)據(jù)與第1擾頻密鑰數(shù)據(jù)的每一位的異或進(jìn)行替代轉(zhuǎn)換,求出該第1掩碼數(shù)據(jù),該第2擾頻單元對該地址數(shù)據(jù)與第2擾頻密鑰數(shù)據(jù)的每一位的異或進(jìn)行替代轉(zhuǎn)換,求出該第2掩碼數(shù)據(jù)。
3.根據(jù)權(quán)利要求1所述的數(shù)據(jù)處理裝置,其特征在于,還具有第1去擾頻單元,其通過求出與該第2掩碼數(shù)據(jù)的每一位的異或,來對從由該地址數(shù)據(jù)確定的該存儲裝置的存儲位置讀出的該加密數(shù)據(jù)進(jìn)行去擾頻從而獲得中間去擾頻數(shù)據(jù);逆轉(zhuǎn)換單元,其對該中間去擾頻數(shù)據(jù)進(jìn)行由該第1轉(zhuǎn)換單元實施的替代轉(zhuǎn)換的逆轉(zhuǎn)換;和第2去擾頻單元,其通過求出與該第1掩碼數(shù)據(jù)的每一位的異或,來對由該逆轉(zhuǎn)換單元針對該中間去擾頻數(shù)據(jù)實施逆轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行去擾頻從而獲得該寫入數(shù)據(jù)。
4.根據(jù)權(quán)利要求3所述的數(shù)據(jù)處理裝置,其特征在于, 還具有第1邏輯電路,其求出被輸入的數(shù)據(jù)與該第1掩碼數(shù)據(jù)的每一位的異或;和第2邏輯電路,其求出被輸入的數(shù)據(jù)與該第2掩碼數(shù)據(jù)的每一位的異或, 該第1擾頻單元進(jìn)行的擾頻與該第2去擾頻單元進(jìn)行的去擾頻共享該第1邏輯電路, 該第2擾頻單元進(jìn)行的擾頻與該第1去擾頻單元進(jìn)行的去擾頻共享該第2邏輯電路。
5.根據(jù)權(quán)利要求3所述的數(shù)據(jù)處理裝置,其特征在于,該第1轉(zhuǎn)換單元進(jìn)行的替代轉(zhuǎn)換與該逆轉(zhuǎn)換單元進(jìn)行的逆轉(zhuǎn)換共享同態(tài)替代轉(zhuǎn)換,在該同態(tài)替代轉(zhuǎn)換中,對被輸入的數(shù)據(jù)一對一地進(jìn)行替代轉(zhuǎn)換,該替代轉(zhuǎn)換的正轉(zhuǎn)換與逆轉(zhuǎn)換是同態(tài)的。
6.根據(jù)權(quán)利要求1所述的數(shù)據(jù)處理裝置,其特征在于, 該擾頻部還具有對對象數(shù)據(jù)進(jìn)行擾頻的至少一個擴展擾頻部, 該擴展擾頻部分別具有追加轉(zhuǎn)換單元,其對該對象數(shù)據(jù)一對一地進(jìn)行替代轉(zhuǎn)換;和追加擾頻單元,其通過求出與和該地址數(shù)據(jù)對應(yīng)的追加掩碼數(shù)據(jù)的每一位的異或,來對由該追加轉(zhuǎn)換單元針對該對象數(shù)據(jù)實施轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行擾頻從而獲得追加擾頻數(shù)據(jù), 該擴展擾頻部被輸入該第2擾頻數(shù)據(jù)作為對象數(shù)據(jù),該擾頻部將該擴展擾頻部獲得的追加擾頻數(shù)據(jù)作為該加密數(shù)據(jù)來取代該第2擾頻數(shù)據(jù)。
7.—種去擾頻裝置,用于對被權(quán)利要求1所述的數(shù)據(jù)處理裝置存儲在該存儲裝置中的該加密數(shù)據(jù)進(jìn)行去擾頻,從而獲得該寫入數(shù)據(jù),該去擾頻裝置的特征在于,具有地址總線,其輸出對存儲裝置賦予的地址數(shù)據(jù);第1去擾頻單元,其通過求出與該第2掩碼數(shù)據(jù)的每一位的異或,來對從由該地址數(shù)據(jù)確定的該存儲裝置的存儲位置讀出的該加密數(shù)據(jù)進(jìn)行去擾頻從而獲得中間去擾頻數(shù)據(jù);逆轉(zhuǎn)換單元,其對該中間去擾頻數(shù)據(jù)進(jìn)行由該第1轉(zhuǎn)換單元實施的替代轉(zhuǎn)換的逆轉(zhuǎn)換;和第2去擾頻單元,其通過求出與該第1掩碼數(shù)據(jù)的每一位的異或,來對由該逆轉(zhuǎn)換單元針對該中間去擾頻數(shù)據(jù)實施逆轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行去擾頻從而獲得該寫入數(shù)據(jù)。
8.一種數(shù)據(jù)處理方法,其特征在于,具有地址數(shù)據(jù)輸出步驟,從地址總線輸出對存儲裝置賦予的地址數(shù)據(jù); 擾頻步驟,對寫入數(shù)據(jù)進(jìn)行擾頻來獲得加密數(shù)據(jù),其中,該寫入數(shù)據(jù)對應(yīng)于由該地址總線所輸出的地址數(shù)據(jù)確定的該存儲裝置的存儲位置加密;和加密數(shù)據(jù)輸出步驟,從數(shù)據(jù)總線輸出通過該擾頻步驟獲得的加密數(shù)據(jù), 該擾頻步驟具有第1擾頻步驟,通過求出與和該地址數(shù)據(jù)對應(yīng)的第1掩碼數(shù)據(jù)的每一位的異或,來對該寫入數(shù)據(jù)進(jìn)行擾頻從而獲得第1擾頻數(shù)據(jù);第1轉(zhuǎn)換步驟,對該第1擾頻數(shù)據(jù)一對一地進(jìn)行替代轉(zhuǎn)換;和第2擾頻步驟,通過求出與和該地址數(shù)據(jù)對應(yīng)的第2掩碼數(shù)據(jù)的每一位的異或,來對由該第1轉(zhuǎn)換步驟針對該第1擾頻數(shù)據(jù)實施轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行擾頻從而獲得第2擾頻數(shù)據(jù), 將該第2擾頻數(shù)據(jù)作為該加密數(shù)據(jù)。
9.根據(jù)權(quán)利要求8所述的數(shù)據(jù)處理方法,其特征在于,該第1擾頻步驟對該地址數(shù)據(jù)與第1擾頻密鑰數(shù)據(jù)的每一位的異或進(jìn)行替代轉(zhuǎn)換,求出該第1掩碼數(shù)據(jù),該第2擾頻步驟對該地址數(shù)據(jù)與第2擾頻密鑰數(shù)據(jù)的每一位的異或進(jìn)行替代轉(zhuǎn)換,求出該第2掩碼數(shù)據(jù)。
10.根據(jù)權(quán)利要求8所述的數(shù)據(jù)處理方法,其特征在于,還具有第1去擾頻步驟,通過求出與該第2掩碼數(shù)據(jù)的每一位的異或,來對從由該地址數(shù)據(jù)確定的該存儲裝置的存儲位置讀出的該加密數(shù)據(jù)進(jìn)行去擾頻從而獲得中間去擾頻數(shù)據(jù);逆轉(zhuǎn)換步驟,針對該中間去擾頻數(shù)據(jù)進(jìn)行由該第1轉(zhuǎn)換步驟實施的替代轉(zhuǎn)換的逆轉(zhuǎn)換;和第2去擾頻步驟,通過求出與該第1掩碼數(shù)據(jù)的每一位的異或,來對由該逆轉(zhuǎn)換步驟針對該中間去擾頻數(shù)據(jù)實施逆轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行去擾頻從而獲得該寫入數(shù)據(jù)。
11.根據(jù)權(quán)利要求10所述的數(shù)據(jù)處理方法,其特征在于,該第1擾頻步驟中進(jìn)行的擾頻與該第2去擾頻步驟中進(jìn)行的去擾頻共享求出被輸入的數(shù)據(jù)與該第1掩碼數(shù)據(jù)的每一位的異或的第1邏輯電路,該第2擾頻步驟中進(jìn)行的擾頻與該第1去擾頻步驟中進(jìn)行的去擾頻共享求出被輸入的數(shù)據(jù)與該第2掩碼數(shù)據(jù)的每一位的異或的第2邏輯電路。
12.根據(jù)權(quán)利要求10所述的數(shù)據(jù)處理方法,其特征在于,該第1轉(zhuǎn)換步驟中進(jìn)行的該替代轉(zhuǎn)換與該逆轉(zhuǎn)換步驟中進(jìn)行的該逆轉(zhuǎn)換共享替代函數(shù)部,該替代函數(shù)部是對被輸入的數(shù)據(jù)一對一地進(jìn)行替代轉(zhuǎn)換并且該替代轉(zhuǎn)換與該替代轉(zhuǎn)換的逆轉(zhuǎn)換為同態(tài)的替代函數(shù)部。
13.根據(jù)權(quán)利要求8所述的數(shù)據(jù)處理方法,其特征在于,該擾頻步驟具有對對象數(shù)據(jù)進(jìn)行擾頻的至少一個擴展擾頻步驟,該擴展擾頻步驟分別具有追加轉(zhuǎn)換步驟,對該對象數(shù)據(jù)一對一地進(jìn)行替代轉(zhuǎn)換;和追加擾頻步驟,通過求出與和該地址數(shù)據(jù)對應(yīng)的追加掩碼數(shù)據(jù)的每一位的異或,來對由該追加轉(zhuǎn)換步驟針對該對象數(shù)據(jù)實施轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行擾頻從而獲得追加擾頻數(shù)據(jù),該擴展擾頻步驟將該第2擾頻數(shù)據(jù)作為對象數(shù)據(jù)進(jìn)行擾頻,該擾頻步驟將通過該擴展擾頻步驟而獲得的追加擾頻數(shù)據(jù)作為該加密數(shù)據(jù)來取代該第2擾頻數(shù)據(jù)。
14.一種去擾頻方法,用于對通過權(quán)利要求8所述的數(shù)據(jù)處理方法而存儲在該存儲裝置中的該加密數(shù)據(jù)進(jìn)行去擾頻,獲得該寫入數(shù)據(jù),該去擾頻方法的特征在于,具有地址數(shù)據(jù)輸出步驟,從地址總線輸出對存儲裝置賦予的地址數(shù)據(jù);第1去擾頻步驟,通過求出與該第2掩碼數(shù)據(jù)的每一位的異或,來對從由該地址數(shù)據(jù)確定的該存儲裝置的存儲位置讀出的該加密數(shù)據(jù)進(jìn)行去擾頻從而獲得中間去擾頻數(shù)據(jù);逆轉(zhuǎn)換步驟,針對該中間去擾頻數(shù)據(jù)進(jìn)行由該第1轉(zhuǎn)換步驟實施的替代轉(zhuǎn)換的逆轉(zhuǎn)換;和第2去擾頻步驟,通過求出與該第1掩碼數(shù)據(jù)的每一位的異或,來對由該逆轉(zhuǎn)換步驟針對該中間去擾頻數(shù)據(jù)實施逆轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行去擾頻從而獲得該寫入數(shù)據(jù)。
全文摘要
數(shù)據(jù)處理裝置具有地址總線、擾頻部以及數(shù)據(jù)總線。地址總線輸出對存儲裝置賦予的地址數(shù)據(jù)。擾頻部對與由地址數(shù)據(jù)確定的存儲裝置的存儲位置對應(yīng)的寫入數(shù)據(jù)進(jìn)行擾頻從而獲得加密數(shù)據(jù)。數(shù)據(jù)總線輸出加密數(shù)據(jù)。擾頻部具有第1擾頻部、第1轉(zhuǎn)換部以及第2擾頻部。第1擾頻部求出和地址數(shù)據(jù)對應(yīng)的第1掩碼數(shù)據(jù)與寫入數(shù)據(jù)的每一位的異或,并將其作為第1擾頻數(shù)據(jù)。第1轉(zhuǎn)換部對第1擾頻數(shù)據(jù)一對一地進(jìn)行替代轉(zhuǎn)換。第2擾頻部求出和地址數(shù)據(jù)對應(yīng)的第2掩碼數(shù)據(jù)、與由第1轉(zhuǎn)換部對第1擾頻數(shù)據(jù)實施轉(zhuǎn)換后的數(shù)據(jù)的每一位的異或,將獲得的第2擾頻數(shù)據(jù)作為加密數(shù)據(jù)而輸出。
文檔編號G09C1/00GK102356418SQ20098015815
公開日2012年2月15日 申請日期2009年3月23日 優(yōu)先權(quán)日2009年3月23日
發(fā)明者下山武司, 古川和快, 武仲正彥 申請人:富士通株式會社