CryptoGnome - a better VCS

CryptoGnome is an attempt to reinvent the wheel without reinventing the wheel. In other words, it appears to me that the combination of elements in rfc1945 (HTTP) and rfc1521 (MIME) can be very simply extended to provide the foundation of a network-oriented version control system. Security comes relatively cheaply from the use of https and the http native authentication framework.

Did I mention it is written in Scheme?


To Do:

The project diary more closely tracks the actual development work (which rambles around the bits I'm interested in at the moment), but there are certain things that I'm actively thinking about and consider essential to the project. In no particular order these are:

Local-FS server
In the interest of having a client that works both on and off-line, the CryptoGnome needs a server which operates against a repository on the local machine. Perhaps a better way to say this is that it needs to support all of the server operations without using HTTP.
Content-Encoding support
Curently the CryptoGnome only knows two means of shipping objects across the net; raw binary and as Scheme (externalized) data. In fact, it really only knows about Scheme data. Raw binary only fully works for text/* content-types, but it can limp along for others. I want to support the full range of Content-Encodings from rfc1521 in addition to a few custom ones (X-scheme-data and X-rsync come to mind immediately); we may even be able to usefully introduce some cryptography hooks here.
Better client
I think that coming up with a good command-line client is going to be hard. What I really want is an integrated filesystem solution like ClearCase, but I'll settle for something like CVS for the time being. This is the biggest thing I'm looking for help on, so you can get in on the ground floor here.
Additional Repositories
There are at least four additional repository types that the CryptoGnome will support. In no particular order these are Xdelta, Solitaire, openssl, and a lame amateur cryptosystem. It's darn near time to start building them.

Required Software

Use XEmacs! SourceForge
David Rush
Last modified: Mon Apr 2 17:40:45 BST 2001