TECHNOLOGIES
FORUMS
JOBS
BOOKS
EVENTS
INTERVIEWS
Live
MORE
LEARN
Training
CAREER
MEMBERS
VIDEOS
NEWS
BLOGS
Sign Up
Login
No unread comment.
View All Comments
No unread message.
View All Messages
No unread notification.
View All Notifications
Answers
Post
An Article
A Blog
A News
A Video
An EBook
An Interview Question
Ask Question
Forums
Monthly Leaders
Forum guidelines
Adesanya Olusegun
NA
19
26.7k
need help converting this C code to C#
Apr 7 2014 8:53 PM
am sorry for disturbing you once again but i need your help to convert the lines of code
//cipher function called from either encrypt or decrypt
int cipher(unsigned int exponent, unsigned int text, unsigned int modulus)
{
unsigned long result;
result = 1;
//use the square and multiply algorithm to calculate the result
while (exponent > 0)
{
if ((exponent & 1) == 1) // if the least significant bit of exponent is
a 1
{
result = (result * text) % modulus; // multiply result so far by text
and use modulus to keep result small
}
exponent >>= 1; // shift the exponent right by 1, losing the most
significant bit (0110 becomes 011)
text = (text * text) % modulus; //square the text and use modulus to
keep small
}
return result;
}
//encrypt function called from menu.c
int encrypt (void)
{
unsigned int plaintext, exponent, modulus, result;
//Open public_key.txt and read out the two values stored in it
FILE *fptr;
fptr = fopen("public_key.txt","r");
if (fptr != NULL) //check if file exists
{
fscanf(fptr,"%d %d", &exponent, &modulus); //read the values
fflush(fptr);
fclose(fptr);
//Get plaintext off user it must be less than the modulus
do
{
printf("Enter Plaintext, must be a positive number less than the
modulus n: %d:\n", modulus);
scanf("%d",&plaintext);
} while (plaintext >= modulus);
//encrypt the plaintext using the cipher function
result = cipher(exponent, plaintext, modulus);
//print out the result for the user
printf("Encrypted message is %d\n", result);
}
else //if the file doesn't exist print the error
{
printf("\nERROR: ENCRYPTION UNSUCCESSFULL\n\n\n"); //if there was an
error
return(1);
}
return 0;
}
//decrypt function called from menu.c
int decrypt (void)
{
unsigned int ciphertext, exponent, modulus, result;
//Open private_key.txt and read out the two values stored in it
FILE *fptr;
fptr = fopen("private_key.txt","r");
if (fptr != NULL)//check the file exists
{
fscanf(fptr,"%d %d", &exponent, &modulus); //read values
fflush(fptr);
fclose(fptr);
//Get ciphertext of user
printf("Enter ciphertext:\n");
scanf("%d",&ciphertext);
//decrypt the message
result = cipher(exponent, ciphertext, modulus);
//print the result for the user
printf("Decrypted message is %d\n", result);
}
else //if the file doesn't exist print the error
{
printf("\nERROR: DECRYPTION UNSUCCESSFULL\n\n\n"); //if there was an
error
return(1);
}
return 0;
}
Reply
Answers (
2
)
C# adding a text file to a Form
one text box input english and output in Hindi