加密装置、加密方法以及程序制造方法及图纸

技术编号:7857105 阅读:199 留言:0更新日期:2012-10-13 19:15
本发明专利技术的加密装置,具备:非线性变换部,其将k系列的数据{B1,B2,…,Bk}(k为6以上的偶数)中的奇数系列数据Bi(i为奇数)作为中间数据Wi,并且将基于F函数来对奇数系列数据Bi进行变换后得到的数据与偶数系列数据Bi+1之间的逻辑异或作为中间数据Wi+1;和置换部,其按照在从Wm(m为奇数)向Bn(n为偶数)的置换中,至少含有一个满足n≠m+2?mod?k的关系的置换,在从Wn向Bm的置换中至少含有一个满足m≠n+2?mod?k的关系的置换,在将Wm置换为Bn的情况下,不将Wm+1置换为Bn-1的方式,进行置换。由此,能够使k系列一般化Feistel型的公共密钥块密码相对于无效差分攻击以及饱和攻击的耐性提高。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术主张日本专利申请日本特愿2009-246306号(2009年10月27日申请)的优先权,该申请的所有公开内容通过引用而被组入本说明书中。本专利技术涉及加密装置、加密方法以及程序,尤其涉及在数据通信和储存时基于用于对数据进行隐匿的公共密钥块密码的加密装置、加密方法以及程序。
技术介绍
作为对通信数据或者储存数据进行隐匿的技術,有公共密钥块密码。块密码,是将所加密的数据按某个单位(称作块长)进行划分来进行加密的。作为其代表,可列举DES (Data Encryption S tandard,数据加密标准)。在DES中,初次采用被称作Feistel结构的结构。图I是表示块长2n位的Feistel结构的I轮的处理的图。将输入数据分割为η位数据B1和B2两种,将B1和密钥数据&以函数F进行搅动,将其输出数据和数据B2之间的逻辑异或作为B/。另外,将B1直接作为民’。B/和Β2’成为下一轮的输入。进而,在非专利文献I中,提出了将Feistel结构的分割数扩展为2以上的一般化Feistel结构(在非专利文献I中,称作Feistel-Type Transformation (FTT))。在非专利文献I中,虽然提出了从Type-I至Type-3为止的3种结构,但在此限定为Type-2来进行说明。以下只要没有特别限定,所谓「一般化Feistel结构」是指Type-2。图2是表示将输入数据分割为k(2以上的偶数)个(将所分割后的各个数据称作“系列”)来进行处理的一般化Feistel结构(以下称作「k系列一般化Feistel结构」。)的I轮的图。考虑将一般化Feistel结构的I轮的处理划分为非线性变换部20和置换部21。非线性变换部20,将所输入的k系列的数据中的数据BiQ为k以下的奇数)直接输出,并且输出将数据Bi通过函数F与密钥数据Kj (j = (i+D/2)进行搅动后得到的数据与数据Bi+1之间的逻辑异或。置换部21进行将系列数据左循环移位I个系列的置换处理。接着,关于一般化Feistel结构的系列数k的大小和优点(乃至缺点)之间的关系进行描述。在块长相等的块密码中,若使分割数k变大,则系列数据的大小η变小。例如,在块长为128位的情况下,若设k = 2,则η = 64,若设k = 4,则η = 32,若设k = 8,则η= 16。若系列数据大小变小,则F函数的处理大小也变小。F函数是最影响安装规模的处理,若F函数的处理大小变小,则有小规模安装成为可能这样的优点。另一方面,在安全性能方面,若使分割数k变大,则可知存在如下缺点,即无效差分攻击和饱和攻击这样的密码破解方法的威胁增大。在考虑详细破解的情况下,还应考虑F函数的内部结构,但在此为了研究一般化Feistel结构的系列数的影响,F函数仅作为双向单射的非线性变换来处理。根据非专利文献2,在系列数为2、4、8、16的情况下的一般化Feistel结构的无效 差分特性分别为5、9、17、33轮。另外,非专利文献3中,针对4系列一般化Feistel结构的无效差分特性进行了记载。根据这些结果可知,在k系列一般化Feistel结构的情况下,对输入侧赋予的差分值会通过直至k轮后为止,进而对输出侧赋予的差分值也通过直至追溯k轮之后的那一轮为止。然后,因在中间的I轮产生矛盾,从而成为无效差分。因此,在k系列一般化Feistel结构的情况下,存在2k+l轮的无效差分特性。接着,针对一般化Feistel结构的系列数和饱和特性轮数之间的关系进行描述。在4系列的情况下,若按系列数据的宽度来赋予全数数据,则从明文至密文方向存在6轮的饱和特性,由于能够将该特性进一步向明文方向扩展2轮,因此存在8轮的饱和特性,这在非专利文献2中有记载。在k系列的情况下,若对一处赋予的全数数据经过k轮,则会波及整个系列,进而若经过3轮,则全部成为不明确的状态。即,存在k+2轮的饱和特性。另外,向明文侧的扩展若追溯I轮,则全数数据会向另一个I系列展开,因而至扩展至k-Ι系列为止需要k-2轮。因此,k系列一般化Feistel结构中存在2k轮的饱和特性。在无效差分攻击或饱和攻击的情况下,尝试利用这些特性破解密钥数据。关于无 效差分攻击的具体攻击步骤,作为一例,记载在非专利文献2中。关于一般的块密码的攻击,由于利用某种特性来进行破解,因此特性的轮数越长,相对于其攻击而言变得越脆弱。因此,为了相对于该破解具有耐性,因此需要更长的加密轮数。相反,如果能够减少特性的轮数,则能够以更少的轮数确保安全性。先行技術文献非专利文献非专利文献I :Y. Zheng, T. Matsumoto, H. Imai, “On the Construction of BlockCiphers Provably Secure a nd Not Relying on Any Unproved Hypotheses,,,CRYPTO1989,LNCS vol. 435,pp. 461-480,Springer-Verlag, 1990.非专利文献2 :角尾幸保、过原悦子、中岛浩贵、久保博靖、「具有变形Feistel结构的块密码的无效差分」、2007年密码和信息安全研讨会、2007年I月23日非专利文献3 :索尼公司2007年6月I日发布的“The 128_b it BlockcipherCLEFIA Security and Performance Evaluations Rev ision 1.0,,,2007 年 6 月 I 日
技术实现思路
专利技术要解决的技术课题上述非专利文献I 3的所有公开内容通过援引而组入本说明书中。以下的分析是由本专利技术来进行的如上所述,在一般化Feistel结构中若使分割数k变大,则由于无效差分特性以及饱和特性也变大,因此需要使加密的轮数也相对地变大。在此,根据数据的扩散性的观点来调查一般化Feistel结构的无效差分特性和饱和特性的原因。非专利文献2所示的无效差分特性,利用了作为输入和输出所赋予的差分值以概率I继续残存的特性。图3是表示6系列一般化Feistel结构中的差分的扩散的状况的图。对系列2输入的差分值(粗实线)以概率I通过直至经过6轮后的系列2的数据30为止。在一般化Feistel结构中,在成为F函数的输入的部位(例如分叉31)产生分叉,另一方面,被输入F函数后变化成任意的差分值(虚线)。但是,未变成F函数的输入的差分值不会产生变化而是向下一轮通过。因此,由于差分初期值消失,因此必须在与由F函数生成的任意差分值之间求出逻辑异或。然而,由于在第1、3、5轮中仅从F函数产生零差分值,因此作为差分值没有发生变化。但是,若经过6轮,则由于零以外的任意差分值会波及到全系列,因而若进一步经过I轮,则不存在以概率I通过的差分值。在置换部21只是单纯的循环移位这样的一般化Feistel结构中,这样的性质不依赖于分割数k而存在。因此,随着分割数k变大,以概率I通过的轮数也变大。图4是表示饱和特性的一例的图。A表示全数出现的状态,B表示数据总和处于平衡(零)的状态,U表示是否平衡不清楚的状态,C表示常数。S卩,图4表示对系列2赋予与数据宽度相应的所有的数据,对其他系列赋予常数的情况下的饱和特性的迁移。在F函数本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】2009.10.27 JP 2009-2463061.一种加密装置,其特征在于,具备 非线性变换部,其将k系列的数据{Bi,B2,…,Bk}中的k/2个奇数系列数据BiQ = I、3、…、k-1)分别作为中间数据Wi,并且将基于根据密钥数据的值决定变换后的值的双向单射F函数来对该奇数系列数据Bi进行变换后得到的数据与偶数系列数据Bi+1之间的逻辑异或作为中间数据Wi+1,其中,k为6以上的偶数;和 置换部,其按照在从上述中间数据中的Wm向Bn的置换中,至少含有一个满足n幸m+2mod k的关系的置换,在从Wn向B111的置换中至少含有一个满足m古n+2 mod k的关系的置换,在将Wm置换为Bn的情况下,不将Wm+1置换为Blri的方式,将上述中间数据(WnW2,…,WJ置换为数据(BpB2,…,Bk},其中,m为k以下的任意奇数,n为k以下的任意偶数,X mod y为X除以y时的余数。2.根据权利要求I所述的加密装置,其特征在于, 上述置换部具备 奇数系列置换部,其对上述中间数据中的奇数系列数据进行置换;和 偶数系列置换部,其对上述中间数据中的偶数系列数据进行置换。3.根据权利要求I或2所述的加密装置,其特征在于, 具备多个由上述非线性变换部和上述置换部组成的k系列一般化Feistel处理部。4.根据权利要求3所述的加密装置,其特征在于, 具备加密部,该加密部具有多个由上述非线性变换部和上述置换部组成的k系列一般化Feistel处理部, 上述加密部,将由密钥数据生成的多个扩大密钥和明文数据输入至上述多个k系列一般化Feistel处理部中,来对该明文数据进行加密。5.根据权利要求3或4所述的加密装置,其特征在于, 具备解密部,该解密部具有多个由上述非线性变换部和上述置换部组成的k系列一般化Feistel处理部, 上述解密部,将由密钥数据生成的多个扩大密钥和密文数据输入至上述多个k系列一般化Feistel处理部中,来对该密文数据进行解密。6.根据权利要求4或5所述的加密装置,其特征在于, 具备由密钥数据生成多个扩大密钥的扩大密钥生成部。7.根据权利要求I 6中任一项所述的加密装置,其特征在于, 上述置换部,在上述k系列为8系列的情况下,进行规定的三组置换处理中的任一组置换,在上述k系列为10系列的情况下,进行规定的5组置换处理中的任一组置换,在上述k系列为12系列的情况下,进行规定的59组置换处理中的任一组置换,在上述k系列为14系列的情况下,进行规定的44组置换处理中的任一组置换,在上述k系列为16系列的情况下,进行规定的23组置换处理中的任一组置换。8.一种加密方法,其特征在于,包括 非线性变换工序,将k系列的数据(B1,B2,…,Bk}中的k/2个奇数系列数据BiQ = I...

【专利技术属性】
技术研发人员:洲崎智保角尾幸保
申请(专利权)人:日本电气株式会社
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1