                      The Secure function library
                      ___________________________


Purpose: Encryption/Decryption of a variable length character string.


Overview: There are two functions within this library, encode() and decode().
          Encode() does the encryption while Decode() decrypts.  All of the 
          decryption is done in memory and the decrypted character string is
          never written to disk.


Functions:

Encode(<cString>,<cLogical>)
  
 pass to function: 

  <cString> is the character string that is to be encrypted.
  <cLogical> is a .T. or .F. value to enable either internal/external saving
             of the encrypted password.

   i.e. encode(data,.T.) - will cause the encrypted string to be
                           saved within the .EXE file.
        encode(date,.F.) - will cause the encrypted string to be
                           written to a .MEM file named passav.mem.

 function returns:
                  
 if <cLogical> = .T.  - the encrypted string is returned.

 if <cLogical> = .F.  - if the string was successfully encrypted and is
   written out to a .MEM file named passav, true is returned;
   otherwise, false.


Decode(<cString>[,<cString2>])
  
  pass to function:

   <cString> is the character string that is to be checked
             against the encrypted string.
   <cString2> (optional) is the character string which is to be
              looked for within the .EXE.  This is only passed if
              your using the internal saving of the encrypted string.

  function returns: 

   if a successful match of the encrypted string with the passed
   string a true value is returned, else false.


Notes:  The variable saved in the .MEM file will be two characters larger
        than the defined length of the <cString> in the Encode() function.
	This function can handle a string up to 76 characters long.

	Make the character string that you are encypting larger than the 
        actual needed input.  By doing this, you will make it harder for a
	person trying to discover any information about the password because
	of the extra charcters that will be added to the encrypted data 
	string.
        
        The internal saving of an encrypted character string is
        limited to 8 characters in this library version.  This was
        done to encourage registration of this library. 
        
 

