rc4.h
来自「Realization of RC4 algorithm」· C头文件 代码 · 共 46 行
H
46 行
#include <iostream>
#include <tchar.h>
#include <fstream>
using namespace std;
class RC4
{
char K[256];
char S[256];
public:
RC4(char buf[256]);
char GetNext();
};
RC4::RC4(char str[])
{ int i,j,l;
strcpy(K,str);
l=strlen(str);
i=l-1;
for (j=0; j<l, i<256; j++,i++) K[i]=K[j];
for (i=0; i<256; i++) S[i]=i;
j=0;
char buf;
for (i=0; i<256; i++)
{
j=(j+S[i]+K[i])%256;
buf=S[i];
S[i]=S[j];
S[j]=buf;
}
}
char RC4::GetNext()
{
int i=0,j=0;
i=(i+1)%256;
j=(j+S[i])%256;
char buf;
buf=S[i];
S[i]=S[j];
S[j]=buf;
int t;
t=(S[i]+S[j])%256;
char k;
k=S[t];
return k;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?