I am trying to put this algorithm into code for my autokey cipher program.
If (keyIsNotExhaust) Encryption = currChar + key; else Encryption = currChar + prevChar;
If (keyIsNotExhaust) decryption = currChar - key; else decryption = currChar - decryption;
This is the code I have so far:
Code:
#include<string.h>
#include<stdlib.h>
#include<ctype.h>
#include<math.h>
char key[100];
unsigned int easyendecrypt(char c);
int main(void) {
int c;
while ((c = getc(stdin)) !=EOF) {
putc(easyendecrypt(c), stdout);
}
printf("\n");
return 0;
}
unsigned int easyendecrypt(char c) {
char k;
#ifdef DECRYPT
fprintf(stderr, "decrypting with %s\n",key);
k = 'A' + (c - key);
key[c] = k;
return k;
#else
fprintf(stderr,"encrypting with %s\n",key);
k = key + (c + key - 2 * 'A');
key[c]='\0';
return k;
#endif
}