214Rc5算法 RC5是 Ron revis发明的。RSA实验室对64bt分组的 RC5算法进行了很长时间的分析,结果表明对5轮的 RC5,差分攻击需要264个明文;对10轮需要245个明文 ;对15轮需要268个明文,而这里最多只可能有264个 明文,所以对15轮以上的RC5的攻击是失败的 Rivest推荐至少使用12轮。 RC5是具有参数变量的分组密码算法,其中可变的 参量为:分组的大小、密钥的大小和加密的轮次。该 算法主要使用了三种运算:异或、加、循环
2.1.4 RC5算法 RC5是Ron Revist发明的。RSA实验室对64bit分组的 RC5算法进行了很长时间的分析,结果表明对5轮的 RC5,差分攻击需要2 64个明文;对10轮需要2 45个明文 ;对15轮需要2 68个明文,而这里最多只可能有2 64个 明文,所以对15轮以上的RC5的攻击是失败的 。 Rivest推荐至少使用12轮。 RC5是具有参数变量的分组密码算法,其中可变的 参量为:分组的大小、密钥的大小和加密的轮次。该 算法主要使用了三种运算:异或、加、循环
RkS的分组长度是可变的,下面我们将采用 6的分组来描述算法。加密需要使用2r+2 其中r表示加密的轮次)个与密钥相关的 32bit字,分别表示为S、S1、S …2r+1° 创 建这个与密钥相关的数组的运算如下:首先将 密钥的字节拷贝到32bit字的数组L,如果需要, 最后一个字可以用零填充。然后利用线性同余 发生器初始化数组S:
RC5的分组长度是可变的,下面我们将采用 64bit的分组来描述算法。加密需要使用2r+2 (其中r表示加密的轮次)个与密钥相关的 32bit字,分别表示为S0、S1、S2……S2r+1。创 建这个与密钥相关的数组的运算如下:首先将 密钥的字节拷贝到32bit字的数组L,如果需要, 最后一个字可以用零填充。然后利用线性同余 发生器初始化数组S: