Προς το περιεχόμενο

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • 0
KoMe

Βοήθεια για τον αλγοριθμο κρυπτογραφισης Affine σε C

Ερώτηση

Γεια χαρα σε ολους και ευχαριστω για τον χρονο σας!

Θα ηθελα να ρωτησω αν μπορει καποιος να με βοηθησει να ολοκληρωσω τον κωδικα κρυπτογραφισης Affine σε γλωσσα C !

Για την ακριβεια θελω ενα προγραμμα που να κρυπτογραφει και να αποκρυπτογραφει με την συγκεκριμενη μεθοδο για Z=26.

Εχω γραψει τα εξης:

#include<stdio.h>

#include<math.h>

 

int a,b,hj,Z=26,z=26,B,P,E,F,D,ANDIST,i;

char input[32];

int asc[32];

 

int main()

{

int j;

char alphabet[26],c[50],k;

k='a';

for (i=0;i<26;i++){

alphabet=k;

k++;

}

printf("\n please insert keys a,b (a ENTER , b ENTER) and string length (numb ENTER, NOTE: max string length is 100) \n");

fflush(stdin);

scanf("%d",& a);

fflush(stdin);

scanf("%d",& B);

fflush(stdin);

scanf("%d",& hj);

 

int A=a;

 

fflush(stdin);

printf("plese insert string");

scanf("%c",&input);

 

 

 

printf("\nfor encoding enter 1");

printf("\nfor decoding enter 2\n");

fflush(stdin);

scanf("%d",&F);

 

if (F=1)

{

for(i=0;i<hj;i++)

{

asc=input;

}

// for (i=0;i<hj;i++)

// {

// asc=(asc*a+B)%z;

// printf("\n %d",asc);

//}

 

for (j=0;j<hj;j++){

for (i=0;i<27;i++){

if (asc[j]==alphabet)

c[j]=alphabet[(a*i+B)%26];

}

}

for (j=0;j<hj;j++)

printf("%c\n",c[j]);

 

}

else if (F=2)

{

D=2;

while (D>1)

{

D=A%Z;

E=(Z-D)/A;

Z=A;

A=D;

}

 

if (D=1)

{

printf("\nThe oposit of a=%d excist's in z=%d",a,z);

P=1+z;

ANDIST=P/a;

printf("\nThe oposit is %d", ANDIST);

}

else

{

printf("\nAn oposit does NOT excist in Z=%d\n",z);

return(0);

}

 

 

for (i=0;i=hj;i++)

{

asc=((ANDIST*(asc-B)))%z;

printf("%d\n",asc);

}

 

 

}

else

{

printf("\nERROR WRONG INPUT");

return(0);

}

 

system("pause");

 

 

return(0);

}

 

Σας ευχαριστω εκ των πρωτερων για τη βοηθεια σας :-)

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

0 απαντήσεις σε αυτή την ερώτηση

Προτεινόμενες αναρτήσεις

Δεν υπάρχουν απαντήσεις σε αυτήν την ερώτηση ακόμη

×
×
  • Δημιουργία νέου...