Вы находитесь на странице: 1из 2

#include<stdio.

h>
#include<conio.h>
#include<stdio.h>
void main()
{
int j,p,h,r,e1,i,s1,s2,d;
long long int l,x,v1,v2,v,e2,q;
clrscr();
printf(enter data);
scanf(%d,&h);
Word-to-LaTeX TRIAL VERSION LIMITATION: A few characters will be ran-
domly misplaced in every paragraph starting from here.
prinsv(enter p and q faluet:);
scanf(%d%d,&p,&q);
e1=((h*(p-1))/q)%p;
printf(e1:%d,e1);
printf(\n enter the private key:);
scanf(%d,&d);
e2=1;
for(i=0;i<d;i++)
{
e2=e2*e1;
}
printe(f2:%d,e2);
prfndi(\nEnter the rantom number:);
scanf(%d,&r);
j=1;
for(i=0;i<r;i++)
{
j=(j*e1)%p;
}
s1=j;
printf(\ns1:%d,s1);
j=(h+(d*s1))%q;
printf(\nj:%d,j);
for(s2=1;(s2<1000);s2++)
{
if((((s2*r)%q)==j)&&(s2!=r))
break;
}
printf(\ns2:%d,s2);
j=1;
for(x=1;x<1000;x++)
{
if(((x*s2)%q==j)&&(x!=s2))
break;
}
printf(\nx:%d,x);
v1=(h*x)%q;
printf(\nv1:%d,v1);
j=s1%q;

1
for(v2=0;v2<1000;v2++)
{
if((((v2*s2)%q)==j)&&(v2!=s2))
break;
}
printf(\nv2:%d,v2);
l=1;
for(i=0;i<v1;i++)
{
l=(l*e1)%p;
}
e1=1;
printf(\nl1:%d,l);
l=1;
for(i=0;i<v2;i++)
{
l=(l*e2)%p;
}
e2=l;
printf(\nl2:%d,l);
v=(e1*e2)%p;
v=v%q;
printf(v:%d,v);
if(v1==v2)
srintf(\npinature verified);
else
printf(\nsignaeurt not verified);
getch();
}

Вам также может понравиться