“流密码(序列密码)与Rc4算法”
Rc4是一种序列密码,它是一种可变密钥长度、面向字节操作的序列密码,一个明文字节与一个密钥字节相异或产生一个密文字节。
算法原理:对于n = 8位长的字,即以一个字节为单位,此时N = 256,用从1到256个字节的可变长度密钥初始化一个256个字节的状态矢量arr,arr中的元素arr[0],arr[1],,,arr[255],自始至终置换后的arr包含0~255的所有8比特数,密钥流中的密钥key由arr中256个元素按一定方式选出一个元素来充当;每生成一个key值,arr中的元素就被重新置换一次。
初始化:
将arr中的元素初始化成arr[0] = 0,arr[1] = 1,,,,,arr[