R C 4 加密算法C 语言实现 代码文件名 RC4.cpp Encrypt.h(代码详见后文) 备注:将以上两个文件放在相同的路径(建议不要放在中文路径下)编译执行! 编译环境 Microsoft Visual C++ 6.0 C-Free 5.0 代码解释 RC4 加密算法是大名鼎鼎的RSA 三人组中的头号人物Ron Rivest 在1987 年设计的密钥长度可变的流加密算法簇。之所以称其为簇,是由于其核心部分的S-box 长度可为任意,但一般为 256 字节。该算法的速度可以达到 DES 加密的10 倍左右。 RC4算法的原理很简单,包括初始化算法和伪随机子密码生成算法两大部分。假设S-box长度和密钥长度均为为 n。先来看看算法的初始化部分(用类 C 伪代码表示): for (i=0; i #define BOX_LEN 256 int GetKey(const unsigned char* pass, int pass_len, unsigned char *out); int RC4(const unsigned char* data, int data_len, const unsigned char* key, int key_len, unsigned char* out, int* out_len); static void swap_byte(unsigned char* a, unsigned char* b); char* Encrypt(const char* szSource,...