首页 > 国家标准(GB) > GB/T 15277-1994 信息处理 64bit分组密码算法的工作方式
GB/T 15277-1994

基本信息

标准号: GB/T 15277-1994

中文名称:信息处理 64bit分组密码算法的工作方式

标准类别:国家标准(GB)

标准状态:已作废

发布日期:1994-01-02

实施日期:1995-08-01

作废日期:2005-10-14

出版语种:简体中文

下载格式:.rar.pdf

下载大小:229049

标准分类号

标准ICS号:信息技术、办公机械设备>>35.040字符集和信息编码

中标分类号:电子元器件与信息技术>>信息处理技术>>L80数据加密

关联标准

替代情况:作废;

采标情况:=ISO 8372-87

出版信息

出版社:中国标准出版社

书号:155066.1-11540

页数:平装16开, 页数:10, 字数:16千字

标准价格:10.0 元

出版日期:2004-08-21

相关单位信息

复审日期:2004-10-14

起草单位:机械部第三十研究所

归口单位:全国信息安全标准化技术委员会

发布部门:国家技术监督局

主管部门:国家标准化管理委员会

标准简介

本标准描述了采用秘密密钥的任意一种64bit分组密码算法的四种工作方式。本标准规定了四种确定的工作方式,以便在64bit分组密码的任何应用(例如数据传输,数据存储,鉴别)中,对诸如工作方式的详细说明、启动变量的生成以及参数值的选定提供一个有用的参照。 GB/T 15277-1994 信息处理 64bit分组密码算法的工作方式 GB/T15277-1994 标准下载解压密码:www.bzxz.net

标准图片预览






标准内容

中华人民共和国国家标准
信息处理
64bit分组密码算法的工作方式
Information processing--Modes of operation for a64-bit block cipher algorithmGB/T15277---94
本标准等效采用国际标准ISO8372—1987《信息处理64bit分组密码算法的工作方式》。1主题内容与适用范围
本标准描述了采用秘密密钥的任意一种64bit分组密码算法的四种工作方式。注:附录A(参考件)包含了对每一种工作方式性质的简要评述。本标准规定了四种确定的工作方式,以便在64bit分组密码的任何应用(例如数据传输,数据存储,鉴别)中,对诸如工作方式的详细说明、启动变量的生成以及参数值的选定提供一个有用的参照。注:对密文反馈(CFB)工作方式(见第6章),要确定两个参数和k,对输出反馈(OFB)工作方式(见第7章),要确定个参数。在使用其中一种工作方式时,相应参数要由通信的所有各方选定和使用。2术语
2.1明文 plaintext
未加密的信息。
2.2 密文 ciphertext
已加密的信息。
2.3分组链接block chaining
一种信息加密方法,每一个密文分组在密码上依赖于前-个密文分组。2.4初始化值(IV)initializing value(IV)用来确定加密过程的启动点的值。2.5 启动变量(SV) starting variable(SV)由初始化值导出的且用来确定工作方式启动点的变量。注:本标准没有规定由初始化值导出启动变量的方法。这需要在应用这些工作方式时另行描述。2.6密码同步cryptographic synchronization加密与解密过程的协调一致。
3记法
本标准中,由分组密码算法定义的函数关系记为C = eK(P)
式中:P——明文分组;
C-密文分组;
K—密钥。
国家技术监督局1994-12-07批准1995-08-01实施
eK表示使用密钥K的加密运算。
对应的解密函数记为:
GB/T 15277—94
P = dK(C)
用大写字母表示的变量,如上述P和C,表示一维比特阵列,例如;A - (ar,az,.,am) B- (br,bz,.,bm)便是两个m比特阵列,其比特从1至m编号。模2加法运算,也称作异或函数,用符号④来表示。A,B两个阵列的模2加运算定义为:A甲B - (a,田bi,a, b,,***,ambm)选取阵列A的最左边i个比特以产生个i比特阵列的运算记为:A~ j {ar,az,,a,)
这种运算只有当j≤m(m是阵列A中的比特数)时才有定义。\移位函数\S定义如下:
已知-个m比特变量X和一个k比特变量F,这里k≤m,移位函数S(X|F)的作用就是产生如Fm比特的变量:
S,(X/F) = (x++1,Xh+2,..,Xm.f,,f2..,ff)它的作用乃是将阵列X中的比特向左移动k个位置,舍弃x1,,x,并将阵列F放到X的最右边的k个位置上.
本标准中使用这个函数的种特殊情况,X为k比特全\1\的变量,记作I(k),F为i比特变量C,此处jS,(I(K) IC) (1,1,*.,1,C,,C2,.,Cj)此阵列的最左边为kj个\1\。
4电子密本(ECB)方式
已知个64比特的明文分组P,加密算法产生-个64bit密文分组C,即:C = eK(P)
解密算法产生:
P dK(C)
这种使用加密算法的方式称作\电子密本\方式。5密码分组链接(CBC)方式
用于CBC加密方式的变量为:
a.n个明文分组 Pi,P2,,P,组成的序列,每个分组都是64bit;b.
密钥K,
64bit启动变量SV;
d.n个密文分组C1,Cz,,C.组成的结果序列,每个分组都是64bit。注:本标准没有描述生成 SV的方法。CBC加密方式描述如下。
加密第一个明文分组:
C eK(P,田SV)
接着:
C eK(P田Ci--) i -- 2,3,,n
这一过程如图1的上半部分所示。启动变量SV用于产生第一个密文输出分组。随后,将密文分组与下一个明文分组进行模2加后再加密。2
(1)
(2)
CBC解密方式描述如下。:
解密第一个密文分组:
接着:
GB/T 1527794
P, = dK(C,)田SV
P, = dK(C)田Ci-1 i- 2,3,,n
这一过程如图1的下半部分所示。P
密码分组链接(CBC)工作方式
6密文反馈(CFB)方式
6.1两个参数定义一种CFB工作方式:反馈变量的大小k,1≤k≤64;
明文变量的大小j,l≤j≤k。
用于CFB工作方式的变量为:
8。输入变量:
1)n个明文变量P1,P2,,P,组成的序列,每个变量都是i比特;2)密钥K,
3)64bit的启动变量SV。
b.中间结果:
1)n个算法输入变量X1,X2,,X,组成的序列,每个变量都是64bit,加密算法
解密算法
2)n个算法输出变量Y,Y2,,Y。组成的序列,每个变量都是64bit;3)n个变量Ei,E2,,E,组成的序列,每个变量都是i比特;4)n个反馈变量F,,F2,,F。组成的序列,每个变量都是k比特。c.输出变量,即n个密文变量Ct,C2,…,C,组成的序列,每个变量都是i比特。注,本标准没有描述生成SV的方法。(3)
(4)
变量X的初始值置为:
GB/T15277—94
X, sV
6.2对每个明文分组的加密运算采用下列五个步骤:使用加密算法:
Y = eK(X,)
选取最左边i比特:
E ,~j
产生密文分组:
C, P,田E,
产生反馈分组:
F, = S(I(k)IC.)
e.对x移位:
Xi+1 Sk(X;IF)
(5)
(6)
..........( 8)
(10)
对i为1、2、n,重复上述步骤,但最后一轮时,作完(8)式就结束。这一过程如图2的左半部分所示。加密算法输出Y的最左边j比特用来和j比特明文分组按模2加进行加密,Y的其余比特舍弃不用。明文和密文分组中比特从1至编号。加密
k比特
加密算法下载标准就来标准下载网
j比特
i比特
图2密文反馈(CFB)工作方式
k比特
加密算法
在密文分组最左边添加k一i个\1\,将其扩展成一个k比特阵列F,然后将X阵列中的比特左移k位并将阵列F插到它的最右边k位,以产生新的X。在此移位操作中,舍弃X的最左边k个比特。阵列X的初始值就是启动变量(SV)
6.3用于解密的变量和加密所用的相同,变量X的初始值X,置为SV。对每个密文分组的解密运算采用下列五个步骤:使用加密算法:
Y = eK(X)
选取最左边比特:
(11)
c.产生明文分组:
d.产生反馈分组:
e.对X移位:
GB/T 15277—94
E - Y, ~j
P =C,E
F: = S,(I(k)IC)
(12)
(14)
.(15)
Xi+1 = Sr(XIF)
对i为1、2、*、n,重复上述步骤,但最后一轮时,作完(13)式就结束。这一过程如图2右半部分所示。加密算法输出Y的最左边i比特用来和i比特的密文分组按模2加进行解密,Y的其余比特舍弃不用。明文和密文分组中的比特从1至i编号。在密文分组最左边添加k一i个\1\,将其扩展成一个k比特阵列F,然后将阵列x中的比特左移k位,并将阵列F插到它的最右边k位,以产生新的X。在此移位操作中,舍弃X的最左边k个比特。阵列X的初始值就是启动变量(SV)。6.4建议采用i与k相等的CFB方式。此时,(9)式和(14)式可写成:
F =C(jk时)
7输出反馈(OFB)方式
7.1一个参数,即明文变量的大小j,定义一种OFB工作方式,这里1≤j≤64。用于OFB工作方式的变量为:
a。输入变量:
1)n个明文分组P,,P2,,P组成的序列,每个分组都是i比特;2)密钥K,
3)64bit的启动变量SV。
b.中间结果:
1)n个算法输入变量X,Xz,,X,组成的序列,每个变量都是64bit;2)n个算法输出变量Y,,Y2,,Y,组成的序列,每个变量都是64bit;3)n个变量E,,E2,\-,E组成的序列,每个变量都是j比特。c.输出变量,即n个密文分组C,C2,,C.组成的序列,每个分组都是i比特。注:本标准没有描述生成 SV的方法。变量X的初始值置为:
X, = SV
7.2对每个明文分组的加密运算采用下列四个步骤:a.
使用加密算法:
Y. eK(X)
选取最左边i比特:
E, =Y, ~j
c、产生密文分组:
C, = P甲E:
d.反馈运算:
Xi+1 = Y,
-(16)
(17)
.(18 )
(19)
.(20)
对i为1、2、、n,重复上述步骤,但最后一轮时,作完(19)式就结束。这一过程如图3左半部分所示。加密算法的每次输出Y:被用于反馈,成为X的新值Xi+1。Y:的最左边i比特用来对输入分组加密。5
GB/T15277—94
7.3用于解密的变量与加密所用的相同。变量的初始值X置为SV。对每个密文分组的解密运算采用下列四个步骤:使用加密算法:
Y = eK(X,)
选取最左边比特:
E =Y; ~j
产生明文分组:
反馈运算:
P, = C 田E
Xi+1 = Y,
心心地业心
由中小
(21 )
(22)
对为1、2、、n,重复上述步骤,但最后一轮,作完(23)式就结束。这一过程如图3右半部分所示。变量X,和Y的值与加密时所用的值相同,只有(23)式与(19)式不同。加游
加辫算法
加密藓法
图3输出反馈(OFB)工作方式
A1电子密本(ECB)工作方式的性质GB/T15277-94
附录A
工作方式的性质
(参考件)
在计算机之间或人与人之间,传送信息的报文可能有重复,或者是常用序列。在ECB方式中,对于相同的密钥,相同的明文产生相同的密文,这一特性使ECB方式不适于一般使用,在今后那些可以接受这种重复特性的应用标准中会规定ECB方式的使用方法。如果加密和解密之间的分组边界不匹配(例如某种比特错位),则在正确的边界重新确立前,加密和解密运算一直失步,此时所有的解密结果都是不正确的。A2密码分组链接(CBC)工作方式的性质凡是使用同一个密钥和同一个初始化值加密相同的明文,CBC方式便得到相同的密文。计较该特性的用户,应设计某种方法来改变明文的起点、密钥或启动变量。一种可能是在每份CBC报文的开头加上一个唯一的标识符(例如一个增1计数器);当加密那些大小不增加的记录时,可以用的另一种方法是用某个值作为初始化值,这个值可以在不知道该记录的内容的情况下,就从它计算出来(例如,在随机存取存储器中包含该记录的组号)。由于CBC方式是逐个分组加密的,它需要对完整的64bit数据分组进行运算,不足64bit的分组需要特殊处理。
在CBC方式中,单个密文分组内一比特或多个比特的错误将影响两个分组的解密(错误所在的分组及下一一个分组)。如果错误出现在第i个密文分组,则在第i个明文分组中,每个比特都将有50%的平均错误率,而第i十1个明文分组中,只在直接对应于错误的密文比特的位置上是错的。如果加密和解密间的分组边界不匹配(例如某种比特错位),则在正确的边界重新确立之前,加密与解密运算一直失步,此时所有的解密结果都是不正确的。A3密文反馈(CFB)工作方式的性质在CFB方式中,任一i比特密文单元中的错误将影响已出错的那个密文分组的解密以及后面的密文的解密,直到这些错误比特被移出CFB的输入分组为止。第一个受影响的i比特明文单元,恰好在密文发生错误的那些位置上被破坏,随后解密的明文都将有50%的平均错误率,直至所有的错误被移出输入分组。假定在这段时间里没有发生别的错误,接着就可得到正确的明文。这种特性被称作\有限错误扩散”。
如果在解密过程中,比特边界不匹配,则密码同步也将失去,这种情况将持续到重新进行密码初始化或在j比特边界重新匹配后的64bit为止。在CFB方式中,加密和解密过程两者都使用算法的加密运算。A4输出反馈(OFB)工作方式的性质OFB工作方式不会把密文错误在解得的明文输出中扩散,密文中的一比特错误只造成解密后的明文分组中相应位置上的一比特错误。此工作方式不是自同步的,如果加密和解密运算两者出现失步,则系统必须重新初始化。这种失步可能是由于i比特分组边界失去匹配(例如某种比特错位)或者可能是在一端或另一端变量X的值发生错误,从而造成两端的X值不同,直到进行重新初始化后为止。每次重新初始化,应当使用和先前同一密钥时用过的SV值不同的新的SV值。7
GB/T15277-94
附录B
本标准与国际标准 ISO 8372 的差异(参考件)
B1国际标准ISO8372的第2章“引用标准”中列举了ANSIX3.92数据加密算法”,鉴于我国的有关规定,本标准删去了ANSIX3.92。B2国际标准ISO8372的第2章只引用了ANSIX3.92,本标准删去该项后不再包含引用标准的内容,因此将国际标准ISO8372的第3章至第8章改为本标准的第2章至第7章。附加说明:
本标由中华人民共和国机械电子工业部提出。本标推由机械电子工业部第三十研究所、第四研究所负责起草。本标推主要起草人龚奇敏、李桂茹、黄家英、罗韧鸿。
小提示:此标准内容仅展示完整标准里的部分截取内容,若需要完整标准请到上方自行免费下载完整标准文档。