專利名稱:認證加密的迦羅瓦計數(shù)模式中赫序運算的加速方法與裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明是關(guān)于 一 種認證加密 (authenticated encryption) 的逝羅瓦計數(shù)模式 (Galois Counter Mode, GCM)中赫序(GHASH)運算的加速方法與裝置。
背景技術(shù):
GCM 是 一 禾中提供認i正力口密 (authenticated encryption) 的區(qū)塊密碼 (block cipher) 系統(tǒng)的操 作模式(operation mode)。其主要特色在于能夠以高 處理速度,同時提供機密性(confidentiality)和完 整性(integrity )。其中,以 GCM先進加密標準 (GCM-Advanced Encryption Standard, GCM-AES) 為 最常見,主要應(yīng)用在高速的傳輸環(huán)境。GCM的資料力口密(data encryption)是以計數(shù)模 式(CTR mode)來達成,而認證是用一種以迦羅瓦場(Galois Field, GF)為基礎(chǔ)的赫序函數(shù)來完成。此 認證加密有四個輸入(input ),分別為秘密金鑰(secret key) A\ 初始向量 (initialization vector) /「、 純文本 (plaintext )尸、禾B額夕卜的認證資料(additional authenticated data, AAD)爿。尸被分 成/7個1 2 8 -比特區(qū)塊,以化,A,…,^來表示,而^被 分成/z 個1 2 8 -比特區(qū)塊,以",4,…,4l來表示,其中 區(qū)塊《和 <是少于1 2 8個比特。此認證加密有兩個輸出(output),也就是密文(cipher text) C禾口認證巻標 (authentication tag) 7。密文C的長度與純文本尸的長度相同,認證巻標r的長度記為t。此兩個輸出c和r是經(jīng)由下列認證加密的運算而取得 <formula>formula see original document page 9</formula> (1)其中,f f & / J代表具有金鑰f的J值的區(qū)塊加密(block cipher encryption)。
MSB'(S)j?;乇扰K麓鮨j(bitstring) 5的最左方(leftmost)的f個比特的 比特串列。{}代表長度為零的位串列。0 "代表/7個比 特的零序歹ll (zero sequence) 。 Incr() 代表將右邊 最低的3 2 比特 (least significant bit on the right)當作是一個非負的整數(shù),然后對此非負的整數(shù) 進行加1后再取2 3 2的余數(shù)。更精確地說,Incr ( F||/) 的值是Fll ( 了 + 1 mod2 3 2 )。GHASH函數(shù)是GCM中的一種運算,此函數(shù)有三個輸 入,并且會產(chǎn)生出一個l 2 8比特的赫序值(hash value )。此三個輸入就是A C和仏而#是經(jīng)由(1 ) 式中以秘密金鑰/r對全數(shù)為0的區(qū)塊加密而得到的值。 下列式子描述了 GHASH函數(shù)的第J'個步驟的輸出J,。<formula>formula see original document page 10</formula>
(2 )(2 )式中,K是區(qū)塊人的比特長度(bit length), "是《的比特長度, 是C ( 2 128)的加法運算,而乘 法運算則是定義于C ( 2 128 )。
JM5代表兩個比特序列 (bit sequence) 爿禾口 ^的串接 (concatenation)。(2 )式中,GHASH函數(shù)可以用圖1所示的硬件架 構(gòu)來實現(xiàn)。圖1中,此GHASH硬件架構(gòu)的核心(core) 是 一 個1 2 8 -比特平行的(parallel ) C ( 2 128)乘 法器1 0 1 。 J暫存器內(nèi)赫序值的初始值設(shè)定為0 。在 最初的歷個工作時脈里,將歷個1 2 8 -比特區(qū)塊 4,A,…,《一 個接一個代入至(2 )式的右關(guān)系式。之后, 在接下來的/7個工作時脈里,將密文C的/7個1 2 8 -比特區(qū)塊C C…,! , c:代入至(2 )式的第三行的右關(guān)系式。在最后 一 個工作時脈里,將knWMW代入 至(2 )式的最后 一 行的右關(guān)系式。使用此硬件架構(gòu), 總共費時1個工作時脈來計算此赫序值。從圖1也可看出,暫時的結(jié)果(temporaryresult) X,.會與下一個^C暫存器的輸入作XOR的運算后,回饋 至^C暫存器,以產(chǎn)生^(2128)乘法器1 0 l的下一 個運算位(operand) 。 C( 2 128)乘法器1 0 1的另一 個運算位是H,存放在^暫存器里。在2 0 0 5年5月,D. A. McGrew等人提出的文 獻中,介紹了 GCM的操作模式。此GCM使用6 4 -比特 或是1 2 8 -比特的區(qū)塊密碼來同時提供認證和加密。在2 0 0 5年6月,B. Yang等人提出的文獻中, 以及2 0 0 6年5月,A. Satoh提出的文獻中,也都 揭露了實5見lt匕GCM —AES 的高速的架構(gòu) (high —speedarchitecture to realize the GCM — AES )。 此兩禾中架 構(gòu)都需要費時歷+/7+1的工作時脈(clockcycle)來執(zhí) 行GCM中GHASH的運算,其中,/7是密文(ciphertext) 資料長度,歷是認證資料長度。此^+"+ 1個工作時脈 會導(dǎo)致硬件延遲 (latency of hardware)。美國專利公開號2 0 0 6/0 1 2 6 8 3 5的文 獻中,揭露了 一種關(guān)于高速的GCM-AES區(qū)塊加密裝置 與方法。此GCM-AES區(qū)塊加密裝置以四個模組來實現(xiàn), 如圖2所示,分別為金鑰展開模組(key expansion module) 2 0 1、 8 -回合區(qū)塊加密模組(8 -round CTR-AES block cipher module) 2 0 3 、 3 -回合區(qū) 土央力口密模組(3 -round CTR-AES block cipher module)2 0 5 、 以及 W ( 2 128)乘法模組(multiplication module) 2 0 7。欲加密的資料來自于3 2/1 2 8比 特轉(zhuǎn)換器2 1 0 ,加密后的資料則輸入于1 2 8/3 2比特轉(zhuǎn)換器2 2 0 。此區(qū)塊加密裝置可運作于1 2 5 MHz的低時脈頻 率(low clock frequency),并且提供一個在局端光 終端設(shè)備(Optical Line Termination, OLT)的2 -Gbps 鏈接安全功能(link security function),以及一個 乙太被動光網(wǎng)路(Ethernet Passive Optical Network , EPON) 的光網(wǎng)路單元 (Optical Network Unit, ONU)。發(fā)明內(nèi)容本發(fā)明的范例中可提供 一 種認證加密的GCM中GHASH運算的加速方法與裝置。本發(fā)明同時計算GCM規(guī) 范中的認證資料、密文與f +1值,提供平行化執(zhí)行GCM 中GHASH運算的處理方式。認證資料與密文的輸入順 序可以相互無關(guān)(independent),如此可i上GCM在應(yīng) 用上更有彈性(more flexible)。本發(fā)明可快速平行 化執(zhí)行GCM中GHASH運算,僅需約max {/z , 77} + 1個工作 時脈。若密文與^值是固定不變的(invariant),則 僅需歷+1個的工作時脈。本發(fā)明的方法中,首先,根據(jù)GCM規(guī)格中定義的 認證資料、密文、以及HASH金鑰值仏將GHASH函數(shù) 最終輸出結(jié)果展開成三個中間值(interim value), A、 Xc、禾n /T+'的組成,其中L是與認證資料相關(guān)的臨 時值,而A是與密文相關(guān)的臨時值。然后,平行化執(zhí) 行L、 A、禾卩的運算。本發(fā)明的裝置中,包含了計算L、計算A以及計 算f+1值的三個模組。此裝置的硬件架構(gòu)可用三個GF(2" 乘法器、三個暫存器、和 一 種GF(2Abn法運算(add i t i on ) 來實現(xiàn)。加法運算可用XOR門或是軟件模組來實現(xiàn)。本發(fā)明采用 Mastorvito,s 標準 基底(standard —based )乘法器的工作范例中,較已知技 術(shù)節(jié)省了約2 0 %的成本,因此也加速執(zhí)行GCM中GHASH的運算。
以下配合下列附圖、實施例的詳細說明,將上述 及本發(fā)明的其它目的與優(yōu)點詳述于后,其中圖1是GHASH運算的一種已知的硬件架構(gòu)的 一 個示意圖。圖2是一種已知的高速GCM-AES區(qū)塊加密裝置的 一個概要示意圖。圖3是根據(jù)本發(fā)明,認證加密的GCM中GHASH運 算的加速方法的 一 個流程范例。圖4是根據(jù)本發(fā)明,認證加密的GCM中GHASH運 算的加速裝置,其硬件架構(gòu)的一個范例示意圖。圖5是圖4中采用Mastorvito's標準乘法器來實 現(xiàn)的 一 個工作范例。
具體實施方式
GHASH函數(shù)有三個輸入,此三個輸入就是GCM規(guī)格 中定義的額外認證資料^與密文C、以及HASH金鑰值#。不失 一 般性,以下說明的范例中,一 個區(qū)塊密碼為一個1 2 8 -比特區(qū)塊,額外認證資料^的長度〗e;^力J為l以及密文C的長度h/7f6V為/7。換句話說,此GCM使用1 2 8 -比特的區(qū)塊密碼來同時提供認證和加密,并且額外認證資料力及密文C分別被分成7Z7個與/7個1 2 8 -比特區(qū)塊。若以己知技術(shù)的方程式(2 )來執(zhí)行GCM中GHASH 的運算,則需要費時1的工作時脈,才能得到 GHASH函數(shù)的運算結(jié)果。根據(jù)本發(fā)明,認證加密的GCM中GHASH運算的加速方法,其流程范例如圖3所示。首先,將GHASH函數(shù)的最終輸出結(jié)果L"+,展開成三個中間值,記為Xi 、、和礦+!的組成,如步驟3 0 1所示。在步驟3 0 1中,A是與額外認證資料」相關(guān)的暫時值,而A是與密文C相關(guān)的暫時值。L是認證資料的個區(qū)塊分別和//值的降序的乘積,再各別執(zhí)加總后產(chǎn)生的臨時值,#值的乘冪最高為歷+ 1 。而是密文的/7個區(qū)塊分別和//值的降序的乘積,再各別執(zhí)行加總后產(chǎn)生的臨時值,#值的乘冪最高為77+1 。下列展開式可說明此GHASH函數(shù)的第邁+/7+ 1個輸出值"。+ 1如何由此三個中間值〖、Jc、和,+ I來組成。<formula>formula see original document page 16</formula>其中S'是i個比特的二元串列(binary string),y是區(qū)塊《的比特長度,"是《的比特長度,A是秘密 金鑰A的比特長度,7和"的值皆小于等于A。然后,平行化算出L、 xc、禾n f + '的值,如步驟3 0 2所示。步驟3 Q 2共有max U, 個子步驟,每個 子步驟定義為有三個輸入,假設(shè)是a、 b、和c。每個 子步驟執(zhí)行的運算是(a b)* c,需要l個工作時脈。 因此計算A需要ffl個子步驟,換言之,需要zz 個工作 時脈。計算和則需要"個子步驟,也就是需要" 個工作時脈。所以,同時算出L、 Jc、禾卩+ 1的值僅需 要max {歷,; }個工作時脈。當A、 Ic、和1的值都算出后,最后 一 個步驟就 是根據(jù)L、 和〃"+ '的值,算出GHASH運算的赫序值, 也就是執(zhí)行運算A* A,如步驟3 0 3所示,此步驟需要1個工作時脈。所以,本發(fā)明執(zhí)行GCM中GHASH 運算共需要max {m, /7 } + 1個工作時脈。圖4是根據(jù)本發(fā)明,認證加密的GCM中GHASH運算的加速裝置,其硬件架構(gòu)的 一 個范例示意圖。此裝 置的硬件架構(gòu)包括三個模組,用來計算與額外認證資 料J相關(guān)的暫時值A(chǔ)、計算與密文C相關(guān)的暫時值A(chǔ) 和計算^+1的值。從圖4可以看出,此裝置的硬件架構(gòu) 可用三個G^^乘法器4 0 1- 4 0 3、三個暫存器4 1 1-4 1 3 、和 一 種GF(2"力口法運算(addition) @來實 現(xiàn)。三個暫存器4 1 1-4 1 3分別儲存 A、 、和A的暫時值。暫存器4 1 1 、 4 1 3的初始值是^^2"中 的加法單位元素0 ,暫存器4 1 2的初始值是^(20中 的乘法單位元素1 。
G"叫力卩法運算 可用XOR門或軟件模組來實現(xiàn)。在準備過程 (preparation process) 里,此三個G尸(^)乘法器4 0 1-4 0 3各自計算出Zc、 禾B A的值,并各自輸入至三個暫存器4 1 1-4 1 3。此準 備過程中,在計算^時,此裝置使用 一 個控制信號4 4 1,并通過一個多工器4 3 l來選擇某一 G或是len(^len(e)。暫存器4 1 l儲存的^的暫時結(jié)果會與多工 器4 3 1的輸出作Wd加法運算 后,回饋至C尸(2 k ) 乘法器4 0 1,以產(chǎn)生^F(2"乘法器4 0 l的下一 個運算位,GF ( 2 k )乘法器4 0 1的另 一 個運算位是 H 。類似地,在計算X<時,暫存器4 1 3儲存的L的暫 時結(jié)果會與某 一 (.作W(叫加法運算 后,回饋至^凡2")乘法器4 0 3,以產(chǎn)生C(2^)乘法器4 0 3的下 一個運算位,G,(2"乘法器4 0 3的另一個運算位 是H 。在計算/T1時,暫存器4 1 2儲存的暫時結(jié)果會 回饋至C(2"乘法器4 0 2,以產(chǎn)生C(2")乘 法器4 0 2的下 一 個運算位,GF ( 2 "乘法器4 0 2 的另一個運算位是#。在準備過程里,可看出認證資料區(qū)塊(與密文區(qū) 塊G都可以各自輸入,兩者的輸入順序是獨立的 (independent),可以是相互無關(guān)的。甚至可以接受 失序的序列 (disordered sequence), 例如 dC2^!C36\ 」3 … o當算出Jc、和/r1的值后,在輸出過程(outputprocess)里,此裝置使用三個G^2")乘法器4 0 1-4 0 3中的 一 個G^0乘法器和一個W&)加法運算 來執(zhí)行運算iv /r1 Jc。因此,計算^的值可通過一個多工器,并使用一 個w(^)乘法器和 一 個w&)加法運算 來實現(xiàn)。計算i的值可用 一 個W②)乘法器和 一 個GF^)加法運算 來實 現(xiàn)。計算/T+'的值可用 一 個^&)乘法器來實現(xiàn)。較佳的 W(^乘法器可用定義于^M的Mastorvito' s標準基底 乘法器來實現(xiàn)。圖5是圖4中采用Mastorvito's標準基底乘法器(matrix-vector , MV )的乘法器結(jié)構(gòu)。假設(shè)"x入 f;O、 rf;^是定義在 C(2",并且是由產(chǎn)生器多 項式 (generator polynomial) g fz少建構(gòu)的多項式。 令r f 是a f 與Z> f 的乘積,則其多項式表示 (polynomial representation) 如下7"。 +。x + .-- + um-=(o0 +…+ um-1K +…+) mod(3 )根據(jù)方程式(3 )里的系數(shù),則此Mastorvito,s 乘法器產(chǎn)生方程式/ 二^","。、"、Z0,0 ■ '. Z0,m-1W 乂(4 )實中,Za代表由afxJ與gf;^導(dǎo)出的一個7Z7X邁的矩陣,稱之為Z矩陣(Z-matrix),并且表示如下的2尸在義定范現(xiàn)實來向車召口吝法標siosM<formula>formula see original document page 20</formula>上式中,"flJ是一個步階函數(shù),定義如下<formula>formula see original document page 20</formula>
而。八,是下列方程式里矩陣的元素<formula>formula see original document page 20</formula>根據(jù)此Mastorvito' s標準基底乘法器,此圖5的 工作范例需要max {歷,/ } + 2個工作時脈來執(zhí)行GCM中 GHASH運算。從圖5中可窺知,此工作范例僅需要 一 個 Z矩陣電路(/-matrix circuit ) 5 1 0禾口三個矩陣向 量乘法器(MV multiplier), 即標號5 0 1 -5 0 3,并不需要使用三對的硬件電路,其中每 一 對的硬件電 路是由 一 個Z矩陣電路和 一 個矩陣向量乘法器組成。此工作范例的硬件架構(gòu)中,可讓三個GF(^)乘法器以三 個矩陣向量乘法器5 0 1-5 0 3和共享(share ) —個 Z 矩陣電路 5 1 0 的硬件資源 (hardware resources)來實現(xiàn)。此Z矩陣電路5 1 0是用來計算 Z矩陣5 1 0 a , 說明如下。圖5中,當加載HASH金鑰值H于Z矩陣電路5 1 0時,此Z矩陣電路5 1 0計算A矩陣,并且讓三個 矩陣向量乘法器5 0 1 - 5 0 3維持以 max {歷,/ }個工 作時脈來算出L、 A、和的值。在計算^時,控制 信號5 4 1用來選擇某一C,或是lenWllen(。。在下 一 個工 作時脈時,也就是第max {歷,/7 } + 1個工作時脈,當額 外認證資料^與密文C都輸入完畢后,通過控制信號5 4 2 ,將加載Z矩陣電路5 1 0 ,然后計算出Zf 矩陣。在最后 一 個工作時脈時,也就是第max { 77 } + 2個工作時脈,算出 Jc的結(jié)果。在本發(fā)明的結(jié)構(gòu)里,可清楚看出認證資料與密文 的輸入順序可以是相互無關(guān)的。因此可讓GCM在應(yīng)用 上更有彈性。例女口 , 在不同的傳輸(transmissions) 或一段時間里(sessions),變更已認證資料,則只需 要重新計算L即可。類似地,若已認證資料相同,且 僅變更密文,則只需要重新計算A和f+1即可。甚且, 本發(fā)明也可接受失序的序列。由本發(fā)明采用Mastorvito's標準基底乘法器的工 作范例中,可知本發(fā)明可讓三個^(20乘法器共享硬件資源,大幅降低硬件成本。本發(fā)明與必須依序輸入認證資料區(qū)塊A.與密文區(qū)塊G的使用三個ffF ( 2 128)乘 法器的已知技術(shù)相較,本發(fā)明節(jié)省了約2 0 %的資源 (resources),因此力口速了執(zhí)行GCM中GHASH的運算。綜上可知,根據(jù)本發(fā)明,如果額外認證資料與密 文分別有"與/7個區(qū)塊,則本發(fā)明執(zhí)行GCM中GHASH 運算只需要max {歷,/ } + 1個工作時脈。并且應(yīng)用本發(fā)明 時,額外認證資料與密文的輸入順序是獨立的,如此可讓GCM在應(yīng)用上更有彈性。此外,若在應(yīng)用中,無視(2 )式中J與C的分類,將兩者單純是為一筆輸入,而僅以奇偶順序輸入,貝u圖4與圖5的架構(gòu)可用來加速GHASH運算,將時間縮短為L2本發(fā)明可適用于采用GCM加密模式的應(yīng)用范疇, 如MACSec、 EP0N、 儲存裝置或IPSec中。惟,以上所述的,僅為發(fā)明的實施范例而已,當 不能依此限定本發(fā)明實施的范圍。即凡是依本發(fā)明申請專利范圍所作的均等變化與修飾,皆應(yīng)仍屬本發(fā)明內(nèi)園范專
權(quán)利要求
1、一種認證加密的迦羅瓦計數(shù)模式中赫序運算的加速方法,以提供資料隱密性與資料完整性的應(yīng)用。該赫序運算備有三個輸入,分別是定義于該GCM中的額外的認證資料A與密文C,以及該赫序運算的赫序金鑰H,其特征在于,該方法包含下列步驟將該赫序運算的最終輸出結(jié)果Xm+n+1展開成三個中間值,記為XA、XC、和Hn+1,的組成,該XA是該額外認證資料A相關(guān)的暫時值,該XC是該密文C相關(guān)的暫時值;平行化算出該XA、該XC、和Hn+1的值;以及根據(jù)該XA、該XC、和Hn+1的值,算出該赫序運算的赫序值;其中,該額外的認證資料A被分成m個區(qū)塊,記為A1,A2,...,Am*,密文C被分成n個區(qū)塊,記為C1,C2,…,Cn-1,Cn*, id="icf0001" file="A2007101124690002C1.tif" wi="2" he="2" top= "189" left = "50" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/>是一種加法運算。
2、如權(quán)利要求1所述的認證加密的迦羅瓦計數(shù)模式中赫序運算的加速方法,其特征在于,其中該 是一種X0R運算。
3、如權(quán)利要求1所述的認證加密的迦羅瓦計數(shù)模式中赫序運算的加速方法,其特征在于,其中該 是以 一 軟件來實現(xiàn)。
4 、如權(quán)利要求1所述的認證加密的迦羅瓦計數(shù) 模式中赫序運算的加速方法,其特征在于,其中該J力 和Jr分別如下Z,4『+'十4『十…十U^")^, 且Xc = C,/T+' C2/T … (C," )//2十(/e"(寺"(C))// ,其中,S'是J個比特的二元串列,7是區(qū)塊 < 的比特長度密金鑰K的額外的認證
5、如模式中赫序持以和7 + 1的值
6、如模式中赫序行運算
7、如模式中赫序個該子步驟的運算是(計數(shù),維Jc、權(quán)利要求1所述的認證加密的迦羅瓦計數(shù)運算的加速方法,其特征在于,g巾,執(zhí) Jc來算出該赫序運算的赫序值。權(quán)利要求5所述的認證加密的迦羅瓦計數(shù)運算的加速方法,其特征在于,其中,每定義為有三個輸入a、 b、和c,并且執(zhí)行
8 、如權(quán)利要求1所述的認證加密的迦羅瓦計數(shù)模式中赫序運算的加速方法,其特征在于,其中,計算該l需要歷個子步驟。
9 、如權(quán)利要求1所述的認證加密的迦羅瓦計數(shù)模式中赫序運算的加速方法,其特征在于,g巾,計算該Xc和該需要/7個子步驟。
10 、如權(quán)利要求1所述的認證加密的逝羅瓦計數(shù)模式中赫序運算的加速方法,其特征在于, 其中該額外認證資料^與密文c的輸入順序是獨立的。
11 、 一種認證加密的迦羅瓦計數(shù)模式中赫序運算的加速裝置,以提供資料隱密性與資料完整性的應(yīng)用該赫序運算備有三個輸入,分別是定義于該GCM中的額外的認證資料^與密文c,以及該赫序運算的赫序金鑰H,其特征在于,該裝置包含三個乘法器,稱之為第 一 、第二和第三乘法器,分別并行計算出三個中間值,記為J力、1和L,并且在計算該A和該X力時,該第 一 與該第二乘法器的兩個運算位分別是通過 一 種加法運算 后的結(jié)果與該赫序金鑰仏以及三個暫存器,稱之為第一、第二和第三暫存器,分另lj儲存該L 、該/T + 1 、和該Je的暫時值;其中,該L是該額外認證資料j相關(guān)的暫時值該A是該密文C相關(guān)的暫時值,算出該L、 A和^ +: 的值后,通過該三個乘法器的其中 一 乘法器與該加法 運算@而得出該赫序運算的赫序值。
12 、如權(quán)利要求11所述的認證加密的迦羅瓦 計數(shù)模式中赫序運算的加速裝置,其特征在于,其中在計算該時,該裝置還通過 一 第 一 控制信號與 一 個多工器來選擇^WhW或是該密文C的一區(qū)塊,并且儲 存該第 一 暫存器與該多工器的輸出作該加法運算@ 后,饋入至該第一乘法器,以產(chǎn)生該該第一乘法器的下 一 個運算位,而〗f J J為額外認證資料J的長度,V為密文c的長度,II代表串接運算。
13 、如權(quán)利要求1 1所述的認證加密的迦羅瓦計數(shù)模式中赫序運算的加速裝置,其特征在于,中在計算該A時,該第三暫存器與該額外認證資料爿的區(qū)塊作該加法運算e后,饋入至該第三乘法器,以產(chǎn)生該第三乘法器的下 一 個運算位。
14、如權(quán)利要求1 1所述的認證加密的迦羅瓦計數(shù)模式中赫序運算的加速裝置,其特征在于,中在計算n ,該第二暫存器的值饋入至該第二乘法器以產(chǎn)生該第二乘法器的下一個運算位。
15 、如權(quán)利要求1 1所述的認證加密的迦羅瓦計數(shù)模式中赫序運算的加速裝置,其特征在于,3中該三個乘法器是三個定義在^(2"上的乘法器,A為自然數(shù)。
16、如權(quán)利要求1 , 1所述的認證加密的迦羅瓦 計數(shù)模式中赫序運算的加速裝置,其特征在于,其中 該三個乘法器共享一 Z矩陣電路,該Z矩陣電路是以 Mastorvito乘法器方法來計算Za矩陣,Za矩陣代表由一多項式3"J與一多項式產(chǎn)生器導(dǎo)出的--個方夕£陣。
17、如權(quán)利要求1 6所述的認證加密的迦羅瓦計數(shù)模式中赫序運算的加速裝置,其特征在于,其中該三個乘法器是以該Z矩陣電路和三個矩陣向量乘法器來實現(xiàn)
18 、如權(quán)利要求1 6 計數(shù)模式中赫序運算的加速 當該額外認證資料」與該密 置通過 一 第二控制信號,將 然后計算出一 z『'矩陣。
19 、如權(quán)利要求1 6 計數(shù)模式中赫序運算的加速 當該赫序金鑰 〃加載于該Z 路計算一 Ztf矩陣。
20 、如權(quán)利要求1 1 計數(shù)模式中赫序運算的加速所述的認證加密的逝羅瓦裝置,其特征在于,中文c都輸入完畢后該裝h 1加載于該z矩陣電路,所述的認證加密的逝羅瓦裝置,其特征在于,中矩陣電路時,該矩陣電所述的認證加密的逝羅瓦裝置,其特征在于苴 z 、中該三個矩陣向量乘法器是三個Mastorvito, s標準基底 乘法器。
全文摘要
一種認證加密的迦羅瓦計數(shù)模式(GCM)中GHASH運算的加速方法與裝置。首先,根據(jù)GCM規(guī)格中定義的額外認證資料、密文、以及GHASH金鑰值,將GHASH函數(shù)的最終輸出結(jié)果展開成三個中間值的組成。然后,平行化算出此三個中間值。最后,算出此GHASH函數(shù)的輸出結(jié)果。如果額認證資料與密文分別有m與n個區(qū)塊,則本發(fā)明執(zhí)行GCM中GHASH運算只需要max{m,n}+1個工作時脈。根據(jù)本發(fā)明,認證資料與密文的輸入順序是獨立的,認證資料與密文區(qū)塊的輸入順序也可失序,如此可讓GCM在應(yīng)用上更有彈性。
文檔編號H04L29/06GK101335741SQ200710112469
公開日2008年12月31日 申請日期2007年6月28日 優(yōu)先權(quán)日2007年6月28日
發(fā)明者顏志旭 申請人:財團法人工業(yè)技術(shù)研究院