The Cryptlib Hub For Older Packages

Welcome!

Here you'll find Cryptlib packages prepared to run on various modern Linux distributions.

The Cryptlib Source Code

Cryptlib is a comprehensive security toolbox, developed and maintained by Peter Gutmann.

You'll find the open-source page here and the commercial page here. Cryptlib is licensed both under an open-source Sleepycat license and alternatively - if you don't want to comply with these terms - under a commercial license. In addition to this, parts of Cryptlib are licensed under OpenSSL.

The original Cryptlib source code version 3.4.7 is available from this website. which is a single zip file of 7041396 bytes with a sha256 fingerprint of
e3f617ea55b1c2c6ea1a27ccc7c8dd4972d3428dfbb0c8ba52a3e4a3ea98ada6.

My Changes to the Source Code

To be honest, I hate to make any change to the original source code. But in order to compile a comprehensive package I needed to make some changes, all of them have been approved by Peter Gutmann.

  • To enable JAVA bindings I switched "#define USE_JAVA" on and added jni.h and jni_md.h for compilation
  • Building the Perl module required adding the files typeset and ppport.h to the bindings directory

RPM-based Packages

Fedora and CentOS

Cryptlib is part of the Fedora distribution since June 2016 and can be installed with

dnf install cryptlib*

A mirror of the current packages for x86_64 is hosted here.

The All-inclusive Generic RPM Package

It is my intention to produce an up-to-date RPM package that includes everything including the excellent Cryptlib manual as well as example code for various programming languages (C/C++, Python, Java, Perl). This is the result:

File Description Size Fingerprint
cryptlib-3.4.7-1.centos85.src.rpm Source package for rpm-based Linux distributions 9802344 Bytes sha256
cryptlib-3.4.7-1.centos85.x86_64.rpm Binary package for rpm-based Linux distributions 4801108 Bytes sha256
cryptlib-3.4.7-1.centos9.src.rpm Source package for rpm-based Linux distributions 9802325 Bytes sha256
cryptlib-3.4.7-1.centos9.x86_64.rpm Binary package for rpm-based Linux distributions 4917193 Bytes sha256

This package has been tested on Centos 8.5 and Centos 9

File Description Size Fingerprint
All inclusive Fedora 34 package Fedora 34 SRC and RPM package sha256
All inclusive Fedora 35 package Fedora 35 SRC and RPM package sha256
All inclusive Fedora 36 package Fedora 36 SRC and RPM package sha256
All inclusive Fedora 37 package Fedora 37 SRC and RPM package sha256
All inclusive Fedora 38 package Fedora 38 SRC and RPM package sha256
All inclusive Fedora 39 package Fedora 39 SRC and RPM package sha256

These packages have been tested on Fedora 34 to 38
If you find this package to work on other rpm-based Linux I'd like to hear from you.

DEB-based Packages

It is also my intention to produce an up-to-date DEB package that includes everything including the excellent Cryptlib manual as well as example code for various programming languages (C/C++, Python, Java, Perl). This is the result:

File Description Size Fingerprint
cryptlib_3.4.7.orig.2404.tar.gz Source archive for deb-based Linux distributions 9374490 Bytes sha256
cryptlib_3.4.7.orig.2204.tar.gz Source archive for deb-based Linux distributions 9360830 Bytes sha256
cryptlib_3.4.7-1_amd64-2404.deb Binary package for deb-based Linux distributions 8207430 Bytes sha256
cryptlib_3.4.7-1_amd64-2204.deb Binary package for deb-based Linux distributions 8251446 Bytes sha256
cryptlib_3.4.7-1_amd64-2004.deb Binary package for deb-based Linux distributions 8251422 Bytes sha256

These packages have been tested on Ubuntu 22.04 and 20.04.

Binaries for the Odd OS

The original source code archive (cryptlib346.zip) includes pre-compiled binaries for a well-known proprietary OS.

Reporting Bugs

Virtually any project can be based on Cryptlib as it supports a number of programming languages, including C/C++, Java, Perl and Python. If you run into any problem using the packages above I'd like to hear from you.

Please also contact me, if you need a helping hand to base your project on Cryptlib.