Subject: v2.1 Certificate Management Library (CML) Now Available

From: "Pawling, John" <[email-masked]>
Date: Thu, 1 Aug 2002 13:24:36 -0400

All,

Getronics Government Solutions has delivered the Version 2.1 
Certificate Management Library (CML) for Microsoft Windows, 
Sun Solaris and Linux.  The v2.1 CML and documentation is 
freely available at:
<http://www.getronicsgov.com/hot/cml_home.htm>.  

Applications requiring Public Key Infrastructure (PKI) security 
services can use the CML to meet their X.509 certificate and 
Certificate Revocation List (CRL) processing requirements.  
The v2.1 CML is described in the v2.1 CML Application Programming
Interface (API) document.  It implements the 2000 X.509 Recommendation
certification path verification processing rules and SDN.706 profile.
It meets the majority of the IETF PKIX RFC 3280 Certificate/CRL Profile
requirements.  There are some unsupported features such as 
Delta CRLs.  The v2.1 CML Abstract Syntax Notation One (ASN.1)
decodes X.509 Certificates and CRLs.  It requires the v1.4
Enhanced SNACC ASN.1 software that is freely available from:
<http://www.getronicsgov.com/hot/snacc_home.htm>.

The CML provides robust certificate path building capabilities such
as using cross certificates.  The CML uses the accompanying Storage 
and Retrieval Library (SRL) (optionally) to provide local certificate
and CRL storage management functions.  The SRL (optionally) provides 
remote directory retrieval capabilities using the Lightweight
Directory Access Protocol (LDAP).

The CML has been thoroughly tested including validating X.509 
Certificates and CRLs created by a variety of Certification 
Authority (CA) products, and signed using the Digital Signature
Algorithm (DSA) and RSA algorithms.  Further enhancements, 
ports and testing of the CML are still in process.  Further
releases of the CML will be provided as significant 
capabilities are added. 

v2.1 CML includes the following enhancements (compared to v2.0.1 
CML release):

1) To make it easier for integrators to retrieve and compile the
source code for the CML, Access Control Library (ACL), and S/MIME
Freeware Library (SFL), we delivered a consolidated release zip 
file including the source code, project files, make
files, and readme files for the SFL, CML, SRL, ACL, CTIL, and
CTILManager libraries.  

2) Enhanced to use a standard Exception class derived from the
C++ std::exception class that will enable applications to catch 
all exceptions using the standard class.  This enhancement will 
reduce the amount of time required to integrate the SFL, CML, ACL,
and eSNACC libraries into applications.  

3) Enhanced CML path-processing code to increase its compliance 
with the RFC 3280 IETF Public Key Infrastructure X.509 (PKIX) 
Certificate and Certificate Revocation List (CRL) profile 
requirements such as: special-case processing associated with 
intermediate self-issued certificates; non-self-signed trusted 
certificates used as trust anchors; and name constraints 
processing clarifications.  

4) Enhanced CML C++ Application Programming Interface (API) to 
increase the consistency of the APIs provided by the CML, SFL, 
and ACL.  

5) Enhanced to add support for processing the OrderedList 
extension specified in the 2000 X.509 Recommendation.

6) Enhanced CML C++ library to support name constraints processing
of the IPAddress GeneralName type.

7) Enhanced CML certification path building process to skip paths 
with known errors.  

8) Enhanced to add support for the X.520 pseudonym attribute in 
distinguished names.

9) Enhanced to add support for the OCSPSigning extended key usage
and anyExtendedKeyUsage object identifiers.

10) Enhanced CML ASN.1 decode routines that compose the cmlasn1 
library.

11) Enhanced to add the Attribute Certificate (AC) C++ Class to 
the cmlasn1 library.

12) See the CML web site and CML API document for further details.

v2.1 SRL includes the following enhancements (compared to v2.0.1 
SRL release):

1) Enhanced to perform Lightweight Directory Access Protocol (LDAP)
retrievals of ACs, Attribute Authority Revocation Lists, Attribute
Descriptor Certificates, CRLs, and Security Policy Information 
Files (SPIF).

2) Enhanced to use the current release of the GNU Data Base Manager.

3) Enhanced to add a "refresh period" field to the database to 
indicate when the SRL should attempt to retrieve updated CRLs from
 the directory. 

4) Enhanced to use the hash value of the database object as an 
index value.   

5) Enhanced to convert the previous CRL and Certificates database 
versions to the new versions.  

6) Enhanced the SRL_DatabaseRemove source code that includes the 
hash value as an argument.  

All source code for the CML is being provided at no cost and with no
financial limitations regarding its use and distribution. Organizations 
can use the CML without paying any royalties or licensing fees.  The
CML was originally developed by the U.S. Government.  Getronics is 
enhancing and supporting the CML under contract to the U.S. Government.
The U.S. Government is furnishing the CML software at no cost to the
vendor subject to the conditions of the CML Public License provided
with the CML software.  

The CML makes calls to an algorithm-independent CTIL API that provides
access to a variety of external crypto libraries.  There is a CTIL for 
each crypto library that maps the generic CTIL API calls to the 
specific calls for that crypto library.  Getronics provides CTILs for
the Microsoft CAPI v2.0, Crypto++, RSA BSAFE, Spyrus SPEX/ and 
FORTEZZA Cryptologic Interface libraries.  Getronics also provides a 
PKCS #11 CTIL that enables PKCS #11-compliant libraries to be used 
with the CML.  The underlying, external crypto libraries are not 
distributed as part of the CML software. 

The CML has been successfully tested with the v2.1 S/MIME Freeware 
Library (SFL) that is freely available from 
<http://www.getronicsgov.com/hot/sfl_home.htm>.  

The CML has been successfully tested with the Access Control 
Library (ACL) that is freely available to everyone from: 
<http://www.getronicsgov.com/hot/acl_home.htm>.

The CML has been successfully used to build and verify 
certificate paths used in the Bridge Certification Authority (BCA)
demonstration which includes cross-certified hierarchical and non-
hierarchical PKIs.  The BCA Interoperability Test Suite (BITS)
is a free and openly available test resource provided to 
facilitate vendor development of secure, interoperable Public
Key Enabled applications.  The CML has been used to successfully
develop and verify the BITS X.509 certification paths available
from <http://bcatest.atl.getronicsgov.com>.  

The National Institute of Standards and Technology (NIST) is 
providing a standard test suite of X.509 certificate paths
<http://csrc.nist.gov/pki/testing/x509paths.html> that can be
used for testing applications against RFC 2459.  The CML was 
used to successfully process the NIST test data.

The CML meets the requirements stated in the SDN.706 Certificate/
CRL Profile required by the U.S. Defense Message System (DMS) 
project.

The Internet Mail Consortium (IMC) has established a CML web page
<http://www.imc.org/imc-cml> and a CML mail list which is used to: 
distribute information regarding CML releases; discuss CML-related 
issues; and allow CML users to provide feedback, comments, bug 
reports, etc.  Subscription information for the imc-cml mailing list 
is at the IMC web site listed above.  

All comments regarding the CML source code and documents are welcome. 
This CML release announcement was sent to several mail lists, but
please send all messages regarding the CML to the imc-cml mail list
ONLY. Please do not send messages regarding the CML to any of the IETF
mail lists.  We will respond to all messages sent to the imc-cml mail 
list.

===========================================
John Pawling, [email-masked]
Getronics Government Solutions, LLC
===========================================