this is the Ecrypto library, a group of files implementing strong
crypto in elisp. it is made up of the following:
this file contains the code for the IDEA cipher. it is reasonably
secure, in terms of cleaning up intermediate computations. the
functions in it operate on 16-bit vectors. CBC and a CBC-based
package transform are provided. XEmacs: this file was removed due
to supposed patent problems.
md5.el, md5-old.el, sha1.el, sha1-old.el
code for the MD5 and SHA-1 hash algorithms. md5.el and sha1.el are
the actual implementations, geared towards speed and data security
(ie, wiping possibly sensitive data). both files have to be
compiled before being loaded. md5-old.el and sha1-old.el are
the original implementations, much more readable, less optimized,
but slower and likely to leave secure data around for the GC to
provides routines for converting a vector of 16-bit numbers into its
equivalent ascii-armor, and vice versa. it could be easily extended
to work for octet-streams, but hasn't, yet.
code for Julian Assange's extension of RC4 to 16 bits.
this code attempts to provide cryptographically secure random
numbers, but probably fails. it draws together various sources of
randomness from within emacs, including the microsecond timings of
keypresses, though your emacs may not provide such timings. this
code should be considered somewhat untrustworthy. it uses rc16.el
for its core.
a slight modification to comint-read-noecho. it leaves even less
possibly sensitive data lying around for the GC to clean up.
IDEA is patented, but i believe that this software, which is GPL'd,
doesn't require any license fee or registration. Diffie-Hellman was
patented, but that expired in 1997. RC4 was a trade secret, it is no
longer, and so RC16 (which is based on RC4) is safe to use (with
credit to Julian Assange).
until this code has been extensively tested and examined by multiple
parties, i wouldn't trust it any more than a Cracker-Jack Secret