RSA的简单c++实现

论坛 期权论坛 脚本     
匿名网站用户   2020-12-21 09:33   26   0

#include<iostream>
#include<cmath>
using namespace std;

void main()
{
int p,q;

cout<<"输入p、q (p、q为质数,不支持过大)"<<endl;
cin>>p>>q;

int m=p*q;
int n=(p-1)*(q-1);
int e;

cout<<"输入e (e与"<<n<<"互质) 且 1<e<"<<n<<endl;
cin>>e;

int d;
for(d=1;;d++)
{
if(d*e%n==1)
break;
}


cout<<endl<<endl;


cout<<"{ "<<e<<","<<m<<" }"<<"为公钥"<<endl;
cout<<"{ "<<d<<","<<m<<" }"<<"为私钥"<<endl;


cout<<endl<<endl;

int before;
cout<<"输入明文"<<endl;
cin>>before;

int after;
int i;

after=before%n;

for(i=1;i<e;i++)
after=(after*before)%m;


cout<<"密文为"<<endl;
cout<<after<<endl;
}


分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:1136255
帖子:227251
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP