◎密码系统的安全性不在于算法的保密,而在于当对手获知了算法和密文后分析出密钥或明文的难度。
◎Vernam密码的缺点(P45) ◎雪崩效应(P54)
在密码学中,雪崩效应是指加密算法的一个理想的属性,通常分组密码和加密散列函数。 雪崩效应是显而易见的,如果当一个输入稍微改变(例如,变换一个位),则输出显著变化(例如,一半的输出位变换)
在质量块密码的情况下,这样一个在关键或明文密文应该引起剧烈变化小的变化; ◎混淆:使得密钥和密文之间的关系尽可能的复杂;
扩散:明文统计中的冗余度在密文统计中消散;(P48)
◎分组密码与流密码的不同之处在于输出的每一位数字不是只与相应时刻输入的明文数字有关,而是与一组长为m的明文数字
在分组密码中,大小为m(m> 1)的一组明文符号被一起加密,产生一组相同大小的密文。 即使密钥由多个值组成,单个密钥也用于加密整个块。
在流密码中,明文数字一次一个地被加密,并且连续数字的变换在加密期间变化。 ◎无条件安全、计算安全(P23~P24)
可证明安全:破译密码的难度与数学上某个困难问题的难度相同。 实际安全:包括可证明安全和计算安全 ◎P-BOX(P46) ◎乘积密码:
◎DES加密:Initial:初始置换
在扩展置换之后,DES对扩展的右部分和轮回密钥使用XOR运算。 注意,扩展的右部分和轮密钥都是48位长度。 还要注意,该轮密钥仅在该轮操作中使用。
S-box做真正的混合 (混淆)。DES 使用 8个S-boxes,每个都有6位输入和4位输出。
◎64位(包括8位奇偶校验位)DES密钥->每轮轮密钥的转换过程:(64位->56位过程,是舍弃了8位奇偶校验位)
◎AES的评价标准:
NIST于1997年发出了AES的请求,NIST定义的选择AES的标准分为三个方面: 安全、成本、实施。
1998年6月接受了15名候选人
其中5个于1999年8月被列入名单:
1、MARS(IBM):扩展Feistel密码,128 位分组,128-1248 位密钥。复杂、快速。安全系数高。 2、RC6(USA):128位分组,128-256位密钥。非常简单,非常快。安全系数低。 3、Rijndael(Belgium):128位分组,128 - 256位密钥。干净、快。安全系数良好。 4、Serpent(Euro):慢、干净。安全系数非常高。 5、Twofish(USA):复杂、非常快。安全系数高
其中的一个(Rijndael)在2000年10月被选为AES,2001年11月作为FIPS PUB 197标准发布
◎AES(P99~P ) 基本描述:
分组大小:128位
密钥大小:128 / 192 / 256位(16 / 24 / 32字节) 轮数:10 / 12 / 14 轮密钥大小:128位 不是Feistel密码