CryptLib von XPS ist eine Programmierschnittstelle zur Ausführung von Funktionen im Umfeld der
Datensicherheit und der Gewährleistung der Integrität von Daten. Das API ist für verschiedene
Betriebssysteme verfügbar und bietet speziell im IBM Großrechnerbereich eine kostengünstige und
flexible Alternative zu vergleichbaren Hardware-Lösungen. CryptLib bietet Funktionen in den
Bereichen symmetrische und asymmetrische Verschlüsselung, digitale Signatur, X.509 Zertifikate,
S/MIME (PKCS#7) und PKCS#12 private Key. Bei der Entwicklung wurde Wert darauf gelegt, das API
in den Versionen für die verschiedenen Betriebssysteme möglichst einheitlich zu präsentieren
und systembedingte Unterschiede beim Methoden-Aufruf auf das notwendige Minimum zu reduzieren.
CryptLib unterstützt das asymmetrische Verschlüsselungsverfahren RSA, das sich zum Standard in
der public/private Key Kryptographie entwickelt hat.

Im Bereich der symmetrischen Verschlüsselungsverfahren werden AES (Rijndael), DES, TripleDES,
RC2, RC4 und Blowfish unterstützt. Die Funktionen MD2, MD5, SHA1 sowie HMAC zur Bildung von
Hashwerten komplettieren die Basis-Funktionalität. Die Integrität von Daten, mittlerweile teilweise
per Gesetz gefordert, wird durch digitale Signaturen sichergestellt. CryptLib bietet Methoden zur
Erstellung und Verifizierung digitaler Signaturen per RSA. X.509 Zertifikate sind ein weiterer
Anwendungsbereich der public/private Key Kryptographie. Import und Analyse von Informationen,
die in X.509 Zertifikaten gespeichert sind, können mit CryptLib durchgeführt werden. Die RSA
Laboratories haben mit den Publilc Key Cryptography Standards, kurz PKCS, standardisierte
Kryptographie Verfahren entwickelt. CryptLib unterstützt die beiden Standards PKCS#7 (S/MIME)
und PKCS#12 (private Key). Mit Hilfe von S/MIME können E-Mails in gesicherter Weise versendet werden.
CryptLib ermöglicht die Verwendung der Content Types 'Data', 'Signed-data', 'Enveloped-data' und
'Encrypted-data'.
PKCS#12 läßt die sichere Speicherung von privaten Schlüsseln und von
Benutzerzertifikaten zu und kommt vor allem in Browsern zum Einsatz. CryptLib bietet Methoden zur
Verarbeitung von PKCS#12 Dateien. Schließlich enthält die Bibliothek noch einige Utililty Funktionen.
Hierzu gehören eine Implementierung des Komprimierungs-Verfahrens GZIP sowie ein Interface zur
Konvertierung binärer DER/BER kodierter ASN.1 Objekte nach Base64 (PEM).