

RC4是Ron Rivest在1987年为RSA数据安全公司设计的一种同步流密码
RC4不是基于移位寄存器的流密码,而是一种基于非线性数据表变换的流密码
它以一个足够大的数据表为基础,对表进行非线性变换,产生非线性密钥流序列
RC4 是一个可变密钥长度,面向字节操作的流密码
该字节的大小n可以根据用户需要来定义,一般应用中n取8位
流密钥的生成需要两个处理过程:一个是密钥调度算法(KSA);二是伪随机产生算法(PRGA)
密钥调度算法用来设置数据表S的初始排列
伪随机产生算法用来选取随机元素并修改S的原始排列顺序
密钥流产生过程是用1到256个字节的可变长度的密钥初始化一个256个字节的数据表S
加密和解密用的每一个密钥K(i)是由S中的元素按照一定的方式选出一个元素而生成
每生成一个K(i)值,S中的元素就被重新置换一次
| 各省软考办 | ||||||||||