求AES加密算法 C代码

感谢大虾们的关注要求加密结果符合http://wenku.baidu.com/view/a3330d12a216147917112808.html中的加密结果即测试结果符... 感谢大虾们的关注

要求加密结果符合
http://wenku.baidu.com/view/a3330d12a216147917112808.html
中的加密结果

即测试结果符合下面的结果
主密钥为:000102030405060708090a0b0c0d0e0f(128bit)。
加密明文:00112233445566778899AABBCCDDEEFF。
密文:69C4E0D86A7B0430D8CDB78070B4C55A。
可以提高悬赏分的
只要C/C++的,Java,C#,Pascal,汇编的我都有了,多谢。

附注:不是DES
http://zhidao.baidu.com/question/124018050.html?si=1
中的是DES

再次万分感谢
展开
 我来答
pt7r
2010-05-15 · TA获得超过1万个赞
知道小有建树答主
回答量:633
采纳率:0%
帮助的人:325万
展开全部
以前编过的,c++可以用的
#include <iostream>
using namespace std;
long gcd(long a, long b)
{
if(b>a) //a中存放较大的数,b中存放较小的数
{
int temp;
temp=a;
a=b;
b=temp;
}
long n;
while((n=a%b)!=0)
{
a=b;
b=n;
}
return b;
}
//---------------------------------------
long cheng_niyuan(long a, long b)
{
for(long i=1; (i*a)%b!=1; i++);
return i;
}
//---------------------------------------
int mi_mo(int a, int b, int n)
{
int K[100];
int top=-1;
while(b)
{
top++;
K[top]=(b%2);
b/=2;
}
int c=0, f=1;
for(; top>=0; top--)
{
c=2*c;
f=(f*f)%n;
if(K[top]==1)
{
c+=1;
f=(f*a)%n;
}
}
return f;
}
//---------------------------------------
int main()
{
int p=5,q=11;

cout<<"p="<<p<<endl;
cout<<"q="<<q<<endl;
long int n=p*q;
cout<<"n="<<n<<endl;
long int fi_n=(p-1)*(q-1);
cout<<"fi_n="<<fi_n<<endl;
int e=3;
cout<<"e="<<e<<endl;
long d=cheng_niyuan(e,fi_n);
int M, C;
cout<<"请输入明文:"<<endl;
cin>>M;
C=mi_mo(M, e, n);
cout<<"对应的密文为:"<<endl;
cout<<C<<endl;
cout<<"请输入密文:"<<endl;
cin>>C;
M=mi_mo(C, d, n);
cout<<"对应的明文为:"<<endl;
cout<<M<<endl;
return 0;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式