亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

加密處理設(shè)備、加密處理方法和程序的制作方法

文檔序號:7989281閱讀:264來源:國知局
加密處理設(shè)備、加密處理方法和程序的制作方法
【專利摘要】實現(xiàn)了加密處理配置的小型化。包括:加密處理單元,被配置為將要進(jìn)行數(shù)據(jù)處理的數(shù)據(jù)的構(gòu)成位劃分為多個行,并將所述構(gòu)成位輸入到所述多個行中,并且針對每一行重復(fù)執(zhí)行對數(shù)據(jù)的數(shù)據(jù)轉(zhuǎn)換處理;其中,所述加密處理單元包括:F函數(shù)執(zhí)行單元,用于輸入來自構(gòu)成所述多個行的一行的數(shù)據(jù),并且生成轉(zhuǎn)換后數(shù)據(jù),XOR計算單元,用于執(zhí)行與對應(yīng)于來自所述F函數(shù)的輸出的其它行的數(shù)據(jù)的XOR計算,中間數(shù)據(jù)存儲寄存器,用于在所述F函數(shù)執(zhí)行單元中生成轉(zhuǎn)換后數(shù)據(jù)的處理期間,存儲中間數(shù)據(jù),以及逆計算執(zhí)行單元,用于基于存儲在中間存儲寄存器中的數(shù)據(jù),計算關(guān)于所述F函數(shù)執(zhí)行單元的輸入數(shù)據(jù)。通過逆計算執(zhí)行單元中的逆計算可計算F函數(shù)執(zhí)行單元的輸入值,這使得能夠減少用于存儲該數(shù)據(jù)的寄存器。
【專利說明】加密處理設(shè)備、加密處理方法和程序
【技術(shù)領(lǐng)域】
[0001]本公開涉及一種加密處理設(shè)備、加密處理方法和程序。更具體地,這涉及用于執(zhí)行共享秘鑰加密的加密處理設(shè)備、加密處理方法和程序。
【背景技術(shù)】
[0002]隨著信息社會的不斷發(fā)展,對用于安全地保護(hù)使用的信息的信息安全技術(shù)的需要增加。信息安全技術(shù)的一個構(gòu)成元素是加密技術(shù),并且目前各種產(chǎn)品和系統(tǒng)都使用加密技術(shù)。
[0003]雖然存在各種類型的加密處理算法,但是基本技術(shù)之一被稱為共享密鑰塊加密。根據(jù)共享密鑰塊加密,用于加密的密鑰和用于解密的密鑰是共享項。在加密處理和解密處理兩者中,根據(jù)這些共享密鑰生成多個密鑰,并且以諸如64位、128位、256位等的特定塊單位為塊數(shù)據(jù)單位,重復(fù)執(zhí)行數(shù)據(jù)轉(zhuǎn)換處理。
[0004]作為代表性共享密鑰塊加密算法,已知作為以前的美國標(biāo)準(zhǔn)的DES (數(shù)據(jù)加密標(biāo)準(zhǔn))和作為目前的美國標(biāo)準(zhǔn)的AES(高級加密標(biāo)準(zhǔn))。不斷提出其它各種共享密鑰塊加密,由Sony公司在2007年提出的CLEFIA也是一種共享密鑰塊加密。
[0005]這些種類的共享密鑰塊加密算法主要由加密處理單元和密鑰安排單元構(gòu)成,加密處理單元包括用于重復(fù)執(zhí)行輸入數(shù)據(jù)的轉(zhuǎn)換的輪函數(shù)執(zhí)行單元,密鑰安排單元用于生成關(guān)于輪函數(shù)單元要在每一輪應(yīng)用的輪密鑰。密鑰安排單元首先生成位計數(shù)按照作為秘密密鑰的主密鑰(主密鑰)增加的擴(kuò)展密鑰,并且基于所生成的擴(kuò)展密鑰,生成關(guān)于加密處理單元在每個輪函數(shù)單元處要應(yīng)用的輪密鑰(二次密鑰)。
[0006]作為這些種類的算法的具體配置,已知包括線性轉(zhuǎn)換單元和非線性轉(zhuǎn)換單元的用于重復(fù)執(zhí)行輪函數(shù)的配置。代表性結(jié)構(gòu)例如包括Feistel結(jié)構(gòu)和擴(kuò)展Feistel結(jié)構(gòu)。Feistel結(jié)構(gòu)和擴(kuò)展Feistel結(jié)構(gòu)包括通過包括作為數(shù)據(jù)轉(zhuǎn)換函數(shù)的F函數(shù)的簡單輪函數(shù)的重復(fù)將明文轉(zhuǎn)換為密文的結(jié)構(gòu)。線性轉(zhuǎn)換處理和非線性轉(zhuǎn)換處理由F函數(shù)執(zhí)行。此外,NPLl和NPL2是公開應(yīng)用Feistel結(jié)構(gòu)和擴(kuò)展Feistel結(jié)構(gòu)的加密處理的文獻(xiàn)的示例。
[0007]存在軟件實現(xiàn)和硬件實現(xiàn)兩種類型的加密算法的實施方式。對于硬件實現(xiàn),通過設(shè)計這種實現(xiàn)、使得電路規(guī)模盡可能小,當(dāng)作為硬件來實現(xiàn)時,可以降低成本,并且可以預(yù)期低能量消耗。因此,不管是新算法、還是已有算法,提出了進(jìn)行小型化的各種實現(xiàn)方法。
[0008]例如,Hamalainen、Alho、Hannikainen、Hamalainen等提出 了 與具有代替置換網(wǎng)絡(luò)(SPN)結(jié)構(gòu)的AES加密相對應(yīng)的小型化方法。在NPL3 “Panu Hamalainen, TimoAlho, Marko Hannikainen, and Timo D.Hamalainen.Design and implementation oflow-area and low-power AESencryption hardware core.1n DSD,pages577_583.1EEEComputerSociety, 2006.9”中,公開了關(guān)于這種小型化方法的細(xì)節(jié)。
[0009]根據(jù)公開的這種實現(xiàn)方法,通過以每8位為計算單位對AES128位塊加密進(jìn)行處理,來實現(xiàn)電路規(guī)模的小型化。來自Hamalainen等的實現(xiàn)方法也可以應(yīng)用于具有與SPN結(jié)構(gòu)不同的擴(kuò)展Feistel結(jié)構(gòu)的CLEFIA和其它。[0010]然而,如果簡單化地應(yīng)用已有技術(shù),則除了塊長度的寄存器,在非線性處理單元中存儲F函數(shù)計算的中間值所需的寄存器也增加。例如,當(dāng)考慮到CLEFIA中的應(yīng)用時,除了128位等值塊長度寄存器,32位等值寄存器也增加。
[0011]引用文獻(xiàn)列表
[0012]非專利文獻(xiàn)
[0013]NPLl:K.Nybergj "Generalized Feistel Networks'ASIACRYPT’ 96,SpringerVerlag, 1996,pp.91-104。
[0014]NPL2:Yuliang Zheng, Tsutomu Matsumotoj Hideki Ima1: On theConstruetionof Block Ciphers Provably Secure and Not Relying on AnyUnproved Hypotheses.CRYPT01989:461-480。
[0015]NPL3:Panu Hamalainen, Timo Alho, Marko Hannikainen, andTimo D.Hamalainen.Design and implementation of low-area andlow-power AES encryption hardwarecore.1n DSDjpages577_583.1EEEComputer Society,2006.9。

【發(fā)明內(nèi)容】

[0016]技術(shù)問題
[0017]本公開例如是考慮前述情形的結(jié)果,本公開的目的在于提供一種加密處理設(shè)備、加密處理方法和程序,其可實現(xiàn)如下硬件配置,在該硬件配置中例如可關(guān)于諸如CLEFIA的具有擴(kuò)展Feistel結(jié)構(gòu)的加密算法預(yù)期比已有技術(shù)的小型化更小的小型化。
[0018]問題的解決方案
[0019]具體地,例如,通過插入用于根據(jù)當(dāng)前計算中的F函數(shù)的中間值對到F函數(shù)中的輸入進(jìn)行解碼的電路,來實現(xiàn)不需要用于塊長度的寄存器之外的寄存器的實現(xiàn)方法。其結(jié)果是,由于使用這種結(jié)構(gòu)導(dǎo)致寄存器減少,可以預(yù)期電路規(guī)模的小型化。
[0020]問題的解決方案
[0021]本公開的第一方面是一種加密處理設(shè)備,包括:
[0022]加密處理單元,被配置為將要進(jìn)行數(shù)據(jù)處理的數(shù)據(jù)的構(gòu)成位劃分為多個行,并將所述構(gòu)成位輸入到所述多個行中,并且針對每一行重復(fù)執(zhí)行對數(shù)據(jù)的數(shù)據(jù)轉(zhuǎn)換處理;
[0023]其中,所述加密處理單元包括:
[0024]F函數(shù)執(zhí)行單元,用于輸入來自構(gòu)成所述多個行的一行的數(shù)據(jù),
[0025]XOR計算單元,用于執(zhí)行與其他行的數(shù)據(jù)的XOR計算,所述其他行的數(shù)據(jù)對應(yīng)于來自所述F函數(shù)的輸出,
[0026]中間數(shù)據(jù)存儲寄存器,用于在所述F函數(shù)執(zhí)行單元中生成轉(zhuǎn)換后數(shù)據(jù)的處理期間,存儲中間數(shù)據(jù),以及
[0027]逆計算執(zhí)行單元,用于基于存儲在中間存儲寄存器中的數(shù)據(jù),計算關(guān)于所述F函數(shù)執(zhí)行單元的輸入數(shù)據(jù)。
[0028]此外,對于根據(jù)本公開的加密處理設(shè)備的實施例,所述F函數(shù)執(zhí)行單元包括S-箱,所述S-箱用于執(zhí)行對所述F函數(shù)執(zhí)行單元的輸入數(shù)據(jù)的非線性轉(zhuǎn)換處理,所述中間數(shù)據(jù)存儲寄存器存儲來自所述S-箱的輸出值作為所述中間數(shù)據(jù),并且所述逆計算執(zhí)行單元通過包括經(jīng)由所述S-箱的所述非線性轉(zhuǎn)換處理的逆計算的計算處理,來計算所述F函數(shù)執(zhí)行單元的輸入數(shù)據(jù)。
[0029]此外,對于根據(jù)本公開的加密處理設(shè)備的實施例,所述F函數(shù)執(zhí)行單元包括非線性轉(zhuǎn)換單元和線性轉(zhuǎn)換單元,并且包括用于作為所述中間數(shù)據(jù)存儲來自所述非線性轉(zhuǎn)換單元的輸出的寄存器,所述線性轉(zhuǎn)換單元對存儲在所述寄存器中的值執(zhí)行線性轉(zhuǎn)換處理,并且逆計算單元通過對存儲在所述寄存器中的值的計算處理,來計算所述F函數(shù)的輸入數(shù)據(jù)。
[0030]此外,對于根據(jù)本公開的加密處理設(shè)備的實施例,所述F函數(shù)執(zhí)行單元在非線性轉(zhuǎn)換單元中對與所述F函數(shù)執(zhí)行單元相對應(yīng)的輸入執(zhí)行非線性轉(zhuǎn)換處理,并且其還是用于在線性轉(zhuǎn)換單元中執(zhí)行線性轉(zhuǎn)換處理的SP類型的F函數(shù)。
[0031]此外,對于根據(jù)本公開的加密處理設(shè)備的實施例,所述F函數(shù)執(zhí)行單元在非線性轉(zhuǎn)換單元中對與所述F函數(shù)執(zhí)行單元相對應(yīng)的輸入執(zhí)行非線性轉(zhuǎn)換處理,并且其還是用于在線性轉(zhuǎn)換單元中執(zhí)行線性轉(zhuǎn)換處理的SPS類型的F函數(shù)。
[0032]此外,對于根據(jù)本公開的加密處理設(shè)備的實施例,所述F函數(shù)執(zhí)行單元包括與從外部輸入的輪密鑰的XOR計算單元。
[0033]此外,對于根據(jù)本公開的加密處理設(shè)備的實施例,所述F函數(shù)執(zhí)行單元包括多個非線性計算單元的重復(fù)結(jié)構(gòu)。
[0034]此外,對于根據(jù)本公開的加密處理設(shè)備的實施例,所述加密處理單元執(zhí)行用于將作為輸入數(shù)據(jù)的明文轉(zhuǎn)換為密文的加密處理,并且執(zhí)行用于將作為輸入數(shù)據(jù)的密文轉(zhuǎn)換為明文的解密處理。
[0035]此外,本公開的第二方面是一種在加密處理設(shè)備中執(zhí)行的加密處理方法,所述加密處理方法包括:
[0036]加密處理步驟,其中,加密處理單元被配置為將要進(jìn)行數(shù)據(jù)處理的數(shù)據(jù)的構(gòu)成位劃分為多個行,并將所述構(gòu)成位輸入到所述多個行中,并且針對每一行重復(fù)執(zhí)行對數(shù)據(jù)的數(shù)據(jù)轉(zhuǎn)換處理;
[0037]其中,所述加密處理步驟包括:
[0038]F函數(shù)執(zhí)行步驟,用于輸入來自構(gòu)成所述多個行的一行的數(shù)據(jù),并且生成轉(zhuǎn)換后數(shù)據(jù),
[0039]XOR計算步驟,用于執(zhí)行與對應(yīng)于來自所述F函數(shù)的輸出的其它行數(shù)據(jù)的XOR計算,
[0040]用于在所述F函數(shù)執(zhí)行單元中生成轉(zhuǎn)換后數(shù)據(jù)的處理期間,將中間數(shù)據(jù)存儲在中間數(shù)據(jù)存儲寄存器中的步驟,以及
[0041]逆計算執(zhí)行步驟,用于基于存儲在中間存儲寄存器中的數(shù)據(jù),計算關(guān)于所述F函數(shù)執(zhí)行單元的輸入數(shù)據(jù)。
[0042]此外,本公開的第三方面是一種用于在加密處理設(shè)備中執(zhí)行加密處理的程序,所述程序包括:
[0043]加密處理步驟,其中,加密處理單元被配置為將要進(jìn)行數(shù)據(jù)處理的數(shù)據(jù)的構(gòu)成位劃分為多個行,并將所述構(gòu)成位輸入到所述多個行中,并且針對每一行重復(fù)執(zhí)行對數(shù)據(jù)的數(shù)據(jù)轉(zhuǎn)換處理;
[0044]其中,所述加密處理步驟包括:[0045]F函數(shù)執(zhí)行步驟,用于輸入來自構(gòu)成所述多個行的一行的數(shù)據(jù),并且生成轉(zhuǎn)換后數(shù)據(jù),
[0046]XOR計算步驟,用于執(zhí)行與對應(yīng)于來自所述F函數(shù)的輸出的其它行的數(shù)據(jù)的XOR計算,
[0047]用于在所述F函數(shù)執(zhí)行單元中生成轉(zhuǎn)換后數(shù)據(jù)的處理期間,將中間數(shù)據(jù)存儲在中間數(shù)據(jù)存儲寄存器中的步驟,以及
[0048]逆計算執(zhí)行步驟,用于基于存儲在中間存儲寄存器中的數(shù)據(jù),計算關(guān)于所述F函數(shù)執(zhí)行單元的輸入數(shù)據(jù)。
[0049]此外,根據(jù)本公開的程序是例如通過記錄介質(zhì)向例如能夠執(zhí)行各種程序代碼的計算機(jī)系統(tǒng)或信息處理設(shè)備提供的程序。通過使用信息處理設(shè)備或計算機(jī)系統(tǒng)中的程序執(zhí)行單元執(zhí)行程序,通過這種程序來實現(xiàn)處理。
[0050]通過基于稍后描述的本發(fā)明的實施例和附圖的詳細(xì)描述,本公開的其它目的、特征和優(yōu)點(diǎn)將變得清楚。此外,關(guān)于本說明書的系統(tǒng)是多個設(shè)備的邏輯組合配置,因此設(shè)備的每個配置不局限于被容納在同一物理單元內(nèi)。
[0051]發(fā)明的有益效果
[0052]根據(jù)本公開的實施例,實現(xiàn)了加密處理配置的小型化。
[0053]具體地,包括:加密處理單元,被配置為將要進(jìn)行數(shù)據(jù)處理的數(shù)據(jù)的構(gòu)成位劃分為多個行,并將所述構(gòu)成位輸入到所述多個行中,并且針對每一行重復(fù)執(zhí)行對數(shù)據(jù)的數(shù)據(jù)轉(zhuǎn)換處理;其中,所述加密處理單元包括:F函數(shù)執(zhí)行單元,用于輸入來自構(gòu)成所述多個行的一行的數(shù)據(jù),XOR計算單元,用于執(zhí)行與對應(yīng)于來自所述F函數(shù)的輸出的其它行的數(shù)據(jù)的XOR計算,中間數(shù)據(jù)存儲寄存器,用于在所述F函數(shù)執(zhí)行單元中生成轉(zhuǎn)換后數(shù)據(jù)的處理期間,存儲中間數(shù)據(jù),以及逆計算執(zhí)行單元,用于基于存儲在中間存儲寄存器中的數(shù)據(jù),計算關(guān)于所述F函數(shù)執(zhí)行單元的輸入數(shù)據(jù)。通過逆計算執(zhí)行單元中的逆計算可計算F函數(shù)執(zhí)行單元的輸入值,這使得能夠減少用于存儲該數(shù)據(jù)的寄存器,因此實現(xiàn)了加密處理配置的小型化。
【專利附圖】

【附圖說明】
[0054]圖1是描述與k位的密鑰長度相對應(yīng)的η位共享密鑰塊加密算法的圖。
[0055]圖2是描述對應(yīng)于圖1所示的與k位的密鑰長度相對應(yīng)的η位共享密鑰塊加密算法的解密算法的圖。
[0056]圖3是描述密鑰安排單元和數(shù)據(jù)加密單元之間的關(guān)系的圖。
[0057]圖4是描述數(shù)據(jù)加密單元的示例配置的圖。
[0058]圖5是描述SPN結(jié)構(gòu)輪函數(shù)的示例的圖。
[0059]圖6是描述Feistel結(jié)構(gòu)輪函數(shù)的示例的圖。
[0060]圖7是描述擴(kuò)展Feistel結(jié)構(gòu)的示例的圖。
[0061]圖8是描述擴(kuò)展Feistel結(jié)構(gòu)的示例的圖。
[0062]圖9是描述非線性轉(zhuǎn)換單元的示例配置的圖。
[0063]圖10是描述線性轉(zhuǎn)換處理單元的示例配置的圖。
[0064]圖11是描述共享密鑰塊加密的圖。[0065]圖12是描述Feistel結(jié)構(gòu)的圖。
[0066]圖13是描述擴(kuò)展Feistel結(jié)構(gòu)的圖。
[0067]圖14是描述應(yīng)用SPN結(jié)構(gòu)的AES加密算法中的輪函數(shù)的結(jié)構(gòu)的圖。
[0068]圖15是示出執(zhí)行由Hamalainen等提出的AES加密的數(shù)據(jù)加密單元的數(shù)據(jù)路徑的圖。
[0069]圖16是描述數(shù)據(jù)加密單元的配置示例的圖。
[0070]圖17是示出將來自Hamalainen等的實現(xiàn)方法應(yīng)用于4行擴(kuò)展Feistel結(jié)構(gòu)時的數(shù)據(jù)計算單元電路的概覽圖的圖。
[0071]圖18是描述輪函數(shù)內(nèi)的F函數(shù)的具體示例的圖。
[0072]圖19是示出的將與本公開的實施例相關(guān)的加密處理配置應(yīng)用于具有圖18所示的F函數(shù)的4行擴(kuò)展Feistel結(jié)構(gòu)時的數(shù)據(jù)計算單元電路的概覽圖的圖。
[0073]圖20是描述輪函數(shù)的圖。
[0074]圖21是描述SPS類型的F函數(shù)的圖。
[0075]圖22是描述將根據(jù)本公開的方法應(yīng)用于在圖21中公開的SPS類型的F函數(shù)時的可能數(shù)據(jù)路徑的示例的圖。
[0076]圖23是描述輸入了多個密鑰插入的SPS類型的F函數(shù)的圖。
[0077]圖24是描述將根據(jù)本公開的方法應(yīng)用于在圖23中公開的SPS類型的F函數(shù)時的可能數(shù)據(jù)路徑的示例的圖。
[0078]圖25是描述緊接在向F函數(shù)中輸入了密鑰插入之后的SP類型的F函數(shù)的圖。
[0079]圖26是描述將根據(jù)本公開的方法應(yīng)用于在圖25中公開的SP類型的F函數(shù)時的可能數(shù)據(jù)路徑的示例的圖。
[0080]圖27是描述F函數(shù)的示例配置的圖。
[0081]圖28是描述將根據(jù)本公開的方法應(yīng)用于在圖27中公開的F函數(shù)時的可能數(shù)據(jù)路徑的示例的圖。
[0082]圖29是描述F函數(shù)的配置示例的圖。
[0083]圖30是描述一輪置換的配置示例的圖。
[0084]圖31是描述將根據(jù)本公開的方法應(yīng)用于在圖30中公開的具有輪置換的配置時的可能數(shù)據(jù)路徑的示例的圖。
[0085]圖32是示出作為加密處理設(shè)備的IC模塊700的示例配置的圖。
【具體實施方式】
[0086]下文中,參考附圖詳細(xì)描述與本公開相關(guān)的加密處理設(shè)備、加密處理方法和程序。將根據(jù)以下項目進(jìn)行描述。
[0087]1.共享密鑰塊加密概覽
[0088]2.共享密鑰塊加密結(jié)構(gòu)和根據(jù)相關(guān)技術(shù)的小型化實現(xiàn)方法的概覽
[0089]3.實現(xiàn)寄存器減少的加密處理配置的示例
[0090]4.對根據(jù)本公開的技術(shù)的優(yōu)點(diǎn)的總結(jié)
[0091]5.其它實施例
[0092]6.加密處理設(shè)備的配置示例[0093]7.關(guān)于本公開的配置的結(jié)論
[0094][1.共享密鑰塊加密概覽]
[0095]首先,描述共享密鑰塊加密的概覽。
[0096](1-1.共享密鑰塊加密)
[0097]下面的定義指明了哪個在此指定了共享密鑰塊加密(下文中稱為塊加密)。
[0098]塊加密獲得明文P和密鑰K作為輸入,并且輸出密文C。將明文和密文的位長度稱為塊大小,將其寫為η。η是通常作為針對每個塊加密算法預(yù)先確定的一個值的任意整數(shù)值。有時將塊長度是η塊加密的這種情況稱為η位塊加密。
[0099]將密鑰的位長度表示為k。密鑰具有任意整數(shù)值。共享密鑰塊加密算法可以支持一個或多個密鑰大小。例如,對于一些塊加密算法A,塊大小是n=128,因此支持密鑰大小k=128、k=192或k=256的配置是可能的。
[0100]明文P:n位
[0101]密文C:n位
[0102]密鑰K:k位
[0103]圖1示出了與k位的密鑰長度相對應(yīng)的η位共享密鑰塊加密算法E的圖。
[0104]可以將與加密算法E相對應(yīng)的解密算法D定義為加密算法E的逆函數(shù)Ε—1,其作為輸入接收密文C和密鑰K,并且輸出明文P。圖2示出了與圖1所示的加密算法E相對應(yīng)的解密算法D的圖。
[0105](1-2.內(nèi)部配置)
[0106]將塊加密視為劃分為兩個部分。一個是“密鑰安排單元”,向其輸入密鑰K,并且其通過根據(jù)某些事先確定的步驟擴(kuò)展位長度來輸出擴(kuò)展密鑰K’ (位長度K’),另一個是“數(shù)據(jù)加密單元”,其接收明文P和來自密鑰安排單元的擴(kuò)展的密鑰K’,進(jìn)行數(shù)據(jù)轉(zhuǎn)換,并且輸出密文C。
[0107]在圖3中示出了這兩個部分之間的關(guān)系。
[0108](1-3.數(shù)據(jù)加密單元)
[0109]可以將在下面的實施例中使用的數(shù)據(jù)加密單元劃分為稱為輪函數(shù)的處理單元。輪函數(shù)作為輸入接收兩個單位的數(shù)據(jù),在內(nèi)部進(jìn)行處理,并且輸出一個單位的數(shù)據(jù)。輸入數(shù)據(jù)的一部分是當(dāng)前正在加密的η位數(shù)據(jù),這導(dǎo)致如下配置:提供來自一些輪的輪函數(shù)的輸出作為針對下一輪的輸入。輸入數(shù)據(jù)的另一部分用作從密鑰安排器輸出的擴(kuò)展密鑰的部分的數(shù)據(jù),將該密鑰數(shù)據(jù)稱為輪密鑰。此外,將輪函數(shù)的總數(shù)稱為總輪數(shù),其是針對每個加密算法預(yù)先確定的值。這里,將總輪數(shù)表示為R。
[0110]當(dāng)從數(shù)據(jù)加密單元的輸入側(cè)看時,數(shù)據(jù)加密單元的概覽如在圖4中所示,其中,將第一輪的輸入數(shù)據(jù)指定為X1,將在輪數(shù)為i的輪函數(shù)中輸入的數(shù)據(jù)指定為Xi,并且將輪密鑰指定為RKiO
[0111](1-4.輪函數(shù))
[0112]依據(jù)塊加密算法,輪函數(shù)可以具有各種形式??梢酝ㄟ^該加密算法采用的結(jié)構(gòu)來對輪函數(shù)進(jìn)行分類。這里作為示例使用的一般結(jié)構(gòu)是SPN結(jié)構(gòu)、Feistel結(jié)構(gòu)和擴(kuò)展Feistel 結(jié)構(gòu)。
[0113](A) SPN結(jié)構(gòu)輪函數(shù)[0114]這種結(jié)構(gòu)對輪密鑰和所有η位輸入數(shù)據(jù),應(yīng)用線性轉(zhuǎn)換處理、非線性轉(zhuǎn)換和XOR(異或)計算。每個計算的順序不是特別確定的。圖5示出了 SPN結(jié)構(gòu)輪函數(shù)的示例。
[0115](B)Feistel 結(jié)構(gòu)
[0116]將η位輸入數(shù)據(jù)劃分為兩個單元的η/2位數(shù)據(jù)。作為輸入對應(yīng)用函數(shù)(F函數(shù))應(yīng)用該數(shù)據(jù)的一部分和輪秘鑰,并且對輸出和該數(shù)據(jù)的另一部分進(jìn)行XOR計算。對該數(shù)據(jù)的兩側(cè)進(jìn)行改換(入&替無3)的結(jié)果成為輸出數(shù)據(jù)。雖然存在各種類型的F函數(shù)的內(nèi)部配置,但是基本以與輪密鑰數(shù)據(jù)的XOR計算、非線性轉(zhuǎn)換和線性轉(zhuǎn)換的組合與SPN結(jié)構(gòu)類似地實現(xiàn)這些配置。圖6示出了 Feistel結(jié)構(gòu)輪函數(shù)的示例。
[0117](C)擴(kuò)展 Feistel 結(jié)構(gòu)
[0118]以擴(kuò)展Feistel結(jié)構(gòu)將關(guān)于Feistel結(jié)構(gòu)的數(shù)據(jù)劃分?jǐn)?shù)目“二”擴(kuò)展為三個或更多個劃分的格式。如果將劃分?jǐn)?shù)指定為山則可以依據(jù)d來定義各種擴(kuò)展Feistel結(jié)構(gòu)。作為尺寸如果F函數(shù)輸入和輸出相對較小,則這適用于小的實現(xiàn)。圖7示出了 d=4并且在一輪內(nèi)并行應(yīng)用兩個F函數(shù)的擴(kuò)展Feistel結(jié)構(gòu)的示例。此外,圖8示出了 d=8并且在一輪內(nèi)應(yīng)用一個F函數(shù)的擴(kuò)展Feistel結(jié)構(gòu)的示例。
[0119](1-5.非線性轉(zhuǎn)換處理單元) [0120]對于非線性轉(zhuǎn)換處理單元,隨著輸入數(shù)據(jù)的大小增加,實施成本趨于增加。為了避免這種情況,使用將相應(yīng)的數(shù)據(jù)劃分為多個單元,并且對該數(shù)據(jù)進(jìn)行非線性轉(zhuǎn)換的許多配置。例如,當(dāng)將輸入大小指定為ms位時,這些配置每s位劃分m數(shù)量的數(shù)據(jù)單位,并且對輸入和輸出是s位的該數(shù)據(jù)進(jìn)行非線性轉(zhuǎn)換。將這些s位單元中的非線性轉(zhuǎn)換稱為S-箱(box)。圖9示出了示例。
[0121](1-6.線性轉(zhuǎn)換處理單元)
[0122]考慮線性轉(zhuǎn)換處理單元的性質(zhì),可以將它們定義為矩陣。通??梢砸灾T如GF(28)的主體元素和GF(2)的元素的各種方式來表示矩陣的元素。圖10示出了由mXm的矩陣定義的線性轉(zhuǎn)換處理單元的示例,其將ms位輸入和輸出定義為GF(2S)。
[0123][2.共享密鑰塊加密結(jié)構(gòu)和根據(jù)相關(guān)技術(shù)的小型化實現(xiàn)方法的概覽]
[0124]接下來,描述共享密鑰塊加密結(jié)構(gòu)和根據(jù)相關(guān)技術(shù)的小型化實現(xiàn)方法的概覽。
[0125]關(guān)于與本公開相關(guān)的加密處理配置,為了便于說明,描述必要的術(shù)語。
[0126](2-1.共享密鑰塊加密)
[0127]參考圖11,再次描述共享密鑰塊加密。共享密鑰塊加密算法由包括重復(fù)執(zhí)行輸入數(shù)據(jù)的轉(zhuǎn)換的輪函數(shù)的數(shù)據(jù)加密單元和生成要在輪函數(shù)單元的每一輪應(yīng)用的輪密鑰的密鑰安排單元配置而成。密鑰安排單元輸入秘密密鑰,并且生成要輸入到每個輪函數(shù)中的輪密鑰。
[0128]例如,對于具有進(jìn)行r次輪函數(shù)的重復(fù)配置的塊加密,向從重復(fù)I至重復(fù)r的輪函數(shù)中輸入輪密鑰RK1、RK2、……Rr。此外,對作為初始密鑰的IK和作為最終密鑰的FK進(jìn)行 XOR。
[0129](2-2.Feistel 結(jié)構(gòu))
[0130]參考圖12,描述Feistel結(jié)構(gòu)。Feistel結(jié)構(gòu)是關(guān)于共享密鑰塊加密用于數(shù)據(jù)加密單元的一般結(jié)構(gòu)。圖12示出了塊長度為η位時的特定Feistel結(jié)構(gòu)的示例配置。
[0131]當(dāng)看圖12時,這種配置使得能夠?qū)ⅵ俏粩?shù)據(jù)劃分為兩行的η/2位,將一行的這些η/2位輸入到輪內(nèi)的F函數(shù)中,并且對該輸出和另一行的η/2位進(jìn)行XOR??梢钥紤]各種類型的F函數(shù)配置。作為一個示例,已知如下配置:如在圖12所示的F函數(shù)中進(jìn)行處理,使得對輪密鑰進(jìn)行XOR,進(jìn)行稱為S-箱的非線性計算,然后通過矩陣計算來進(jìn)行線性轉(zhuǎn)換。
[0132]此外,圖12所示的配置是Feistel結(jié)構(gòu)的一個配置示例,通過改變對IK和FK的XOR計算的位置,其它配置示例也是可能的。
[0133](2-3.擴(kuò)展 Feistel 結(jié)構(gòu))
[0134]參考圖13,描述擴(kuò)展Feistel結(jié)構(gòu)。根據(jù)先前對Feistel結(jié)構(gòu)的描述,配置進(jìn)行到兩行的η/2位的劃分,然后對這進(jìn)行處理,但是向到三個或更多行的劃分的形式的擴(kuò)展是可以的。例如,存在被稱為4行擴(kuò)展Feistel結(jié)構(gòu)的擴(kuò)展Feistel結(jié)構(gòu),其進(jìn)行到4行的η/4位的劃分,然后對這進(jìn)行處理。
[0135]圖13示出了特定4行擴(kuò)展Feistel結(jié)構(gòu)的配置示例。當(dāng)看圖13時,這種配置使得能夠?qū)ⅵ俏粩?shù)據(jù)劃分為4行的η/4位,將這些行中的兩個輸入到輪內(nèi)的F函數(shù)中,并且對該輸出和另外兩行進(jìn)行X0R。通過從2行改變?yōu)?行,將輪密鑰RK1、初始密鑰IK和最終密鑰 FK 從 η/2 位劃分為 η/4 位的 RKi [O]、RKi [I]、IK [O]、IK [I]、FK [O]和 FK [I]。關(guān)于 4行擴(kuò)展Feistel結(jié)構(gòu)描述了先前的說明,但是將所有多于兩行的Feistel結(jié)構(gòu)都稱為擴(kuò)展Feistel結(jié)構(gòu)。為了關(guān)于根據(jù)本公開的實施例的描述清楚起見,我們將僅描述4行Feistel結(jié)構(gòu)。
[0136](2-4.根據(jù)相關(guān)技術(shù)的小型化技術(shù)的概覽和問題)
[0137](2-4-1.關(guān)于應(yīng)用SPN結(jié)構(gòu)的AES加密算法的小型化技術(shù))
[0138]如先前所描述的,Hamalainen、Alho、Hannikainen、Hamalainen等提出了關(guān)于應(yīng)用 SPN 結(jié)構(gòu)的 AES 加密算法的 AES 小型化方法。NPL3:Panu Hamalainen, Timo Alho, MarkoHannikainen,以及 Timo D.Hamalainen.Design and implementation of low-area andlow-power AES encryption hardware core.1n DSD,pages577-583.1EEE ComputerSociety, 2006.9。
[0139]首先,參考圖14,描述應(yīng)用SPN結(jié)構(gòu)的AES加密算法中的輪函數(shù)的結(jié)構(gòu)。此外,關(guān)于應(yīng)用SPN結(jié)構(gòu)的AES加密算法,配置與Feistel結(jié)構(gòu)的類似之處在于,重復(fù)執(zhí)行多次輪函數(shù)。圖14是示出在應(yīng)用SPN結(jié)構(gòu)的AES加密算法中使用的輪函數(shù)執(zhí)行單元的配置示例的圖。根據(jù)AES,將圖14所示的輪函數(shù)重復(fù)多次,以執(zhí)行根據(jù)明文生成密文和根據(jù)密文生成明文。
[0140]圖14所示的輪函數(shù)執(zhí)行單元由下面的構(gòu)成元素構(gòu)成:非線性轉(zhuǎn)換單元401,其由用于執(zhí)行非線性轉(zhuǎn)換處理的具有8位輸入和輸出的16個S-箱構(gòu)成;ShiftRow (移排)執(zhí)行單元402,其作為對來自構(gòu)成非線性轉(zhuǎn)換單元的S-箱的8位輸出的改換處理;線性轉(zhuǎn)換單元403,其由4個矩陣計算單元構(gòu)成,用于執(zhí)行應(yīng)用如下矩陣的線性處理,該矩陣輸入以32位為單位的ShiftRow執(zhí)行單元的輸出;以及XOR計算單元404,其由4個計算單元構(gòu)成,用于針對來自構(gòu)成線性轉(zhuǎn)換單元403的4個矩陣計算單元中的每個的32位輸出,對32位輪密鑰執(zhí)行XOR計算。
[0141]圖14所示的示例是具有128位輸入和輸出的128位輪函數(shù)執(zhí)行單元,其是進(jìn)行到16個8位S-箱中的總共8X 16=128位的輸入以及到4個32位XOR計算單元的總共32X4=128位的輸出的配置。[0142]作為一個輪函數(shù)的執(zhí)行處理,來執(zhí)行應(yīng)用非線性轉(zhuǎn)換單元401、ShiftRow執(zhí)行單元402、線性轉(zhuǎn)換單元403和XOR計算單元404的一系列處理,并且將該輪函數(shù)重復(fù)多次,以根據(jù)128位輸入數(shù)據(jù)(例如明文)生成并輸出128位輸出(例如密文)。
[0143]關(guān)于AES的實施,如果在一個周期中執(zhí)行了一個輪函數(shù)(I輪)的處理,也就是說,應(yīng)用非線性轉(zhuǎn)換單元401、ShiftRow執(zhí)行單元402、線性轉(zhuǎn)換單元403和XOR計算單元404的一系列處理,則如圖14所示,數(shù)據(jù)加密單元的配置至少需要16個S-箱電路和4個矩陣計算電路。
[0144]Hamalainen等通過在16個周期上延伸一輪,實現(xiàn)了數(shù)據(jù)加密單元的小型化。根據(jù)這種小型化配置,通過使用一個S-箱電路,并且實施在4個周期上執(zhí)行的一個矩陣計算,來實現(xiàn)矩陣計算電路的小型化。
[0145]圖15示出了執(zhí)行由Hamalainen等提出的AES加密的數(shù)據(jù)加密單元的數(shù)據(jù)路徑。圖15所示的配置對應(yīng)于圖14所示的執(zhí)行AES加密輪函數(shù)的硬件配置。
[0146]關(guān)于圖15所示的配置,將計算的數(shù)據(jù)劃分為8位的單元,將每個8位數(shù)據(jù)存儲在寄存器RO至R18中。在圖15中示出了 19個寄存器。19個寄存器(R0至R18)中的每個是用于存儲8位數(shù)據(jù)的8位寄存器。根據(jù)參考圖14的描述,圖14所示的配置是具有128位輸入和輸出的輪函數(shù)執(zhí)行單元,并且圖15對應(yīng)于執(zhí)行作為以8位為單位的數(shù)據(jù)的串行處理的具有128位輸入和輸出的輪函數(shù)的硬件配置。
[0147]關(guān)于圖15中的配置,因為128/8=16,因此存儲所有輸入和輸出數(shù)據(jù)所需的8位寄存器的數(shù)量是16個,因此16個寄存器足夠了。在圖15中有19個寄存器,這些寄存器中的三個超過了需要,但是這三個24位的寄存器用于矩陣計算處理,以執(zhí)行應(yīng)用矩陣的線性轉(zhuǎn)換處理。
[0148]此外,如參考圖14所描述的,根據(jù)AES,由執(zhí)行非線性轉(zhuǎn)換的S-箱和執(zhí)行線性轉(zhuǎn)換的矩陣計算之間的ShiftRow執(zhí)行單元執(zhí)行數(shù)據(jù)轉(zhuǎn)換。根據(jù)來自Hamalainen等的實施技術(shù),通過在圖15中的幾個寄存器之前插入復(fù)用器m01至m08,來實現(xiàn)由ShiftRow執(zhí)行單元進(jìn)行的替換。
[0149]如圖15所示,S501是作為非線性轉(zhuǎn)換單元的S-箱,僅存在一個S-箱。將8位數(shù)據(jù)順次輸入到作為S-箱的S501中,而由圖14所示的16個S-箱在16個周期上執(zhí)行非線性轉(zhuǎn)換處理。將作為S-箱的S501的輸出輸入到矩陣計算電路M502中,并且由矩陣計算電路M502應(yīng)用矩陣來執(zhí)行線性轉(zhuǎn)換處理。
[0150]此外,根據(jù)圖14中的配置,這種配置使得能夠在通過ShiftRow執(zhí)行單元替換要由S-箱處理的數(shù)據(jù)之后,進(jìn)行矩陣計算,但是根據(jù)圖15所示的配置,這種配置使得來自作為S-箱的S501的輸出能夠被直接輸入到矩陣計算電路M502中。根據(jù)圖15中的配置,通過圖15所示的復(fù)用器m01至m08和寄存器RO至R18的操作,來進(jìn)行與由ShiftRow執(zhí)行單元進(jìn)行的替換處理相對應(yīng)的處理。
[0151]在圖15所示的矩陣計算電路M502中,順次地執(zhí)行圖14所示的線性轉(zhuǎn)換單元403中的4個矩陣計算電路的處理。應(yīng)用來自圖14所示的線性轉(zhuǎn)換單元403中的4個矩陣計算電路的要由一個矩陣計算電路執(zhí)行的矩陣,在4個周期上執(zhí)行線性轉(zhuǎn)換處理。由XOR計算單元X503和X504執(zhí)行圖14所示的XOR計算單元404的XOR計算處理。這些XOR計算單元X503和X504對由密鑰生成單元K505輸出的輪密鑰和處理數(shù)據(jù)執(zhí)行XOR處理。[0152]此外,為了僅描述與根據(jù)本公開的配置從根本上相關(guān)的特定部分,通過如圖16所示的縮略數(shù)據(jù)路徑,來描述進(jìn)行諸如ShiftRow的替換的電路和密鑰安排單元。圖16中的關(guān)于寄存器組描述的部分存儲96位等值數(shù)據(jù),并且表示考慮到ShiftRow的寄存器組。關(guān)于AES的實現(xiàn),當(dāng)在一個周期中計算一輪時,僅需要用于數(shù)據(jù)加密單元的寄存器是作為塊長度的128位等值的。
[0153]相反,根據(jù)來自Hamalainen等的實現(xiàn)方法,這增加24位至152位等值。這是因為當(dāng)每8位將輸入劃分到矩陣中時,在矩陣的計算結(jié)束之前,需要存儲當(dāng)前處理的32位等值的計算結(jié)果。由于該原因,很明顯,增加了 32位等值的寄存器。相反,對于下一輪需要要輸入到矩陣中的值。當(dāng)考慮到這時,可以與用于矩陣計算單元的寄存器共享用于要輸入到矩陣中的該32位中的第一輸入的8位等值的寄存器,因此寄存器的增加量是
[0154]32-8=24 位,
[0155]抑制了其增加。
[0156](2-4-2.將用于SPN結(jié)構(gòu)的小型化實現(xiàn)配置應(yīng)用于擴(kuò)展Feistel結(jié)構(gòu)的問題)
[0157]如先前所描述的,Hamalainen等實現(xiàn)了 SPN結(jié)構(gòu)的小型化。然而,該小型化配置是對應(yīng)于SPN結(jié)構(gòu)的專用配置,因此當(dāng)將該小型化實現(xiàn)方法應(yīng)用于擴(kuò)展Feistel結(jié)構(gòu)時,無法獲得足夠的優(yōu)點(diǎn)。
[0158]下面將描述這些問題。此外,根據(jù)下面的描述,作為在概念上包括Feistel結(jié)構(gòu)的結(jié)構(gòu),來描述擴(kuò)展Feistel結(jié)構(gòu)。當(dāng)將來自Hamalainen等的實現(xiàn)方法應(yīng)用于具有擴(kuò)展Feistel結(jié)構(gòu)的執(zhí)行諸如CLEFIA的算法的配置時,為了計算矩陣,需要用于存儲來自矩陣的輸出的位長度的數(shù)據(jù)量的寄存器。
[0159]這是因為擴(kuò)展Feistel結(jié)構(gòu)與SPN結(jié)構(gòu)不同,例如,也需要在下一輪中使用輸入到輪函數(shù)中的F函數(shù)中的值,并且與這種處理序列的這種根本不同是問題。
[0160]圖17是示出將來自Hamalainen等的實現(xiàn)方法應(yīng)用于4行擴(kuò)展Feistel結(jié)構(gòu)時的數(shù)據(jù)計算電路的概覽圖的圖。根據(jù)圖17,與先前參考圖16描述的AES數(shù)據(jù)路徑類似,省略了擴(kuò)展Feistel結(jié)構(gòu)中的輪函數(shù)結(jié)束時的密鑰安排單元和替換操作。此外,針對輪計算中的處理數(shù)據(jù)的大小的塊大小是η位。
[0161]如先前參考圖13所描述的,根據(jù)4行擴(kuò)展Feistel結(jié)構(gòu),將η/4位輸入到4行中的每個中,然后順次進(jìn)行傳送。如圖17中的寄存器組R703對應(yīng)于圖16所示的寄存器組R601。然而,作為用于存儲(3/4)η位等值數(shù)據(jù)的寄存器和用于實現(xiàn)與輪結(jié)束時的替換操作類似的處理的復(fù)用器等的組合,來構(gòu)成如圖17中的與4行擴(kuò)展Feistel結(jié)構(gòu)相對應(yīng)的寄存器組R703。
[0162]此外,應(yīng)用并執(zhí)行(應(yīng)用圖17所示的4行擴(kuò)展Feistel結(jié)構(gòu)的加密算法的)數(shù)據(jù)路徑(計算執(zhí)行電路)的計算,對應(yīng)于應(yīng)用圖13所示的4行擴(kuò)展Feistel結(jié)構(gòu)的計算處理。因此,使用圖17所示的該數(shù)據(jù)路徑,來執(zhí)行圖13所示的4行擴(kuò)展Feistel結(jié)構(gòu)內(nèi)的包括F函數(shù)的輪函數(shù)。
[0163]圖18示出了輪函數(shù)內(nèi)的F函數(shù)的具體示例。圖18所示的F函數(shù)具有下面的配置元素。
[0164]*由執(zhí)行非線性處理的S-箱構(gòu)成的非線性轉(zhuǎn)換單元S801,
[0165]*針對來自非線性轉(zhuǎn)換單元S801的輸出通過矩陣計算進(jìn)行線性轉(zhuǎn)換處理的Μ802,以及
[0166]*用于針對來自線性轉(zhuǎn)換單元M802的輸出與輪密鑰執(zhí)行XOR計算的XOR計算單元X803,
[0167]因此這些是先前描述的構(gòu)成元素。將圖18所示的F函數(shù)稱為SP類型的F函數(shù)。
[0168]然而,與關(guān)于4行擴(kuò)展Feistel結(jié)構(gòu)的F函數(shù)相對應(yīng)的輸入和輸出是η/4位的。此夕卜,假設(shè)圖18所示的線性轉(zhuǎn)換單元Μ801是如下面所示的與AES加密算法采用的矩陣類似的循環(huán)矩陣(表達(dá)式I)。
[0169][數(shù)學(xué)式I]
【權(quán)利要求】
1.一種加密處理設(shè)備,包括: 加密處理單元,被配置為將要進(jìn)行數(shù)據(jù)處理的數(shù)據(jù)的構(gòu)成位劃分為多個行,并將所述構(gòu)成位輸入到所述多個行中,并且針對每一行的數(shù)據(jù)重復(fù)執(zhí)行數(shù)據(jù)轉(zhuǎn)換處理; 其中,所述加密處理單元包括: F函數(shù)執(zhí)行單元,用于輸入來自構(gòu)成所述多個行的一行的數(shù)據(jù),并且生成轉(zhuǎn)換后數(shù)據(jù), XOR計算執(zhí)行單元,用于執(zhí)行與其它行的數(shù)據(jù)的XOR計算,所述其他行的數(shù)據(jù)對應(yīng)于來自所述F函數(shù)的輸出, 中間數(shù)據(jù)存儲寄存器,用于存儲在所述F函數(shù)執(zhí)行單元中生成轉(zhuǎn)換后數(shù)據(jù)的處理期間的中間數(shù)據(jù),以及 逆計算執(zhí)行單元,用于基于存儲在所述中間數(shù)據(jù)存儲寄存器中的數(shù)據(jù),計算關(guān)于所述F函數(shù)執(zhí)行單元的輸入數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的加密處理設(shè)備,其中,所述F函數(shù)執(zhí)行單元包括S-箱,所述S-箱用于執(zhí)行對所述 F函數(shù)執(zhí)行單元的輸入數(shù)據(jù)的非線性轉(zhuǎn)換處理,所述中間數(shù)據(jù)存儲寄存器存儲來自所述S-箱的輸出值作為所述中間數(shù)據(jù),并且所述逆計算執(zhí)行單元通過包括經(jīng)由所述S-箱的所述非線性轉(zhuǎn)換處理的逆計算的計算處理,來計算針對所述F函數(shù)執(zhí)行單元的輸入數(shù)據(jù)。
3.根據(jù)權(quán)利要求1所述的加密處理設(shè)備,其中,所述F函數(shù)執(zhí)行單元包括非線性轉(zhuǎn)換單元和線性轉(zhuǎn)換單元,并且包括用于作為所述中間數(shù)據(jù)存儲所述非線性轉(zhuǎn)換單元的輸出的寄存器,所述線性轉(zhuǎn)換單元對存儲在所述寄存器中的值執(zhí)行線性轉(zhuǎn)換處理,并且所述逆計算執(zhí)行單元通過對存儲在所述寄存器中的值的計算處理,來計算針對所述F函數(shù)執(zhí)行單元的輸入數(shù)據(jù)。
4.根據(jù)權(quán)利要求1所述的加密處理設(shè)備,其中,所述F函數(shù)執(zhí)行單元在非線性轉(zhuǎn)換單元中對與所述F函數(shù)執(zhí)行單元相對應(yīng)的輸入執(zhí)行非線性轉(zhuǎn)換處理,并且其還是用于在線性轉(zhuǎn)換單元中執(zhí)行線性轉(zhuǎn)換處理的SP類型的F函數(shù)。
5.根據(jù)權(quán)利要求1所述的加密處理設(shè)備,其中,所述F函數(shù)執(zhí)行單元在非線性轉(zhuǎn)換單元中對與所述F函數(shù)執(zhí)行單元相對應(yīng)的輸入執(zhí)行非線性轉(zhuǎn)換處理,并且其還是用于在線性轉(zhuǎn)換單元中執(zhí)行線性轉(zhuǎn)換處理、進(jìn)而在非線性轉(zhuǎn)換單元中執(zhí)行非線性轉(zhuǎn)換處理的SPS類型的F函數(shù)。
6.根據(jù)權(quán)利要求1所述的加密處理設(shè)備,其中,所述F函數(shù)執(zhí)行單元包括與從外部輸入的輪密鑰的XOR計算單元。
7.根據(jù)權(quán)利要求1所述的加密處理設(shè)備,其中,所述F函數(shù)執(zhí)行單元包括多個非線性計算單元的重復(fù)結(jié)構(gòu)。
8.根據(jù)權(quán)利要求1所述的加密處理設(shè)備,其中,所述加密處理單元執(zhí)行用于將作為輸入數(shù)據(jù)的明文轉(zhuǎn)換為密文的加密處理,或執(zhí)行用于將作為輸入數(shù)據(jù)的密文轉(zhuǎn)換為明文的解密處理。
9.一種在加密處理設(shè)備中執(zhí)行的加密處理方法,所述加密處理方法包括: 加密處理步驟,其中,加密處理單元被配置為將要進(jìn)行數(shù)據(jù)處理的數(shù)據(jù)的構(gòu)成位劃分為多個行,并將所述構(gòu)成位輸入到所述多個行中,并且針對每一行的數(shù)據(jù)重復(fù)執(zhí)行數(shù)據(jù)轉(zhuǎn)換處理;其中,所述加密處理步驟包括: F函數(shù)執(zhí)行步驟,用于輸入來自構(gòu)成所述多個行的一行的數(shù)據(jù),并且生成轉(zhuǎn)換后數(shù)據(jù),XOR計算步驟,用于執(zhí)行與其他行的數(shù)據(jù)的XOR計算,所述其他行的數(shù)據(jù)對應(yīng)于來自所述F函數(shù)的輸出, 用于將在所述F函數(shù)執(zhí)行單元中生成轉(zhuǎn)換后數(shù)據(jù)的處理期間的中間數(shù)據(jù)存儲在中間數(shù)據(jù)存儲寄存器中的步驟,以及 逆計算執(zhí)行步驟,用于基于存儲在中間數(shù)據(jù)存儲寄存器中的數(shù)據(jù),計算關(guān)于所述F函數(shù)執(zhí)行單元的輸入數(shù)據(jù)。
10.一種用于在加密處理設(shè)備中執(zhí)行加密處理的程序,所述程序包括: 加密處理步驟,其中,加密處理單元被配置為將要進(jìn)行數(shù)據(jù)處理的數(shù)據(jù)的構(gòu)成位劃分為多個行,并將所述構(gòu)成位輸入到所述多個行中,并且針對每一行的數(shù)據(jù)重復(fù)執(zhí)行數(shù)據(jù)轉(zhuǎn)換處理; 其中,所述加密處理步驟包括: F函數(shù)執(zhí)行步驟,用于輸入來自構(gòu)成所述多個行的一行的數(shù)據(jù),并且生成轉(zhuǎn)換后數(shù)據(jù),XOR計算步驟,用于執(zhí)行與其他行的數(shù)據(jù)的XOR計算,所述其他行的數(shù)據(jù)對應(yīng)于來自所述F函數(shù)的輸出, 用于在所述F函數(shù)執(zhí)行單元中生成轉(zhuǎn)換后數(shù)據(jù)的處理期間,將中間數(shù)據(jù)存儲在中間數(shù)據(jù)存儲寄存器中的步驟,以及 逆計算執(zhí)行步驟,用于基于存儲在中間數(shù)據(jù)存儲寄存器中的數(shù)據(jù),計算關(guān)于所述F函數(shù)執(zhí)行單元的輸入數(shù)據(jù) 。
【文檔編號】H04L9/06GK103444125SQ201280014185
【公開日】2013年12月11日 申請日期:2012年2月20日 優(yōu)先權(quán)日:2011年3月28日
【發(fā)明者】渋谷香士, 秋下徹, 五十部孝典, 白井太三, 樋渡玄良, 三津田敦司 申請人:索尼公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1