收藏
0有用+1
0

国际数据加密算法

上海交通大学教授来学嘉与瑞士学者James Massey联合提出的的算法
国际数据加密算法(IDEA)是上海交通大学教授来学嘉与瑞士学者James Massey联合提出的。它在1990年正式公布并在以后得到增强。这种算法是在DES算法的基础上发展出来的,类似于三重DES。发展IDEA也是因为感到DES具有密钥太短等缺点。IDEA密钥为128位,这么长的密钥在今后若干年内应该是安全的。
外文名
International Data Encryption Algorithm
别    名
IDEA
缩    写
IDEA
提出者
来学嘉与James Massey
正式公布
1990年

基本信息

播报
编辑
国际数据加密算法(IDEA,International Data Encryption Algorithm)是由研究员Xuejia Lai和James L. Massey在苏黎世的ETH开发的,一家瑞士公司Ascom Systec拥有其专利权。IDEA是作为迭代的分组密码实现的,使用128位的密钥和8个循环。通过支付专利使用费(通常大约是每个副本$6.00),可以在全世界广泛使用IDEA。这些费用是在某些区域中适用,而其它区域并不适用。IDEA被认为是极为安全的。使用128位的密钥,蛮力攻击中需要进行的测试次数与DES相比会明显增大,甚至允许对弱密钥测试。而且,它本身也显示了它尤其能抵抗专业形式的分析性攻击。

IDEA算法特点

播报
编辑
类似于DES,IDEA算法也是一种数据块加密算法,它设计了一系列加密轮次,每轮加密都使用从完整的加密密钥中生成的一个子密钥。与DES的不同处在于,它采用软件实现和采用硬件实现同样快速。
由于IDEA是在美国之外提出并发展起来的,避开了美国法律上对加密技术的诸多限制,因此,有关IDEA算法和实现技术的书籍都可以自由出版和交流,可极大地促进IDEA的发展和完善。但由于该算法出现的时间不长,针对它的攻击也还不多,还未经过较长时间的考验。因此,尚不能判断出它的优势和缺陷。

算法简介

播报
编辑
IDEA加密算法简介
IDEA(International Data Encryption Algorithm)在密码学中属于数据块加密算法(Block Cipher)类。IDEA使用长度为128bit的密钥,数据块大小为64bit。从理论上讲,IDEA属于“强”加密算法,至今还没有出现对该算法的有效攻击算法。
早在1990年,Xuejia Lai等人在EuroCrypt’90年会上提出了分组密码建议PES(Proposed Encryption Standard)。在EuroCrypt’91年会上,Xuejia Lai等人又提出了PES的修正版IPES(Improved PES)。目前IPES已经商品化,并改名为IDEA。IDEA已由瑞士的Ascom公司注册专利,以商业目的使用IDEA算法必须向该公司申请许可。
IDEA是一种由8个相似圈(Round)和一个输出变换(Output Transformation)组成的迭代算法。IDEA的每个圈都由三种函数:模(2^16+1)乘法、模2^16加法和按位XOR组成。
在加密之前,IDEA通过密钥扩展(Key Expansion)将128bit的密钥扩展为52个加密密钥EK(Encryption Key),然后由EK计算出解密密钥DK(Decryption Key)。EK和DK分为8组半密钥,每组长度为6Byte,前8组密钥用于8圈加密,最后半组密钥(4Byte)用于输出变换。IDEA的加密过程和解密过程是一样的,只不过使用不同的密钥(加密时用EK,解密时用DK)。
密钥扩展的过程如下:
1. 将128bit的密钥作为EK的最初八个子密钥;
2. 将前8byte循环左移25bit,得到下一六个子密钥,将这个过程循环7次;
3. 在第7次循环时,取前4byte作为EK的最后4bit;
4. 至此52byte的EK生成完毕。
密钥扩展的过程如表1所示,为了能够清楚的看出每个8Byte的关系,在表1中用粗线条将将每个8Byte划分开了.
IDEA算法相对来说是一个比较新的算法,其安全性研究也在不断进行之中。在IDEA算法公布后不久,就有学者指出:IDEA的密钥扩展算法存在缺陷,导致在IDEA算法中存在大量弱密钥类,但这个弱点通过简单的修改密钥扩展算法(加入异或算子)即可克服。在1997年的EuroCrypt’97年会上,John Borst等人提出了对圈数减少的IDEA的两种攻击算法:对3.5圈IDEA的截短差分攻击(Truncate Diffrential Attack)和对3圈IDEA的差分线性攻击(Diffrential Linear Attack)。但作者也同时指出,这两种攻击算法对整8.5圈的IDEA算法不可能取得实质性的攻击效果。目前尚未出现新的攻击算法,一般认为攻击整8.5圈IDEA算法唯一有效的方法是穷尽搜索128bit的密钥空间。

应用实例

播报
编辑
目前IDEA在工程中已有大量应用实例,PGP(Pretty Good Privacy)就使用IDEA作为其分组加密算法;安全套接字层SSL(Secure Socket Layer)也将IDEA包含在其加密算法库SSLRef中;IDEA算法专利的所有者Ascom公司也推出了一系列基于IDEA算法的安全产品,包括:基于IDEA的Exchange安全插件、IDEA加密芯片、IDEA加密软件包等。IDEA算法的应用和研究正在不断走向成熟。