第五章分组密码3.其他分组密码和工作模式.docx
文本预览下载声明
第五章 分组密码 3. 其他分组密码及工作模式
魏普文
山东大学密码技术与信息安全
教育部重点实验室
克服DES短密钥的缺陷
1998, ANS X9.52; 1999, FIPS PUB 46-3; 2004,2008, NIST SP 800-67; 2005, ISO/IEC 18033-3
加密
ciphertext = EK3(DK2(EK1(plaintext)))
解密
plaintext = DK1(EK2(DK3(ciphertext)))
K1, K2, K3为不同的密钥;或者K3 = K1
中间使用解密算法D:可用作单DES
三重DES(Triple DES, TDEA)
缺点
软件实现速度慢
效率与安全性:
中间相遇攻击(meet-in-the-middle attack) 112
分组长度(64bit)应更长
三重DES(Triple DES, TDEA)
1990,Xuejia Lai and James Massey
应用:Pretty Good Privacy (PGP) v2.0;
OpenPGP标准.
专利
Austria, France, Germany, Italy, Netherlands, Spain, Sweden, Switzerland, United Kingdom, (European Patent Register entry for European patent no. 0482154),
the United States (U.S. Patent 5,214,703, issued May 25, 1993 and expiring January 7, 2012) Japan (JP 3225440).
IDEA
64-bit明密文分组,128-bit密钥
8轮迭代+输出变换
16-bit的子密钥Ki,每次迭代用6个,输出变化用4个
设计思想:混合使用来自不同代数群中的运算
混乱:三个群运算——模216+1乘,模216加,异或
扩散:结构
IDEA
轮函数
⊕ Bitwise eXclusive OR
⊞Addition modulo 216
⊙ Multiplication modulo 216+1, where
the all-zero word (0x0000) is interpreted
as 216
最终变换
IDEA
密钥生成算法
原始128-bit key分成8个子密钥,作为前8个sub key
原始128-bit key 循环左移25位生成的K2,作为之后的8个sub key
K2循环左移25位生成的K3,作为随后的8个sub key.
…直到生成52个16bit sub key
IDEA
1994,Ronald L. Rivest
参数可变的分组密码算法
分组大小:32,64,128(建议64)
密钥大小:0-2040(建议128)
加密轮数:1-255(建议12)
RC5
输入输出为两个字长(2w)
字(word)的长度w=16,32,64
特点:使用依赖于数据的循环
三种运算
异或
加(mod 2^w)
循环移位 :
xy: x左循环移位y的低log(w)位
安全性:依赖于循环运算和不同运算的混合使用
RC5
1997年1月2日,NIST(National Institute of Standards and Technology)开始新的加密标准(Advanced Encryption Standard)的征集工作
1997年9月12日,公开征集AES算法
1998年6月15日,提交过程截止,共收到21个算法
1998年8月20日,公布15个候选算法(来自12个国家)
高级加密标准(AES)
1999年8月,5个候选算法进入第二轮,MARS, RC6, Rijndael, Serpent, Twofish
2000年10月2日,Rijndael被选为高级加密标准
2001年2月28日,NIST宣布关于AES的联邦信息处理标准的草案供公众讨论
2001年11月26日,AES被采纳为标准,并在2001年12月4日的联邦记录中作为FIPS 197公布
高级加密标准(AES)
比利时密码学家
Daemen和Rijmen共同设计
输入:128比特的消息分组
输出:128比特的密文分组
按照字节进行划分,从0到15标号,即:
按照右图标号排为4列(Nb=4)
密钥长度及圈数Nr
128-bit, Nr =10
192-bit, Nr =12
256-bit, Nr =14
AES算法描述
0
4
8
显示全部