Peter Gutmann (pgut001@cs.auckland.ac.nz)
Thu, 25 Mar 1999 05:05:10 (NZST)
I've just uploaded what should in theory be the final beta of cryptlib 2.1, 
you can get the source code (Unix/Windows/DOS/whatever) + precompiled Win16 
and Win32 DLL's as ftp://ftp.franken.de/pub/crypt/cryptlib/beta/beta0322.zip 
and the 230-page manual as 
ftp://ftp.franken.de/pub/crypt/cryptlib/beta/manual.pdf.
 
cryptlib provides the ability to create and read S/MIME messages (with real 
encryption, not the usual RC2/40), a reasonably complete PKIX and X.509v3 
certificate handling implementation (YMMV), and various other useful features 
like key databases, a certificate trust manager, automated checking of certs 
against CRL contents, LDAP directory access, and other odds and ends - grab a 
copy of the manual for more information.  The main design goal was ease of 
use, for example here's what it takes to create a signed S/MIME message:
 
  /* Create an envelope for the message and push in the signing key */
  cryptCreateEnvelopeEx( &cryptEnvelope, CRYPT_FORMAT_SMIME, CRYPT_USE_DEFAULT );
  cryptAddEnvComponentNumeric( cryptEnvelope, CRYPT_ENVELOPE_SIGNATURE, 
                               signatureKey );
 
  /* Push in the message data and pop out the signed result */
  cryptPushData( cryptEnvelope, message, messageSize, &bytesIn );
  cryptPushData( cryptEnvelope, NULL, 0, NULL );
  cryptPopData( cryptEnvelope, buffer, bufferSize, &bytesOut );
 
  /* Clean up */
  cryptDestroyEnvelope( cryptEnvelope );
 
The manual contains examples of how you'd integrate this into a mailer like 
Eudora to provide full-strength S/MIME encryption.
 
Peter.
 
The following archive was created by hippie-mail 7.98617-22 on Sat Apr 10 1999 - 01:18:50