信息安全技术 分组密码算法的工作模式 编制说明
- 格式:doc
- 大小:39.00 KB
- 文档页数:5
分组密码⼯作模式简述这篇随笔将介绍对称加密中分组密码的⼯作模式 -- RT。
⼯作模式:其实很愚钝,今天才突然明⽩这个模式是什么意思?所谓模式,就是⽅法,就是加密的⽅法,既然是对称加密,解密⽅法也包括在内了。
在分组密码理论上,简单的说就是⼀个分组经过加密,产⽣⼀个对应的分组密⽂,⾄于如何加密,没有限制,模式就对应这⾥的“如何加密”,从A点到B点,我们可以有多种⾛法,供君选择,可以是直接A到B,也可以是A到C再到B。
在软件结构上也常如此,上层可能不需要知道底层如何⼯作,下层也不认识上层,各⾃做⾃⼰的分内事就好了。
不知道设计者是否就是出于这样的考虑,才提出这样的概念。
正如哲学所说:机制与策略分离,果真如此。
为什么今天才想通,怪!可能是把加密算法(cipher algorithm)与模式(mode)弄混了吧。
模式中会⽤到加密算法,加密算法属于模式中的⼀个环节。
常见的分组加密算法有: DES、3DES和AES。
它们都有可与之搭配的模式,参照[1]。
模式分类:1)ECB(Electronic CodeBook)A. 所有分组使⽤同⼀密钥,相同明⽂产⽣相同的密⽂,因⽽说是最简单的分组模式。
B. 加密函数加密,解密函数解密。
2) CBC(Cipher Block Chaining)A. 所有分组使⽤同⼀密钥;但是,加密算法的输⼊是本次分组明⽂与前次密⽂的异或(第⼀次需要IV),这就克服了ECB相同明⽂产⽣相同密⽂的缺陷。
B. 加密函数加密,解密函数解密。
3) CFB(Cipher FeedBack)A. 该模式的每个分组可以使⽤不同的密钥,也就成了流式密码,因⽽分组长度可以不全相等;B. IV是⼀个移位寄存器,并且每次加解密都需要使⽤;C. 类似CBC的链式结构;D. 加密函数加密,加密函数解密。
4)OFB(Output FeedBack)A. 很像CFB,只是使⽤密码算法的输出作为下⼀个分组的输⼊;5) CTRA. 使⽤唯⼀的COUNTER,经过密码算法得到的输出(流密钥)与明⽂异或得到密⽂,CTR有CFB的类似性质;B. 不同于链接式的模式,该模式可以并⾏执⾏,因⽽效率很⾼;C. 加密函数加密,加密函数解密。
信息安全技术分组密码算法的工作模式分组密码算法是一种常用的加密技术,其工作模式是将明文数据按照一定长度进行分组,然后对每一组数据进行加密处理。
分组密码算法的工作模式主要包括电子密码本模式、密码块链模式、密码反馈模式和输出反馈模式。
电子密码本模式是最简单的分组密码算法工作模式,每个明文数据块都被独立加密,加密后的密文数据块与明文数据块一一对应。
密码块链模式是将前一块密文作为下一块明文的输入进行加密,这样每一块密文都依赖于前一块密文,从而增加了安全性。
密码反馈模式是将前一块密文作为伪随机数生成器的输入,然后将生成的伪随机数与明文数据块异或后进行加密,从而达到了与密码块链模式类似的效果。
输出反馈模式则是将前一次加密产生的输出作为伪随机数生成器的输入,然后将生成的伪随机数与明文数据块异或后进行加密,这种模式也能增加加密强度。
总之,分组密码算法的工作模式对于信息安全技术的发展和应用具有重要意义,通过选择适当的工作模式和加密参数,可以提高数据的保密性和完整性。
- 1 -。
五种分组密码工作模式介绍
以下是五种分组密码工作模式:
1.同步模式(Synchronous Mode):在同步模式下,密码系统的输入和输出数据是同步的,即每个输入数据块都会产生一个输出数据块。
这种模式下的密码系统通常具有较高的吞吐量。
2.异步模式(Asynchronous Mode):与同步模式相反,异步模式下,密码系统的输入和输出数据不是同步的。
在这种模式下,密码系统可以在一个输入数据块期间处理多个输出数据块。
这种模式下的密码系统通常具有较高的处理速度。
3.密文分组模式(Ciphertext-Based Mode):在这种模式下,密码系统的输入是密文数据,输出是解密后的明文数据。
这种模式通常用于加密和解密通信数据。
4.原始分组模式(Plaintext-Based Mode):与密文分组模式相反,原始分组模式的输入是原始明文数据,输出是加密后的密文数据。
这种模式通常用于对敏感数据进行加密存储或传输。
5.混合模式(Hybrid Mode):混合模式是将上述两种或多种模式结合在一起的工作模式。
在这种模式下,密码系统可以根据不同的应用场景和需求灵活地切换工作方式。
分组密码加密算法的常见算法结构随着计算机技术的不断发展,信息安全问题也越来越受到关注。
在信息传输过程中,数据的加密是保障信息安全的重要手段之一。
分组密码加密算法是一种常见的加密算法,它将明文数据分成若干个固定长度的分组,通过对每个分组进行加密来实现整个消息的加密。
本文将介绍分组密码加密算法的常见算法结构,以及它们的优缺点和应用场景。
1. 基本结构分组密码加密算法的基本结构由两个部分组成:明文分组和密文分组。
明文分组是指明文数据被分割成固定长度的块,每个块长度通常为64位或128位。
密文分组是指加密后的明文分组,长度与明文分组一致。
加密算法的核心是将明文分组转换为密文分组,这个过程称为加密。
解密的过程是将密文分组转换为明文分组。
分组密码加密算法的常见算法结构包括:ECB、CBC、CFB和OFB。
这些算法结构在加密和解密过程中采用不同的方式来处理明文和密文分组。
2. ECB模式ECB(Electronic Codebook)模式是最简单的分组密码加密算法结构,它将每个明文分组单独加密,得到对应的密文分组。
每个明文分组之间是独立的,因此ECB模式无法处理明文分组之间的关系。
这种模式的缺点是,它容易受到重放攻击,即攻击者可以拦截并重复发送相同的密文分组,从而获得明文数据。
ECB模式的优点是加密和解密过程简单,可以并行处理多个分组。
它适用于每个明文分组的安全性要求不高的情况,例如对称密钥的传输和存储。
3. CBC模式CBC(Cipher Block Chaining)模式是一种常见的分组密码加密算法结构,它采用前一个密文分组来加密当前的明文分组。
具体地,在加密过程中,首先将前一个密文分组和当前明文分组进行异或运算,得到一个新的数据块,然后对这个新数据块进行加密。
解密过程与加密过程相反,将密文分组解密后再与前一个密文分组进行异或运算,得到对应的明文分组。
CBC模式的优点是可以处理明文分组之间的关系,提高安全性。
分组密码的NOTP工作模式学术研究本栏目由保密通信国防科技重点实验室协办藩善誊露誊眷馥哲缮譬翥磊落茹;舔嚣|毒l蠹;萋罄.差分组密码的NOTP工作模式张玉安冯登国(信息安全国家重点实验室(中国科学院研究生院))摘委:提出了~一种寰灞的分组密码E纷模式oTP(NearlyOneTimePad).分组密码拍拟一次一密I佟模式该模式仅叹提供理想的,雯全强瘦.还嘲挺擞完罄性翻认i殴t,NOTP镇蔷了CBCI纷投式的辑柏优点而且在安全性秘运莽效率方蕊更搬优越因屹.宅矗缀多办回优予CBCI作模式关键嗣:数据糯密乍礁式一次-一密对称铜蕊密铃法引言随着DES密码算法的广为人知,电子密本ECB(ElectronicCode-book),密文分组链接CBC(CipherBlockChaining),输出反馈OFB(OutputFeedback)和密文反馈CFB(CipherFeedback)~四种DES的基本工作模式已被默认为分组密码算法的根本工作模式.此外,还有一些着名的实用工作模式,如计数器模式CTR(C0UnterM0deEncryption),无限混淆扩展模式IGE(InfiniteGarbleExtension),级连模式CM(CascadeMode,又称多重加密)等,已经被广泛应用.分组密码工作模式的研究是分组密码算法研究的一个重要方面.一个好的工作模式可以弥补分组密码算法设计中的某些不足.它不仅可能调节安全性和运算效率,还可能提供完整性和认证性.2000年3月美国NIST开始为AES公开征集基于数据保护的工作模式I".除了人们比较熟悉的ECB,CBC,CFB和OFB四种工作模式外,还征集到l5种候选工作模式,如计数模式CTR累积分组链接ABC(AccumulatedBlock Chaining),有完整性检验的分组链接IACBC(Integrity AwareCipherBlockChainingMode),繁演密文反馈PCFB (PropagatingCipherFeedback)模式等等.其中的绝大多数模式都有某方面的突出优点,同时又在其它方面存在一些(严重)缺陷.最终ECBCBC,CFB,OFB和CTR五种模式中选.其实,算法的工作模式是算法功能的一个重要组成部分.它影响算法的安全性,效率和实现.在算法的效率和易实现性可接受前提下,人们自然会希望安全性越强越好.为此,我们提出了一种新的分组密码工作模式——分组密码的拟一次一密工作模式,简称NOTP.分组密码算法的拟一次一密模式一次一密密码体制是一种最简单最自然的完全保密(perfectsecrecy)方案.由于密钥管理上的缺陷,尽管真正的一次一密体制已不再适合现代保密通信的需求,但这种理论上可证明的安全性仍然对现代密码算法设计有借鉴作用.对一个密钥长度为k,分组长度为n,且密钥长度大于分组长度的分组密码算法,如果每设置一次密钥,至多只加密[k/nJ组明文,则称该算法的工作方式为一次一密1.由此可见,当k≥n时每设置一次密钥只加密一组明文的工作方式,属于一次一密.如果加密完一个明文组后所重置的密钥与原来的密钥不同,但具有某种相关性,本文称该算法的这种工作方式为拟一次一密(NearlyOneTimePad).1.一个实用的NOTP模式实例下面给出一种具有拟一次一密特征的分组密码工作模式.其核心思想是前组密文简单地参与轮密钥扩展.具体的实现过程中包含以下两点:(1)选择一种拥有轮密钥的迭代型分组密码算法,最好该算法的密钥长度远大于分组长度.(2)在轮密钥派生方案基础上选择一组密钥更新系数,使前一个分组的密文依系数参与实用轮密钥的合成下面以SCB算法I3】的轮函数和主体结构为例,给出一个按上述步骤设计的具体实例.分组加密逻辑的主体结构如图1.ll目赫跚膏年科学鼍盎蓍l助(8o02j52o5).信||L彝翻球翱融稍毫塞'中国科学院研究生院)开放课曩基金Il助一90f即时时.cis哪ggo~@哑园圃其中基本变换A包括线性变换L,过置换型s盒,循环右移R.基本变换B包括循环左移R,过置换型s盒和线性变换L.循环左移R是将4个32比特字分别左循环移位3,25,23,13位(这些数模8互不同余,过s盒后可达到较好的混合和扩散效果).循环右移R是将4个32比特字分别右循环移位3,25,23,13位.线性变换L是将4个32比特字(a,a,a,a)变为(b,b,b,b),其中0I230I23b一a10a20a3,bI:a.0a10a2,b2一a0a10a3,b3:a0a20a3过置换型s盒足将4个32比特字看作16个字节,以字节为输入查一个自逆型8进8出s盒.要求s盒至少在差分均匀性,输入输出间的线性相关性,不动点个数等方面有较好的综合性能.这里称K,K,K,…,K为加解密各组明密0I26文所用的原始轮密钥,它们是由用户密钥(比如长度为256比特)派生的.称K..x.cl,KI.xIcl,K2.x2cI,…,KxC(i一1,2,3,…)为加解密各组明密文的实用轮密钥,它们每个都是4个32比特字.其中x,x,…,x0I6是一组相对固定的系数,可以根据算法实现能力和实现环境, 选择一组简单或复杂的系数,例如为便于硬件实现,选择(x, 0x,x,x,x,x,x)一(O,1,0,1,0,1,0).又如,为便于32位CPU上软件实现,令加密第i组明文时第j轮的实用轮密钥为L一(L,L,L,L),第j轮原始轮密钥】】,0j,1】.2】.3为K一(K,K,K,K),第j轮的系数为x:(x,x,x,x),第i一1组密文为C:(C,C,Cj.1j.2j.3i1i1.0i1.Ii,C),可约定1.2i1.3L=K{x.Cmod2;,】.mj.m—j.m11.mm:0,1,2,3,0≤j≤6,i=1,2,3,?一.其中L,K,x,C均为32位无符号整型j?m】?m】tm11.m数.NOTP模式的加密过程为:随机产生128比特IV.以(K,K,K,…,K)为实用轮密钥,对IV进行加密,产生C.将C与(K,K,K,…, 000l2K)结合,产生实用轮密钥(K..x.C.,K..x.C.,K0xC.,…,K0x6C.)并对第一组明文P.进行加密,产生密文C.将C与(K,K,K,…,K)结合,产生实用轮密钥(Ko.XoCi,KI.xICI,K2.x2CI,…,K6.x6CI)并对第二组明文P进行加密,产生密文C.……,直至加密完最后一组明文.解密过程也很直观.在本例中,由于s盒是自逆的,线性变换也是自逆的,解密程序与加密程序相同,只是实用轮密钥的使用顺序是反序的.本栏目由保密通信国防科技重点实验室协办学研塞AeademicR爸鹜誉鬯为了使算法达到高度安全,先加密一组随机数是必要的.否则,当用户密钥长期不变情况下,Co总是相同,这将导致加密第一组明文所用的轮密钥均相同.加密正文前先对随机数加密将很好地防止攻击者获得由相同的实用轮密钥加密的两个明密文对.从攻击者角度来看,若想找到实用轮密钥相同的两对报文,最好是找到两组完全相同的密文,它们的下一组密文由相同的实用轮密钥加密.另外,对两组密文而言,只要它们的前一组密文之间有一个比特不同,所用的实用轮密钥一定不相同.2.安全性与效率分析上述SCB算法的结构只有6轮,但它在抵御差分攻击,线性攻击等一些已有攻击方法方面已经有相当好的性能.这些性能的量化描述依赖于实际选取的S盒.当随机数的生成接近于完全随机时,由于攻击者难以获得到由完全相同的实用轮密钥加密的两组密文,NOTP工作模式可以很好地防止那些基于差分分析,线性分析,SQUARE攻击和插值攻击等需要一定数量明密文对的攻击.在随机数不频繁重用的情况下,攻击者很难收集到若干组由相同的实用轮密钥加密的报文.这是NOTP模式的一个突出特点.明文4个32比特宇K00抽ci.KT0CK20而G.Ks0而GI.h0知Gl0≈G.0%G密文4个32比特字图1分组加密逻辑结构图信息安全与通信保密?:...7l91学术研究本栏目由保密通信国防科技重点实验室协办cadem1cF~esesrehNOTP模式中实用轮密钥的合成规则比较简单,实现者(或用户)有灵活的自主选择权.只要系数选得适当,该工作模式容易在某特定环境(如硬件环境)下实现.NOTP工作模式与CBC工作模式不同….CBC模式下每组报文使用完全相同的轮密钥.CBC的一个重要作用是明文白化和完整性检验.而NOTP模式不仅可以做完整性检验, 而且具有一次一密性.与CBC模式一样,NOTP模式的另一个重要优点是相同的明文组一般会被加密成不同的密文组,它们其实可以被看作是一种特殊的自同步序列密码(因此可以从中间某密文块开始解密).在一些特定的分组算法情形,NOTP模式可以看作是CBC模式的推广,例如在上述例子中取系数(X,X,X, 012X,X,X,X)=(1,0,0,0,0,0,0),则这时的NOTP模式等价于CBC模式.并不是所有分组密码算法都能以NOTP模式工作,例如"荡秋千算法I就不行,因为它没有轮密钥扩展.即NOTP可能不适宜自动钥分组算法(自动钥分组密码是指各个轮变换不使用单独的轮密钥,而是各轮公用同一个密钥变量). 不过,NOTP工作模式也有一些缺点.首先,算法对信道有高要求.一旦出现误码就可能影响两组报文的正确解密.其次,增加了密文长度.对短数据进行频繁加密时,额外多存储或传输一个密文组将是算法的一个缺陷.不过, CBC模式也有这些缺陷.在NOTP工作模式下,构建用于加密第i组明文的实用轮密钥时,其实也可以不局限于实用轮密钥为(KXC, 0—0i1Kl0xIC.1,K0xCl,…,K60X6C1).可以选取一组复杂的非线性函数,使实用轮密钥具有形式{f(K,X,C),00Ollf(K,X,C),…,f(K,X,C);.不过,这组非线性函数的选取不应该对算法的运算效率产生影响.总之,NOTP是一种相当好的分组密码工作模式.从分组密码算法的安全性,工作效率等主要性能来看,在绝大多数情形NOTP模式可以等同甚至优于CBC模式.参考文献【l1WuWen-ling,"BriefCommentaryonAESModesofOperation.Journal oftheGraduateSchooloftheChineseAcademyofSciences(inChinese),V o1.19, No.3,Sept.2002.【2】B.Preneel,A.Biryukov,E.Oswaldeta1.,"NESSIEsecurityreport". NESSIEDeliverable,February19,2003,V ersion2.0,PP.9-10.Availablefromt~ttp://Ⅵ哪.cosic.esat.kuleuven.aC.be/nessie/tweaks.htm1.【3】ZHANGYu-anandFENGDeng-guo."APracticalOne—Time—Pad—Like BlockCipherScheme",JournalofBeijingUniversityofPostsandTel (inChinese),V o1.28No.2,Apr.2005,45—48.[41FIPSPublication81,"DESModesofOperation.",U.S.DoC/NIST,December 1980.[51ZhangY a,"DesignandAnalysisofBlockCipherAlgorithmSWING", JournaloftheGraduateSchooloftheChineseAcademyofSciences(inChinese),V o1.19,No.4,Dec.,2002.92f凹叩凹一一cismll④①圆u④圃。
分组密码算法的工作模式分组密码算法是一种常用的加密算法,它将明文分成固定长度的数据块,并对每个数据块进行加密处理。
为了增加安全性,分组密码算法通常会采用工作模式来处理数据块之间的关系。
工作模式定义了如何对数据块进行加密、解密和处理。
常见的分组密码工作模式包括电子密码本模式(ECB)、密码分组链接模式(CBC)、计数器模式(CTR)、密码反馈模式(CFB)和输出反馈模式(OFB)等。
下面将对这些工作模式进行详细介绍。
1. 电子密码本模式(ECB):ECB模式是最简单的分组密码工作模式,它将每个数据块独立加密,没有考虑前后数据块之间的关系。
这意味着如果明文中存在相同的数据块,它们在加密后会得到相同的密文块。
因此,ECB 模式不适用于加密需要保密性的数据,容易受到密码分析的攻击。
2. 密码分组链接模式(CBC):CBC模式是一种常用的分组密码工作模式,它通过将前一个数据块的密文与当前数据块的明文进行异或运算,再进行加密处理。
这样可以使得每个数据块的加密都依赖于前一个数据块的密文,增加了密码的随机性和安全性。
同时,CBC模式还需要一个初始向量(IV)来作为第一个数据块的加密输入。
但是,CBC模式的缺点是加密过程是串行的,无法并行处理数据块。
3. 计数器模式(CTR):CTR模式是一种基于计数器的分组密码工作模式,它将一个计数器与密钥进行加密,然后与明文进行异或运算得到密文。
计数器的值会逐渐增加,每次加密一个数据块。
CTR模式具有并行处理数据块的能力,因为每个数据块的加密过程是独立的。
CTR模式还可以用于生成伪随机数序列,用于其他加密算法的密钥生成等。
4. 密码反馈模式(CFB):CFB模式是一种将分组密码算法转化为流密码算法的工作模式。
它将前一个密文块作为输入与密钥进行加密,然后与当前数据块的明文进行异或运算得到密文。
CFB模式可以实现分组密码算法的流加密功能,但是需要保证每个数据块的长度与分组密码算法的块长度相同。
信息安全技术论文密码学密码算法概述摘要:密码学是研究编制密码和破译密码的技术科学。
研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学。
总称密码学。
密码是通信双方按约定的法则进行明密特殊变换的一种重要保密手段。
依照这些法则,变明文为密文,称为加密变换;变密文为明文,称为脱密变换。
密码在早期仅对文字或数码进行加、脱密变换,随着通信技术的发展,对语音、图像、数据等都可实施加、脱密变换。
关键字:密码学对称密码学密钥密码学[1](在西欧语文中之源于希腊语kryptós,“隐藏的”,和gráphein,“书写”)是研究如何隐密地传递信息的学科。
在现代特别指对信息以及其传输的数学性研究,常被认为是数学和计算机科学的分支,和信息论也密切相关。
著名的密码学者Ron Rivest解释道:“密码学是关于如何在敌人存在的环境中通讯”,自工程学的角度,这相当于密码学与纯数学的异同。
密码学是信息安全等相关议题,如认证、访问控制的核心。
密码学的首要目的是隐藏信息的涵义,并不是隐藏信息的存在。
密码学也促进了计算机科学,特别是在于电脑与网络安全所使用的技术,如访问控制与信息的机密性。
密码学已被应用在日常生活:包括自动柜员机的芯片卡、电脑使用者存取密码、电子商务等等。
直到现代以前,密码学几乎专指加密(encryption)算法:将普通信息(明文,plaintext)转换成难以理解的资料(密文,ciphertext)的过程;解密(decryption)算法则是其相反的过程:由密文转换回明文;加解密包含了这两种算法,一般加密即同时指称加密(encrypt或encipher)与解密(decrypt或decipher)的技术。
加解密的具体运作由两部分决定:一个是算法,另一个是密钥。
密钥是一个用于加解密算法的秘密参数,通常只有通讯者拥有。
历史上,密钥通常未经认证或完整性测试而被直接使用在密码机上。
《密码学》课程设计实验报告实验序号:03 实验项目名称:分组密码工作模式分组工作模式具体说明➢电话本模式⏹直接利用分组密码对明文的各分组进行加密⏹缺点1.不能解决短块问题2.容易暴露明文的数据模式。
在计算机系统中,许多数据都具有某种固有的模式,这主要是由数据冗余和数据结构引起的。
例如,各种计算机语言的语句和指令都十分有限,因为在程序中便表现为少量的语句和指令的大量重复⏹流程图➢明密文链接模式⏹设明文M=(M1,⋯,M n),相应的密文C=(C1,⋯,C n)C i={E(M i⊕Z,K), i=1E(M i⊕M i−1⊕C i−1,K), i=2,⋯,n⏹特点1.加解密错误传播无界2.无法处理短块⏹流程图➢密文链接模式⏹由于明密文链接模式具有加解密错误传播无界的特性,而磁盘等文件通常希望错误传播有界,这时可采用密文链接模式⏹设明文M=(M1,⋯,M n),相应的密文C=(C1,⋯,C n)C i={E(M i⊕Z,K), i=1E(M i⊕C i−1,K), i=2,⋯,n⏹特点1.无法处理短块2.加密错误传播无界,解密错误传播有界➢输出反馈模式⏹将一个分组密码转换为一个密钥序列产生器,从而可以实现用分组密码按流密码的方式进行加解密。
⏹特点1.工作模式的安全性取决于分组密码本身的安全性2.可以解决短块加密3.无错误传播4.适用于加密冗余度较大的数据,例如语音和图像数据⏹流程图➢密文反馈模式⏹与输出反馈的工作原理基本相同,所不同的仅仅是反馈到移位寄存器R的不是E输出中的最右s位,而是密文c i的s位⏹流程图➢X CBC模式⏹X CBC模式解决了CBC模式要求明文数据的长度是密码分组长度的整数倍的限制,可以处理任意长的数据⏹优点1.可以处理任意长度的数据2.适用于计算产生检测数据完整性的消息认证码MAC⏹缺点1.使用3个密钥,密钥的存储和加解密控制都比较麻烦2.接受双方需要共享填充的消息长度➢CTR模式⏹与密文反馈工作模式和输出反馈工作模式一样,把分组密码转换为序列密码,在本质上是利用分组密码产生密钥序列,按序列密码的方式进行加密⏹优点1.可并行,效率高2.适合任意长度的数据3.加解密速度快⏹缺点1.没有错误传播,不适用于数据完整性验证⏹流程图五、分析与讨论1)分组密码不同的工作模式各有各的特点,例如有些工作模式需要处理短块,有些则不需要;有些模式具有错误传播无界的特性,有些则没有。
分组密码常用的工作模式
分组密码常用的工作模式包括以下几种:
1. 电子密码本模式(Electronic Codebook, ECB):将明文分为固定大小的块,每个块使用相同
的密钥进行加密。
这种模式简单,容易并行处理,但在相同的明文块可能会产生相同的密文块,因此不适合加密具有规律性的数据。
2. 密码分组链接模式(Cipher Block Chaining, CBC):将每个明文块与前一个密文块进行异或
操作,然后再进行加密。
首先使用初始化向量(IV)对第一个明文块进行加密,然后将该块密文与下一个明文块进行异或操作,并依次进行。
这种模式的优点是每个密文块的加密过程都依
赖于前一个密文块,因此更难被攻击者破解。
3. 输出反馈模式(Output Feedback, OFB):类似于CBC模式,但是将前一个密文块作为输入,通过加密算法生成一个伪随机数流(密钥流),再与明文块进行异或操作得到密文块。
OFB
模式可以将加密算法转化为加密流密码。
4. 密码反馈模式(Cipher Feedback, CFB):类似于OFB模式,但是将前一个密文块的一部分
作为输入,通过加密算法生成一个伪随机数,再与明文块进行异或操作得到密文块。
5. 计数器模式(Counter, CTR):将明文块按顺序与计数器相加,再使用相同的密钥进行加密。
CTR模式可以将加密算法转化为加密流密码,且可以被并行处理,因此适用于大量数据的加密。
这些工作模式在使用分组密码进行加密时提供了不同的特性,可以根据具体需求选择合适的工
作模式。
国家标准《信息安全技术分组密码算法的工作模式》(征求意见稿)编制说明一、工作简况1、任务来源本标准由国家标准化管理委员会下达的国家标准编制计划,项目名称为《信息安全技术分组密码算法的工作模式》(国标计划号:),项目类型为标准修订,项目所属工作组为WG3工作组,项目牵头单位为成都卫士通信息产业股份有限公司。
2、主要起草单位和工作组成员该标准由成都卫士通信息产业股份有限公司主要负责起草,中国科学院软件研究所、中国科学院数据与通信保护研究教育中心、国家密码管理局商用密码检测中心、格尔软件股份有限公司、西安西电捷通无线网络通信股份有限公司、上海信息安全工程技术研究中心、……共同参与了该标准的起草工作。
主要起草人有:张立廷,眭晗,涂彬彬,王鹏,毛颖颖,郑强,张国强,徐明翼,罗俊。
3、主要工作过程2019年4月之前,编制团队分析GB/T 17964-2008标准文本及理论研究、行业应用情况,认为有必要修订该标准,原因如下:1)学术界持续分析研究工作模式,产生了新的成果;产业界广泛应用工作模式,积攒了新的应用经验;有必要收集归纳。
2)现有标准文本未列举国家标准分组密码算法对应的测试向量,数据加密厂商、相关管理部门缺乏具体的参考数据。
3)产业界对现有标准之外的部分工作模式存在着强烈的应用需求,如磁盘加密模式XTS等,有必要评估引进的可行性。
4)国家标准化推进过程中,产生了与本标准相关的一些标准,如GB/T 36624-2018 《信息技术安全技术可鉴别的加密机制》,有必要在修订版本中做出协调性说明。
2019年4月,全国信息安全标准化技术委员会(以下简称“信安标委”)2019年第一次工作组会议周,在WG3工作组会议上,编制团队向专家和工作组成员单位汇报了《信息安全技术分组密码算法的工作模式》(投票草案稿)修订情况,并听取专家及工作组其他成员单位的意见,WG3专家及成员工作组成员单位同意该标准立项修订。
2019年4月—9月,编制团队在对本标准进行深入的需求分析的基础上,对所修订的国家标准GB/T 17964-2008进行了全面理解,并对国际类似标准ISO/IEC 10116-2017进行了学习参考,对修订工作后期安排进行了规划。
2019年9月12日,编制团队参加信安标委秘书处组织的立项评审会,向专家汇报工作情况,根据专家意见对草案进行了修改。
2019年10月11日,编制团队参加WG3工作组组织的标准审查会,向专家汇报标准修订情况,根据专家意见进一步修订,明确tweak的说明,校对文字符号,并完善编制说明,补充修订思路和依据等。
2019年10月27日至29日,编制团队赴重庆参加全国信息安全标准化技术委员会2019年第二次工作组“会议周”,在WG3组汇报标准研究进展,介绍草案文本,解释修改依据,并根据现场意见进一步修订,删除了常见术语“分组密码算法”,补充了“XEX结构”术语,统一了“初始向量”、“异或”等表述方式,并优化了文字语言。
工作组专家评审后,一致推荐标准文本进入征求意见稿阶段。
2019年11月25日,编制团队在北京召开修订项目启动会,邀请密码标准专家指导项目的组织和技术工作。
会上,专家们认为,标准在现阶段相关工作符合信息安全国家标准项目的相关流程,执行情况良好;并针对标准草案给出了具体的修订意见。
意见主要包括:增加附录C,列举常见的明文填充方法;全文优化统一描述语言、图示、符号标记等。
二、标准编制原则和确定主要内容的论据及解决的主要问题1、标准编制原则本次标准修订以GB/T 17964-2008为基础,同时参考了ISO/IEC 10116-2017和IEEE 1619-2007等相关国际标准。
结合行业应用情况和理论研究分析进展,研究团队评估原标准中的工作模式安全性,增加已经在国内外广泛应用的磁盘加密模式XTS、性能良好的我国自主研制的工作模式HCTR;将底层的分组密码算法由AES、DEA中的密码算法替换为符合国家管理要求的密码算法SM4;相应地修改文本说明,更新测试向量与工作模式性质说明。
2、确定主要内容的论据及解决的主要问题1)明确本标准中工作模式的定义和范围随着密码研究的推进,分组密码算法的工作模式已经从最初仅提供加密功能逐步发展到提供鉴别(GB/T 15852.1-2008 信息技术安全技术消息鉴别码第1部分:采用分组密码的机制(mod ISO/IEC 9797-1:1999))、可鉴别的加密(GB/T 36624-2018 信息技术安全技术可鉴别的加密机制(mod ISO/IEC 19772:2009))以及杂凑等多种功能类型。
研究团队根据本标准的内容特点,听取评审专家指导意见,在标准文本的范围、术语等多处地方注明,本标准规范的工作模式仅提供加密功能,不提供鉴别、可鉴别加密等功能,并在规范性引用文件中引用了鉴别、可鉴别加密工作模式的国家标准,指导读者理解和采用。
2)保留原标准中的七个工作模式考虑到原有七个工作模式ECB、CBC、CFB、OFB、CTR、BC、OFBNLF已经在工业界广泛应用,且近些年未被发现存在安全问题,编制团队决定保留原有全部工作模式,仅做编辑性修改,优化叙述语言。
关于CBC、CFB、OFB、CTR的安全性分析,可参考Mayuresh Vivekanand Anand, Ehsan Ebrahimi Targhi, Gelo Noel Tabia, Dominique Unruh: Post-Quantum Security of the CBC, CFB, OFB, CTR, and XTS Modes of Operation. PQCrypto 2016: 44-63。
关于OFBNLF的安全性分析,可参考Zhelei S., Peng W. Analysis of the OFBNLF encryption mode of operation, SCIENTIA SINICA Informationis, Volume 46, Issue 6: 729-742(2016)。
3)引进XTS工作模式带密文挪用的XEX可调分组密码(XTS)工作模式于2007年成为IEEE标准,是磁盘加密领域应用的主要工作模式。
研究团队调研发现,该工作模式在国内工业界已经广泛应用,且不存在专利限制,决定在修订过程中引进到标准文本中,以丰富标准文本工作模式的类型,指导现实应用。
关于XTS的安全性分析,可参考Phillip R.: Efficient Instantiations of Tweakable Blockciphers and Refinements to Modes OCB and PMAC. ASIACRYPT 2004: 16-31 4)引进HCTR工作模式带泛杂凑函数的计数器(HCTR)工作模式由我国学者在2005年提出,其设计理念和具体方案受到了国际密码专家的广泛推崇,安全性能也经受住了十多年的密码分析考验,不存在专利限制。
研究团队决定将HCTR引进到标准文本,丰富标准文本中工作模式的类型。
关于HCTR的安全性分析,可参考Peng W., Dengguo F., Wenling W.: HCTR A Variable-Input-Length Enciphering Mode. CISC 2005: 175-188。
5)采用SM4算法生成测试向量原标准中工作模式的测试向量是由AES或DEA算法生成,研究团队在修订过程中,调研了SM4算法以及九个工作模式的安全分析结论,在分析验证了融合SM4算法不会降低工作模式安全性的基础上,根据SM4算法和工作模式的参数特点和要求,确定具体的运算机制,生成相关测试向量,为规范我国密码算法的使用提供具体参照依据。
6)协调使用多个标准中关于比特串高低位的定义原标准中CTR工作模式对计数器的值采用左高右低的定义,而IEEE中XTS 工作模式的有限域乘法运算采用左低右高的定义。
左低右高的有限域乘法同时被国家标准GB/T 36624-2018和GB/T 15852.3-2019 信息技术安全技术消息鉴别码第3部分:采用泛杂凑函数的机制(mod ISO/IEC 9797-3:2011)采纳。
研究团队经过研讨,决定采取兼顾的方案,在修订标准中保留CTR的左高右低,在引进的XTS、HCTR中采用左低右高。
主要依据是,保证不影响现有标准中七个工作模式的应用,同时遵循IEEE及相关国家标准的通用做法,以保障XTS 和HCTR的有限域乘法运算与国际和相关国家标准同步。
3、本部分在确定主要内容时主要基于如下几个方面:作为修订标准,在整体内容上与GB/T 17964-2008保持一致,明确标准的范围为仅提供加密功能的工作模式,评估并保留现有全部模式,根据应用需求增加安全性能可靠的XTS和HCTR工作模式,深入调研明确无专利障碍,兼顾使用相关国际、国家标准中关于比特串高低位定义,同时确保技术可行。
推荐使用符合国家管理要求的密码算法,使用国家商用密码算法SM4生成测试向量。
三、主要试验[或验证]情况分析在生成测试向量的过程中,严格按照标准文本中的工作模式描述,多家参与单位独立完成,汇总输出数据作比对,确保了最终测试向量的正确性。
四、知识产权情况说明本标准不涉及专利。
五、产业化情况、推广应用论证和预期达到的经济效果无。
六、采用国际标准和国外先进标准情况本标准参考了同类型国际标准ISO/IEC 10116-2017的部分内容,增加了第五章要求。
在第十三章引进了IEEE 1619-2007关于磁盘加密的工作模式XTS。
七、与现行相关法律、法规、规章及相关标准的协调性本标准在编制过程中,已经查阅了《中华人民共和国电子签名法》等相关法规,确保本标准的内容遵守相关法律规定。
同时查阅了GB/T 36624-2018 《信息技术安全技术可鉴别的加密机制》等相关国家标准,确保相关内容和术语与这些标准的内容保持一致。
八、重大分歧意见的处理经过和依据无。
九、标准性质的建议根据本标准的性质,建议本标准为推荐性标准。
十、贯彻标准的要求和措施建议GB/T 17964:2008已经实施了十多年,缺少使用国密算法SM4生成的测试向量,缺少目前工业界大量应用的XTS等工作模式。
建议尽早颁布本次修订标准,为各行业应用此类标准提供指导建议。
十一、替代或废止现行相关标准的建议本标准代替GB/T 17964:2008 《信息安全技术分组密码算法的工作模式》。
十二、其它应予说明的事项无。
《信息安全技术分组密码算法的工作模式》编制工作组2019-11-26。