
DESCRIPTION

  Here are various cryptographic and otherwise useful
  functions for PostgreSQL.

    encode(data, type)
        encodes binary data into ASCII-only representation.
	Types supported are 'hex' and 'base64'.

    decode(data, type)
    	decodes the data processed by encode()

    digest(data::text, hash_name::text)
	which returns cryptographic checksum over data by
	specified algorithm. eg

	> select encode(digest('blah', 'sha1'), 'hex');
	5bf1fd927dfb8679496a2e6cf00cbe50c1c87145

    digest_exists(hash_name::text)::bool
	which reports if particular hash type exists.

  If any of arguments are NULL they return NULL.

HASHES

  For choosing library you must edit Makefile.

  standalone (default):
	MD5, SHA1

	(the code is from KAME project.  Actually I hate code
	duplication, but I also want to quarantee that MD5 and
	SHA1 exist)

  mhash (0.8.1):
	MD5, SHA1, CRC32, CRC32B, GOST, TIGER, RIPEMD160,
	HAVAL(256,224,192,160,128)

  openssl:
	MD5, SHA1, RIPEMD160, MD2

  kerberos5 (heimdal):
	MD5, SHA1

ENCRYPTION

  There is experimental version out with encryption, HMAC
  and UN*X crypt() support in

    http://www.l-t.ee/marko/pgsql/

  Current latest release is pgcrypto-0.3.tar.gz.


