RSA PROGRAM
RSA PROGRAM
h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
char msg[100];
void ce();
void encrypt();
void decrypt();
void main()
scanf("%d", &p);
flag = prime(p);
if (flag == 0)
printf("\nWRONG INPUT\n");
exit(1);
scanf("%d", &q);
flag = prime(q);
if (flag == 0 || p == q)
{
printf("\nWRONG INPUT\n");
exit(1);
printf("\nENTER MESSAGE\n");
fflush(stdin);
scanf("%s", msg);
m[i] = msg[i];
n = p * q;
t = (p - 1) * (q - 1);
ce();
decrypt();
int i;
j = sqrt(pr);
if (pr % i == 0)
return 0;
return 1;
void ce()
{
int k;
k = 0;
if (t % i == 0)
continue;
flag = prime(i);
e[k] = i;
flag = cd(e[k]);
if (flag > 0)
d[k] = flag;
k++;
}
if (k == 99)
break;
long int k = 1;
while (1)
k = k + t;
if (k % x == 0)
return (k / x);
}
}
void encrypt()
i = 0;
len = strlen(msg);
while (i != len)
pt = m[i];
pt = pt - 96;
k = 1;
k = k * pt;
k = k % n;
}
temp[i] = k;
ct = k + 96;
en[i] = ct;
i++;
en[i] = -1;
printf("%c", en[i]);
void decrypt()
i = 0;
ct = temp[i];
k = 1;
k = k * ct;
k = k % n;
pt = k + 96;
m[i] = pt;
i++;
m[i] = -1;
printf("%c", m[i]);
}
Example:
Enter the value of p: 7
Enter the value of q: 19
n = pq = 7 * 19 = 133
λ(n) = (p – 1)(q – 1) = λ(n) = (7 – 1)(19 – 1) = 108
The number e should be less than 108 and greater than 1.
Thus, (i * e) % λ(n) = 1, (65 * 5) % 108 = 1
The value of n is 133
The value of λ(n) is 108
The value of e is 5
The value of d is 65