home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / des.zip / MAIN.C < prev    next >
Text File  |  1991-04-09  |  991b  |  46 lines

  1. /* data encryption standard front end
  2. /* usage des [-e -d] keyvalue infile outfile
  3. */
  4. #include <stdio.h>
  5. #include <string.h>
  6. #include "des.h"
  7.  
  8. void main(int argc, char *argv[])
  9. {
  10.    FILE *fi,*fo;
  11.    char key[9];
  12.    char blk[8];
  13.  
  14.    if(argc > 4)
  15.    {
  16.       strncpy(key,argv[2],8);
  17.       key[8] = '\0';
  18.       setparity(key);
  19.  
  20.       initkey(key);
  21.       if((fi = fopen(argv[3],"rb")) != NULL)
  22.       {
  23.          if((fo = fopen(argv[4],"wb")) != NULL)
  24.          {
  25.             while(!feof(fi))
  26.             {
  27.                memset(blk,0,8);
  28.                if(fread(blk,1,8,fi) != 0)
  29.                {
  30.                   if(stricmp(argv[1],"-e")==0)
  31.                      encrypt(blk);
  32.                   else
  33.                      decrypt(blk);
  34.                   fwrite(blk,1,8,fo);
  35.                }
  36.             }
  37.             fclose(fo);
  38.          }
  39.          fclose(fi);
  40.       }
  41.    }
  42.    else
  43.       printf("\n USAGE: des [-e -d] keyvalue infile outfile \n");
  44. }
  45.  
  46.