GLADE Filter Add-Ons

Introduction:

GLADE is the implementation of the Distributed System Annex of the Ada 95 Reference Manual for the GNAT compiler. As of version 1.02, GLADE supports transparent filtering of data passed in RPCs, as described in the following papers:

Kienzle, J.; Wolf, Th.; Strohmeier, A.: "Secure Communication in Distributed Ada", in Proceedings of Ada Europe '96, Montreux, Switzerland, June 1996, published as Lecture Notes in Computer Science 1088, pp. 198 - 210, Springer Verlag 1996

Pautet, L.; Wolf, Th.: "Transparent Filtering of Streams in GLADE", in Proceedings of Tri-Ada '97, St. Louis MO, USA, Nov. 1997, pp. 11 - 19.

GLADE comes bundled with a simple compression/decompression filter based on zlib 1.0.4, a free compression library implementing the algorithms used in gzip. Here, we provide a few more filters implementing various encryption/decryption schemes as described in the aforementioned paper.

The filtering mechanism originally was implemented by Jörg Kienzle (EPFL) as a semester project at EPFL. Integration into GLADE and clean-up was done by Thomas Wolf (EPFL), while Laurent Pautet (ENST Paris) did all the configuration language changes in GLADE.


The Filters

Currently, the following filter packages are available:

des_filter.tar.gz
A filter plug-in built on libdes, a publicly available, free implementation of DES or 3DES encryption. Our filter only uses simple DES, but would be easy to adapt to triple DES.

rsa_filter.tar.gz
A filter plug-in using RSA encryption, based upon the implementation contained in PGP 2.6.2i, the international version of PGP. The filter uses 512 bit keys and the standard Ada pseudo random number generator, but should be easy to adapt to your needs.

idea_filter.tar.gz
A filter plug-in using the IDEA encryption algorithm. The IDEA filter has been implemented by Vincent Ducret as a semester project at the EPFL.
IDEA is patented in Europe and the United States. The patent is held by Ascom-Tech AG.
US patent Nr: 5,214,703, Date of patent: May 25, 1993
European patent Nr: EP 0 482 154 B1, Date of patent: June 30, 1993
No license fee is required for non-commercial use. Commercial users interested in licensing the IDEA algorithm should contact Mr Erhard Widmer, Ascom Systec AG, Dept CMVV, Gewerbepark, CH-5506 Maegenwil, Switzerland, +41 64 56 59 83; Fax: +41 64 56 59 90; idea@ascom.ch.

All filter packages contain everything needed to build them, i.e., the DES filter package contains the distribution of libdes 3.2.3, while the RSA package includes the complete distribution of PGP 2.6.2i. We do not keep up with the most recent versions of whatever libraries we use for our filters. If you want to use other implementations or simply newer versions of either libdes or PGP with our Ada interfaces to GLADE, you must adapt the Ada bindings yourself.


Legal Stuff

All these filter packages are made available without any guarantee. Use them at your own risk. Under absolutely no circumstances will EPFL assume any liabilities or responsibilities arising from the use of these packages.

Note that use of these packages may be illegal inside the U.S. They're based on so-called international implementations that do not fall under either U.S. patents or U.S. export restrictions. If you want to use these filters inside the U.S., get a legal version of the encryption algorithms first and then use these packages as examples for interfacing with the GLADE filtering mechanism.


Installation

Installing the filters provided here is very simple:

  • After having downloaded the compressed tar file (gzip format), copy it to the source directory of Garlic. (If you had untarred the GLADE distribution in your home directory, this would be directory ~/glade-1.02/Garlic - the tar-file of GLADE creates the glade-1.02 directory hierarchy when unpacked.)

  • Go to that directory: cd ~/glade-1.02/Garlic

  • Unzip and unpack the filter using the command

    gunzip -c xxx_filter.tar.gz | tar xf -

  • Go to the top directory of the GLADE distribution: cd ..

  • Run the configuration script with all your usual options, but add the new filter to the list of filters:

    ./configure --with-filters="zip xxx" other options

  • Re-install GLADE: make install. This will install GLADE together with the new filter(s).

If you have downloaded several filters, you can install them all at once: simply perform step 3 for all downloaded gzip files, and add all the filter names in step 5 (in place of the xxx).


Bug Reports

We provide this software without any guarantees whatsoever. Still, if you detect a blatant bug or if a filter package doesn't install cleanly, we'd appreciate getting a bug report. Just send it to Jörg Kienzle.

EPFL | IC | LGL | Teaching | Ada
Site: http://lgl.epfl.ch/ada/filters/
Last modified 10/22/2002, Webmaster.