home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD2.mdf / c / library / dos / crypt / diverse / decrypt.h next >
Encoding:
C/C++ Source or Header  |  1986-09-10  |  675 b   |  37 lines

  1. /* decrypt.h */
  2. /* decryption routines for ENCRYPT.C  */
  3.  
  4. #define CRYPTMAX 256
  5. double seed = 0.0;
  6. #define PI    0.141592653897
  7.  
  8. rnd(n) /* return random integer from 0 to n-1 */
  9. {
  10.         if (seed == 0.0)        seed = PI;
  11.         seed *= 7789.0;
  12.         seed -= (int) seed;
  13.         return(seed * n);
  14. }
  15.  
  16. char *decrypt(str)
  17. char *str;
  18. {
  19.     static char dstr[CRYPTMAX + 1],*p;    
  20.     p = dstr;
  21.     do    {
  22.         *p++ = ((*str++ + 256) - rnd(256)) % 256;
  23.     } while (*(p - 1));
  24.     return(dstr);
  25. }
  26.  
  27. char *encrypt(str)
  28. char *str;
  29. {
  30.     static char estr[CRYPTMAX + 1],*p;
  31.     p = estr;
  32.     do    {
  33.         *p++ = ((*str++ + 256) + rnd(256)) % 256;
  34.     } while (*(str - 1));
  35.     return(estr);
  36. }
  37.