版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
ICS35.040
L80
中華人民共和國國家標(biāo)準(zhǔn)
GB/T15852.2—XXXX
信息技術(shù)安全技術(shù)消息鑒別碼
第2部分:采用專用雜湊函數(shù)的機制
Informationtechnology–Securitytechniques–MessageAuthentication
Codes(MACs)–Part2:Mechanismsusingadedicatedhash-function
MOD
(報批稿)
(本稿完成日期:2011年1月19日)
XXXX-XX-XX發(fā)布XXXX-XX-XX實施
GB/T15852.2—XXXX
引??言
本部分規(guī)定的第一個MAC算法通常被稱作MDx-MAC。它調(diào)用一次完整的雜湊函數(shù),但是對其中
的輪函數(shù)做了細(xì)微的修改,把一個密鑰加到了輪函數(shù)的附加常數(shù)上。第二個MAC算法通常被稱作
HMAC,它調(diào)用兩次完整的雜湊函數(shù)。第三個MAC算法是MDx-MAC的一個變種,它限制輸入長度不
大于256比特。在只處理較短輸入的情況下,它有更好的性能。
本部分規(guī)定的三種MAC算法采用四種專用雜湊函數(shù);其中,專用雜湊函數(shù)1、2、3分別是GB/T
18238.3-2002中規(guī)定的專用雜湊函數(shù)1、2、3,專用雜湊函數(shù)4是ISO/IEC10118-3:2004中規(guī)定的專用
雜湊函數(shù)7。使用的專用雜湊函數(shù)也可以為國家密碼管理部門批準(zhǔn)的相應(yīng)專用雜湊函數(shù)。
I
GB/T15852.2—XXXX
信息技術(shù)安全技術(shù)消息鑒別碼
第2部分:采用專用雜湊函數(shù)的機制
1范圍
GB/T15852的本部分規(guī)定了三種采用專用雜湊函數(shù)的消息鑒別碼算法。這些消息鑒別碼算法可用作
數(shù)據(jù)完整性檢驗,檢驗數(shù)據(jù)是否被非授權(quán)地改變。同樣這些消息鑒別碼算法也可用作消息鑒別,保證消
息源的合法性。數(shù)據(jù)完整性和消息鑒別的強度依賴于密鑰的長度及其保密性、雜湊函數(shù)的算法強度及其
輸出長度、消息鑒別碼的長度和具體的消息鑒別碼算法。
本部分適用于任何安全體系結(jié)構(gòu)、進程或應(yīng)用的安全服務(wù)。
2規(guī)范性引用文件
下列文件對于本文件的應(yīng)用是必不可少的。凡是注日期的引用文件,僅所注日期的版本適用于本文
件。凡是不注日期的引用文件,其最新版本(包括所有的修改單)適用于本文件。
GB/T18238.3-2002信息技術(shù)安全技術(shù)散列函數(shù)第3部分:專用散列函數(shù)(idtISO/IEC10118-3:
1998)
GB/T1988-1998信息技術(shù)信息交換用七位編碼字符集(eqvISO/IEC646:1991)
ISO/IEC10118-3:2004信息技術(shù)安全技術(shù)雜湊函數(shù)第3部分:專用雜湊函數(shù)
3術(shù)語和定義
下列術(shù)語和定義適用于本部分。
3.1
消息鑒別碼messageauthenticationcodeMAC
利用對稱密碼技術(shù),以密鑰為參數(shù),由消息導(dǎo)出的數(shù)據(jù)項。任何持有這一密鑰的實體,都可利用消
息鑒別碼檢查消息的完整性和始發(fā)者。
3.2
消息鑒別碼(MAC)算法密鑰MACalgorithmkey
一種用于控制消息鑒別碼算法運算的密鑰。
3.3
消息鑒別碼算法MessageAuthenticationCodealgorithm
消息鑒別碼算法簡稱MAC算法,其輸入為密鑰和消息,輸出為一個固定長度的比特串,滿足下面兩
個性質(zhì):
1
GB/T15852.2—XXXX
-對于任何密鑰和消息,MAC算法都能夠快速地計算。
-對于任何固定的密鑰,攻擊者在沒有獲得密鑰信息的情況下,即使獲得了一些(消息,MAC)對,
對任何新的消息預(yù)測其MAC在計算上是不可行的。
注:一個MAC算法有時被稱作一個密碼校驗函數(shù)。計算不可行性依賴于使用者具體的安全要求及其環(huán)境。
3.4
輸出變換outputtransformation
應(yīng)用在算法中,對迭代操作的輸出所進行的變換。
3.5
抗碰撞雜湊函數(shù)collision-resistanthash-function
滿足如下性質(zhì)的雜湊函數(shù):
-尋找兩個不同的輸入,使得它們的輸出相同,在計算上是不可行的。
3.6
消息比特串(數(shù)據(jù))datastring(data)
雜湊函數(shù)的輸入比特串。
3.7
雜湊值hash-code
雜湊函數(shù)的輸出比特串。
3.8
雜湊函數(shù)hash-function
將任意長消息比特串映射到定長比特串的函數(shù),并且滿足如下兩個性質(zhì):
-對于任何輸出,找到它所對應(yīng)的輸入在計算上是不可行的。
-對于任何輸入,找到區(qū)別于它且和它具有相同輸出的輸入在計算上是不可行的。
3.9
初始值initializingvalue
雜湊函數(shù)開始工作時用到的值。
3.10
填充padding
在消息比特串后面附加額外比特串的操作。
3.11
分組block
一種定義了長度的比特串。
2
GB/T15852.2—XXXX
3.12
輪函數(shù)round-function
將兩個長度為和的比特串映射到一個長度為的比特串的函數(shù)。
L1L2L2(.,.)
注:它被反復(fù)地用在雜湊函數(shù)中,將長度為的比特串和前面長度為的輸出值相合并。
L1L2
3.13
字word
長度為32位的比特串。
4符號和記法
下列符號和記法適用于本部分。
D、D'將要被輸入到MAC算法的消息比特串;
mMAC值的比特長度;
q經(jīng)過填充和分割操作后,消息比特串D的分組個數(shù);
比特串最左邊的比特;
MSBj(X)Xj
XY比特串X和Y的異或值;
X||Y按順序?qū)⒈忍卮甔和Y連接所構(gòu)成的比特串;
:MAC算法定義中使用的賦值符號;
D經(jīng)過填充的消息比特串;
h雜湊函數(shù);
h'被修改了常數(shù)和初始值的雜湊函數(shù)h;
h簡化的雜湊函數(shù)h,沒有數(shù)據(jù)填充和長度附加;
'''長度為比特串,在MAC算法計算中被用來存儲臨時結(jié)果;
H、HL2
'初始值;
IV、IV、IV1、IV2
kMAC算法密鑰的比特長度;
KMAC算法的密鑰;
'MAC算法1和3中的導(dǎo)出密鑰;
K、K0、K1、K2
、、MAC算法2中的導(dǎo)出密鑰;
KK1K2
LMAC算法3中表示消息長度的比特串;
3
GB/T15852.2—XXXX
OPAD、IPADMAC算法2中使用的常數(shù)比特串;
R、S0、S1、S2MAC算法1和3中,用來導(dǎo)出一系列常數(shù)的常數(shù)比特串;
、、MAC算法1和3中,用來導(dǎo)出子密鑰的128比特常數(shù);
T0T1T2
、、MAC算法1和3中,用來導(dǎo)出子密鑰的768比特常數(shù);
U0U1U2
'使用修改后常數(shù)的輪函數(shù);
128比特串的第個字,即:;
K1[i]K1iK1K1[0]||K1[1]||K1[2]||K1[3]
H雜湊值;
LX比特串X的比特長度;
、'輪函數(shù)中用到的常數(shù)字;
CiCi
專用雜湊函數(shù)4中用到的常數(shù)矩陣;
CCi
輸入到輪函數(shù)的兩個比特串中,第一個比特串的比特長度;
L1
輸入到輪函數(shù)的兩個比特串中,第二個比特串的比特長度;
L2
輪函數(shù)輸出值的比特長度;初始值IV的比特長度。
輪函數(shù),即:若和分別表示長度為和的比特串,則
XYL1L2
(X,Y)表示將作用到X和Y所得到的比特串。
模232加法操作,即:若A和B是字,那么把A和B看作是整
32
數(shù)的2進制表示,計算它們的和再模232,所得到的結(jié)果在0和
32之間,把它看作為字,記作。
21A32B
注:只能被用來處理長度為整數(shù)倍的輸入比特串。
hL1
5要求
采用本部分MAC算法的使用者應(yīng)當(dāng)選擇:
1)從章節(jié)6、7、8中選取一種MAC算法;
2)從GB/T18238.3-2002中的專用雜湊函數(shù)1、2、3或ISO/IEC10118-3:2004中的專用雜湊函數(shù)7中
選取一個雜湊函數(shù);
3)MAC的長度m。
對于MAC算法1和2,MAC的長度應(yīng)該是一個正整數(shù)并且不大于雜湊值長度。對于MAC算法3,MAC
mLH
的長度m應(yīng)該是一個正整數(shù)并且不大于雜湊值長度的二分之一,即。
mLH/2
對于MAC算法1和2,消息比特串D的比特長度不大于2641;對于MAC算法3,消息比特串D的比特
長度不大于256。
對一個具體MAC算法、專用雜湊函數(shù)、m值的選擇超出了本部分所規(guī)定的范圍。
注:上述選擇將影響MAC算法的安全強度,具體請參考附錄B。
4
GB/T15852.2—XXXX
生成MAC和驗證MAC應(yīng)當(dāng)使用同樣的密鑰。
6MAC算法1
MAC算法1計算MAC值要求調(diào)用一次雜湊函數(shù),而且要求修改其中的輪函數(shù)常數(shù)。
雜湊函數(shù)應(yīng)當(dāng)從GB/T18238.3-2002中的專用雜湊函數(shù)1、2、3或ISO/IEC10118-3:2004中的專用
雜湊函數(shù)7中選取。
密鑰長度k不大于128比特。
注:本條款包括MDx-MAC的描述【5】。具體來講,若采用專用雜湊函數(shù)1,MAC算法1也被稱作RIPEMD-160-MAC;
若采用專用雜湊函數(shù)2,MAC算法1也被稱作RIPEMD-128-MAC;若采用專用雜湊函數(shù)3,MAC算法1也被稱作
SHA-1-MAC;若采用專用雜湊函數(shù)4(即ISO/IEC10118-3:2004中的專用雜湊函數(shù)7),MAC算法1也被稱作
WHIRLPOOL-MAC。
6.1MAC算法1的描述
MAC算法1要求如下五步操作:密鑰擴展、修改常數(shù)和初始值、雜湊操作、輸出變換和截斷操作。
6.1.1密鑰擴展
若K長度小于128比特,那么將K重復(fù)足夠多次數(shù),從連接起來的比特串中選取最左邊128比特作
為128比特密鑰K'(若K的長度恰好為128比特,則K':K),即:
'
K:MSB128(K||K||||K)
按照如下操作計算子密鑰、和:
K0K1K2
''
K0:h(K||U0||K)
''
K1:MSB128(h(K||U1||K))
''
K2:MSB128(h(K||U2||K))
其中,、和是768比特的常數(shù),在條款9中有定義。表示簡化的雜湊函數(shù),即沒有數(shù)據(jù)
U0U1U2hh
填充和長度附加。
注:數(shù)據(jù)填充和長度附加可以被省略,是因為在這里輸入比特串的長度總是比特。
2L1
導(dǎo)出的密鑰被分割成四個字,表示為,即:。
K1K1[i]iK1K1[0]||K1[1]||K1[2]||K1[3]
從比特串到字的轉(zhuǎn)換,需要規(guī)定字節(jié)的排列順序。在這里的轉(zhuǎn)換中,采用GB/T18238.3-2002中對
所有專用雜湊函數(shù)規(guī)定的字節(jié)排列順序。
6.1.2修改常數(shù)和初始值
輪函數(shù)中采用的附加常數(shù),被修改為它與四個字中的一個進行模32加的結(jié)果,比如說:
K12
C0:C032K1[0]
5
GB/T15852.2—XXXX
在條款9中具體規(guī)定了中的哪個字與哪個常數(shù)相加。用'取代雜湊函數(shù)的初始值,所
K1IV:K0IV
得的雜湊函數(shù)記作h',其中的輪函數(shù)記作'。
6.1.3雜湊操作
用D表示輸入到被修改的雜湊函數(shù)h'中的比特串,即:
H':h'(D)
6.1.4輸出變換
'
再一次應(yīng)用被修改的輪函數(shù),其中輸入的第一個參數(shù)為K2||(K2T0)||(K2T1)||(K2T2),第
二個參數(shù)為H'(雜湊操作的結(jié)果),即:
'''',
H:(K2||(K2T0)||(K2T1)||(K2T2),H)
這里、和都是長度為128的比特串,在條款9中對所有專用雜湊函數(shù)均有定義。
T0T1T2
注:輸出變換對應(yīng)于處理一個額外的數(shù)據(jù)分組,這個額外的數(shù)據(jù)分組是在數(shù)據(jù)填充和長度附加操作之后,由導(dǎo)
K2
出。
6.1.5截斷操作
取比特串H''最左邊m比特,作為MAC值,即:
''
MAC:MSBm(H)
6.2MAC算法1的效率
假定填充后的消息比特串包括q個分組(這里填充方法由具體的雜湊函數(shù)決定),那么MAC算法1
調(diào)用輪函數(shù)q7次。
'
通過預(yù)計算K0、K1和K2,并且在雜湊函數(shù)的應(yīng)用中用IV取代IV,MAC算法1調(diào)用輪函數(shù)的次數(shù)
可以降低到q1次。
處理長的消息比特串時,MAC算法1和相應(yīng)雜湊函數(shù)的性能相當(dāng)。
7MAC算法2
MAC算法2計算MAC值要求調(diào)用兩次雜湊函數(shù)。
雜湊函數(shù)應(yīng)當(dāng)從GB/T18238.3-2002中的專用雜湊函數(shù)1、2、3或ISO/IEC10118-3:2004中的專用雜
湊函數(shù)7中選取,并且要求是8的正整數(shù)倍,。
L1L2L1
注:GB/T18238.3-2002中的雜湊函數(shù)1、2、3和ISO/IEC10118-3:2004中的雜湊函數(shù)7滿足這些條件。
6
GB/T15852.2—XXXX
密鑰長度不小于比特(是雜湊值的比特長度),不大于比特(為輸入到輪函數(shù)的比特
kL2L2L1L1
串的比特長度),即:。
L2kL1
7.1MAC算法2的描述
MAC算法2要求如下四步操作:密鑰擴展、雜湊操作、輸出變換和截斷操作。
7.1.1密鑰擴展
在密鑰的右側(cè)填充個0,所得的長度為的比特串記作。
KL1kL1K
按照如下的方法,將擴展為兩個子密鑰和:
KK1K2
·將16進制的值“36”(二進制表示為“00110110”)重復(fù)次連接起來,所得比特串記作。
L1/8IPAD
然后將和比特串相異或,記作。即:
KIPADK1
。
K1:KIPAD
·將16進制的值“5C”(二進制表示為“01011100”)重復(fù)次連接起來,所得比特串記作。
L1/8OPAD
然后將和比特串相異或,記作。即:
KOPADK2
。
K2:KOPAD
7.1.2雜湊操作
將和相連接,作為輸入到雜湊函數(shù)的比特串,即:
K1D
'。
H:h(K1||D)
7.1.3輸出變換
將和'相連接,作為輸入到雜湊函數(shù)的比特串,即:
K2H
'''。
H:h(K2||H)
7.1.4截斷操作
取比特串H''最左邊m比特,作為MAC值,即:
''。
MAC:MSBm(H)
7
GB/T15852.2—XXXX
7.2MAC算法2的效率
假定填充后的消息比特串包括q個分組(這里填充方法由具體的雜湊函數(shù)決定),那么采用專用雜
湊函數(shù)1、2和3時,MAC算法2調(diào)用輪函數(shù)q3次;采用專用雜湊函數(shù)4時,MAC算法2調(diào)用輪函數(shù)q4
次。
通過修改雜湊函數(shù)代碼,MAC算法2調(diào)用輪函數(shù)的次數(shù)可以降低2次。
使用者可以預(yù)計算和,并且在第一次調(diào)用雜湊函數(shù)時用取代,
IV1:(K1,IV)IV2:(K2,IV)IV1IV
在輸出變換中(第二次調(diào)用雜湊函數(shù))用取代。同時,這也要求對填充方法進行修改。事實上,
IV2IV
對雜湊函數(shù)實際輸入的比特長度少了,這樣必須把的值加到上。
L1L1LD
處理長的消息比特串時,MAC算法2和相應(yīng)雜湊函數(shù)的性能相當(dāng)。
8MAC算法3
注:本條款包括MAC算法1的一個變種,對短的輸入(不大于256比特)做了優(yōu)化。
MAC算法3計算MAC值,要求調(diào)用7次簡化的輪函數(shù);但是通過預(yù)計算,可以降低到調(diào)用一次簡化的
輪函數(shù)。
雜湊函數(shù)應(yīng)當(dāng)從GB/T18238.3-2002中的專用雜湊函數(shù)1、2、3或ISO/IEC10118-3:2004中的專用雜
湊函數(shù)7中選取。
密鑰長度不大于128比特,MAC值長度不大于比特。
kmLH/2
8.1MAC算法3的描述
MAC算法3要求如下五步操作:密鑰擴展、修改輪函數(shù)的常數(shù)、數(shù)據(jù)填充、應(yīng)用輪函數(shù)和截斷操作。
8.1.1密鑰擴展
若K長度小于128比特,那么將K重復(fù)足夠多次數(shù),從連接起來的比特串中選取最左邊128比特作
為128比特密鑰K'(若K的長度恰好為128比特,則K':K),即:
'
K:MSB128(K||K||||K)
按照如下操作計算子密鑰、和:
K0K1K2
''
K0:h(K||U0||K)
''
K1:MSB128(h(K||U1||K))
''
K2:MSB128(h(K||U2||K))
其中,、和是768比特的常數(shù),在條款9中有定義。表示簡化的雜湊函數(shù),即沒有數(shù)據(jù)
U0U1U2hh
填充和長度附加。
注:數(shù)據(jù)填充和長度附加可以被省略,是因為在這里輸入比特串的長度總是比特。
2L1
8
GB/T15852.2—XXXX
導(dǎo)出的密鑰被分割成四個字,表示為,即:。
K1K1[i]iK1K1[0]||K1[1]||K1[2]||K1[3]
從比特串到字的轉(zhuǎn)換,需要規(guī)定字節(jié)的排列順序。在這里的轉(zhuǎn)換中,采用GB/T18238.3-2002中對
所有專用雜湊函數(shù)規(guī)定的字節(jié)排列順序。
8.1.2修改輪函數(shù)的常數(shù)
輪函數(shù)中采用的附加常數(shù),被修改為它與四個字中的一個進行模32加的結(jié)果,比如說:
K12
C0:C032K1[0]
在條款9中具體規(guī)定了中的哪個字與哪個常數(shù)相加。用'取代雜湊函數(shù)的初始值,所
K1IV:K0IV
得的輪函數(shù)記作'。
8.1.3數(shù)據(jù)填充
對原始消息填充的比特串只用來計算MAC,所以這些填充比特串(如果有)不必隨原始消息存儲或
發(fā)送。MAC的驗證者應(yīng)當(dāng)知道填充比特串是否已經(jīng)被存儲或發(fā)送。
對要輸入到MAC算法的消息比特串D,在其右側(cè)填充盡可能少(可能沒有)的“0”以使得填充后
比特串D的長度是256比特。
注:如果消息比特串D是空串,那么規(guī)定填充后的比特串D為256個“0”。
8.1.4應(yīng)用輪函數(shù)
消息比特串的長度記作,其二進制表示記作。在最左邊填充足夠少的“0”使得的長度
DLDLLL
為128比特,最右邊的比特和最低位相對應(yīng)。
LLD
將、和與的異或值相連接,作為輪函數(shù)'(使用修改過的常數(shù))的輸入,即:
K2DK2L
'''。
H:(K2||D||(K2L),IV)
8.1.5截斷操作
取比特串H'最左邊m比特,作為MAC值,即:
'。
MAC:MSBm(H)
8.2MAC算法3的效率
MAC算法3需要調(diào)用7次輪函數(shù),通過預(yù)計算、和,可以降低到一次。
K0K1K2
9
GB/T15852.2—XXXX
9常數(shù)的計算
本條款中規(guī)定的常數(shù),將被用在MAC算法1和條款8的MAC算法3中。
比特串和是MAC算法中固定的元素,它們通過雜湊函數(shù)計算得到(只計算一次),并且在四個
TiUi
專用雜湊函數(shù)中各不相同。
128比特的和768比特的按照如下的方法定義:
TiUi
Ti:MSB128(h(Si||R)),i0,1,2
Ui:Ti||Ti1||Ti2||Ti||Ti1||Ti2,i0,1,2
其中下標(biāo)的加法是模3加。是496比特的常數(shù),、和都是16比特
R"abyzABYZ0189"S0S1S2
的常數(shù),其中通過重復(fù)兩次數(shù)字的16進制ASCII編碼得到(比如說,的表示為3131)。和都
SiiS1RSi
采用ASCII編碼,ASCII編碼等同于GB/T1988-1998所使用的編碼。
對于所有的常數(shù)、'和所有的字,最高位和最左邊的比特相對應(yīng)。常數(shù)和'用16進制
CiCiK1[i]CiCi
表示。
9.1專用雜湊函數(shù)1
專用雜湊函數(shù)1中的128比特常數(shù)定義如下:(用16進制表示)
Ti
T01CC7086A046AFA22353AE88F3D3DACEB
T1E3FA02710E491D851151CC34E4718D41
T293987557C07B8102BA592949EB638F37
專用雜湊函數(shù)1的輪函數(shù)中用到兩個常數(shù)字序列和''',它們定義如下:
C0,C1,,C79C0C1,,C79
CiK1[0]3200000000,(0i15),
CiK1[1]325A827999,(16i31),
CiK1[2]326ED9EBA1,(32i47),
CiK1[3]328F1BBCDC,(48i63),
CiK1[0]32A953FD4E,(64i79),
'
CiK1[1]3250A28BE6,(0i15),
'
CiK1[2]325C4DD124,(16i31),
'
CiK1[3]326D703EF3,(32i47),
'
CiK1[0]327A6D76E9,(48i63),
'
CiK1[1]3200000000,(64i79)
10
GB/T15852.2—XXXX
9.2專用雜湊函數(shù)2
專用雜湊函數(shù)2中的128比特常數(shù)定義如下:(用16進制表示)
Ti
T0FD7EC18964C36D53FC18C31B72112AAC
T12538B78EC0E273949EE4C4457A77525C
T2F5C93ED85BD65F609A7EB182A85BA181
專用雜湊函數(shù)2的輪函數(shù)中用到兩個常數(shù)字序列和''',它們定義如下:
C0,C1,,C63C0C1,,C63
CiK1[0]3200000000,(0i15),
CiK1[1]325A827999,(16i31),
CiK1[2]326ED9EBA1,(32i47),
CiK1[3]328F1BBCDC,(48i63),
'
CiK1[0]3250A28BE6,(0i15),
'
CiK1[1]325C4DD124,(16i31),
'
CiK1[2]326D703EF3,(32i47),
'
CiK1[3]3200000000,(48i63)
9.3專用雜湊函數(shù)3
專用雜湊函數(shù)3中的128比特常數(shù)定義如下:(用16進制表示)
Ti
T01D4CA39FA40417E2AE5A77B49067BBCC
T19318AFEF5D5A5B46EFCA6BEC0E138940
T24544209656E14F97005DAC76868E97A3
專用雜湊函數(shù)3的輪函數(shù)中用到一個常數(shù)字序列,它定義如下:
C0,C1,,C79
CiK1[0]325A827999,(0i19),
CiK1[1]326ED9EBA1,(20i39),
CiK1[2]328F1BBCDC,(40i59),
CiK1[3]32CA62C1D6,(60i79)
9.4專用雜湊函數(shù)4
專用雜湊函數(shù)4中的128比特常數(shù)定義如下:(用16進制表示)
Ti
T036129D71469F205824E118E1F922295A
T119A934B16952C37951C31AA9699FD5A4
T2313D9B56799988C1A3639FB2BDFEF274
11
GB/T15852.2—XXXX
專用雜湊函數(shù)4的輪函數(shù)中用到一個常數(shù)矩陣序列,它們定義如下:
CC1,CC2,,CC10
1823C6E887B8014F36A6D2F5796F9152
K[0]0000000000000000
100000000
00000000000000000000000000000000
00000000000000000000000000000000
CC=,CC=,
1000000000000000020000000000000000
0000000000000000K1[1]00000000
00000000000000000000000000000000
00000000000000000000000000000000
60BC9B8EA30C7B351DE0D7C22E4BFE57
K[2]0000000000000000
100000000
00000000000000000000000000000000
00000000000000000000000000000000
CC=,CC=,
3000000000000000040000000000000000
0000000000000000K1[3]00000000
00000000000000000000000000000000
00000000000000000000000000000000
157737E59FF04ADA58C9290AB1A06B85
K[0]0000000000000000
100000000
00000000000000000000000000000000
00000000000000000000000000000000
CC=,CC=,
5000000000000000060000000000000000
0000000000000000K1[1]00000000
00000000000000000000000000000000
00000000000000000000000000000000
BD5D10F4CB3E0567E427418BA77D95D8
K[2]0000000000000000
100000000
00000000000000000000000000000000
00000000000000000000000000000000
CC=,CC=,
7000000000000000080000000000000000
0000000000000000K1[3]00000000
00000000000000000000000000000000
00000000000000000000000000000000
12
GB/T15852.2—XXXX
FBEE7C66DD17479ECA2DBF07AD5A8333
K[0]0000000000000000
100000000
00000000000000000000000000000000
00000000000000000000000000000000
CC=,CC=。
90000000000000000100000000000000000
0000000000000000K1[1]00000000
00000000000000000000000000000000
00000000000000000000000000000000
13
GB/T15852.2—XXXX
AA
附錄A
(資料性附錄)
使用MAC算法生成MAC的示例
A.1概述
本附錄提供了使用MAC算法1、2和3生成MAC的過程示例,采用四種專用雜湊函數(shù);其中,專用雜湊
函數(shù)1、2、3分別是GB/T18238.3-2002中規(guī)定的專用雜湊函數(shù)1、2、3,專用雜湊函數(shù)4是ISO/IEC10118-3:
2004中規(guī)定的專用雜湊函數(shù)7。每個雜湊函數(shù)值的計算有九個示例。表1包含了序號為1至9的輸入比特串。
在整個附錄中,我們對消息比特串采用ASCII編碼,ASCII編碼等同于GB/T1988-1998所使用的編碼。
兩個128比特的密鑰如下:
密鑰1=00112233445566778899AABBCCDDEEFF
密鑰2=0123456789ABCDEFFEDCBA9876543210
表1用于測試的輸入數(shù)據(jù)
序號:輸入比特串
1“”(空比特串)
2“a”
3“abc”
4“messagedigest”
5“abcdefghijklmnopqrstuvwxyz”
6“abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq”
7“ABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz0123456789”
8“1234567890”重復(fù)8次所得的長為80的字符串
9“a”重復(fù)1,000,000次得到1兆長的字符串
A.2MAC算法1
在這一部分的示例中,選取mL2/2。具體來講,在專用雜湊函數(shù)1和3中,m80;在專用雜湊
函數(shù)2中,m64;在專用雜湊函數(shù)4中,m256。
A.2.1專用雜湊函數(shù)1
密鑰1:00112233445566778899
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 在企業(yè)安全生產(chǎn)約談會上講話稿范本
- 三態(tài)股份招股書解析
- 安全生產(chǎn)責(zé)任狀(模板)
- 微積分習(xí)題(答案)
- 通信電源標(biāo)準(zhǔn)規(guī)范
- 香料作物種植與農(nóng)業(yè)科技創(chuàng)新能力提升策略制定與實施考核試卷
- 高鐵設(shè)備智能制造與大數(shù)據(jù)分析考核試卷
- 節(jié)能工程合同管理考核試卷
- 空調(diào)器國際市場法規(guī)與標(biāo)準(zhǔn)考核試卷
- 防洪設(shè)施建設(shè)對旅游業(yè)的影響考核試卷
- 手術(shù)室發(fā)生地震應(yīng)急預(yù)案演練
- 配合、協(xié)調(diào)、服務(wù)方案
- 市政工程監(jiān)理大綱
- 2023-2024學(xué)年廣東省廣州市黃埔區(qū)六年級(上)期末數(shù)學(xué)試卷(A卷)
- 初中數(shù)學(xué)新課程標(biāo)準(zhǔn)(2024年版)
- 2024年北京市學(xué)業(yè)水平合格性地理試卷(第一次)
- 黑龍江哈爾濱六中2025屆高三第六次模擬考試數(shù)學(xué)試卷含解析
- GB/T 36547-2024電化學(xué)儲能電站接入電網(wǎng)技術(shù)規(guī)定
- 會議記錄培訓(xùn)教材課件幻燈片
- 期末測試卷(一)2024-2025學(xué)年 人教版PEP英語五年級上冊(含答案含聽力原文無聽力音頻)
- 售后服務(wù)人員培訓(xùn)資料課件
評論
0/150
提交評論