Some Facts
Doing it in Java
So what? There is PGP
So how can I use the Emacs Lisp version

The Cramer Shoup Crypto System

* Toy implementations in Emacs Lisp and Java *

Some Facts

Doing it in Java: some recent news

So what? There is PGP ...

This toy implementation is by no means a competition to PGP, no matter which version. But this is due to the fact that it is so slow, not that it is so bad. Actually it has some advantages over PGP - namely that it is small. Allow me to explain why this is an advantage:

When you install PGP (e.g. 5.0) there is a huge rat tail of small utilities and programs you install as well. You cannot possibly know what they are doing. You cannot know if they do what they claim to do. In theory, you could check this --- it's open source --- but this would take weeks. Thus usually you rely on the guys who program it and - perhaps better - the wide community who uses it. If there are bugs (or even worse: if it is inherently insecure to some implementation detail) hopefully somebody else finds out about it (and warns everybody), before you suffer any damage yourself.
It is a nice thought that with this Cramer Shoup toy implementation you have a encryption system that is actually small enough that you can look through it and understand everything it does (in first place, this is why I wrote this toy implementation). The paper describing the design is just 12 pages and very well written. The implementation is fairly readable lisp. You are free (and most welcome) to check everything.

So how can I use the Emacs Lisp version ?

The Emacs Lisp version is actually the older implementation of the algorithm. You need emacs or xemacs with some primitive emacs-lisp version. Download the following text file to some directory your editor can find it ($HOME/emacs/ would probably be a good choice).

Then do the following: So happy en- and decryption, and if you'd like to send me your comments, just do so.


webmaster - Last modified: Sun Jul 18 13:47:18 2004