/* |-----------------------------------------------------------------------| | Encrypt.c | By tragen, coolny@geocities.com | Please mail me if you find any bugs, or problems | To use my program you have to use this command line : | ./encrypt or depending if you want to ncrypt or ecrypt |------------------------------------------------------------------------| */ #include #include #include #include #include main (int argc, char *argv[]) { long int e,a,a2,rannum; int infile, outfile, count; unsigned long int key, key1, key2, key3, key4, key5, key6, key7, key8, key9,key2i; unsigned long int key10,key11,key12,ss,sz; long unsigned int i = 0; int ds; char keystr; char myin[1]; char myout[1]; char *ifile, *ofile; if(argc<4) { printf("\n Coded By Tragen, bugs/comments goto coolny@geocities.com \n"); printf("\n usage: "); printf(argv[0]); printf(" for encrypt for decrypt \n"); exit(22); } ifile=argv[1]; ofile=argv[2]; key = atoi(argv[3]); if(key>100000000) { printf("Numral password too big, shorten the length \n"); exit(23); } ds=*argv[4]; sz = key * 10; ss = key * key; infile = open(ifile, O_RDONLY); outfile = open(ofile, O_RDWR | O_CREAT | O_TRUNC, 0777); i = 1; if (ds == 101) { printf("Encrypting ...\n"); key1=ss-sz+4; key2=ss-4*key; key3=-ss+2*key+5; key4=ss-6*key+6; key5=2 * ss - 4; } else { printf("Decrypting ...\n"); key1=-ss+sz-4; key2=-ss-4*-key; key3=ss+2*-key-5; key4=-ss-6*-key-6; key5=-2 * ss + 4; } i = 0; count=1; while (( read (infile, myin, sizeof(myin))) > 0) { if (ds == 101) { i++; i = i + count; } else { i--; i = i - count; } switch (count) { case 1: key1 = key1 +i ; myout[0] = myin[0]+key1; count++; break; case 2: key2 = key2 +i ; myout[0] = myin[0]-key2; count++; break; case 3: key3 = key3 +i ; myout[0] = myin[0]+key3; count++; break; case 4: key4 = key4 +i ; myout[0] = myin[0]-key4; count++; break; case 5: key5 = key5 + i ; myout[0] = myin[0]+key5; count=1; break; } write(outfile, myout, sizeof(myout)); } if (ds == 101) { printf("\nDone Encrypting..."); printf("\n Encrypted %s", ifile); printf(" to %s", ofile); printf("\n"); } else { printf("\nDone Decrypting..."); printf("\n Decrypted %s", ifile); printf(" to %s", ofile); printf("\n"); } }