The Cryptlib Hub

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 most up-to-date, official Cryptlib source code version 3.4.8 is available from this GitHub release (Apr. 30) which is a single tar.gz file of 8820304 bytes with a sha256 fingerprint of
5db00f51799eb22cc8f1605defc1f51c42441c68b687c085e08ce17899f8e152.

There are some improvements to the code base since this release which I will apply using this update: cryptlib-3.4.8-update-2025.09.27.tar.gz which has a sha256 fingerprint of 88f260bcb1386d94dd5a48376372e47e7451dd7ab05b09cb5a0e281019c6214a signed with my code signing key.

If you're looking for an older version of Cryptlib you may find it on this download page for Linux distributions (Ubuntu 22.04, 20.04, Fedora 34 to Fedora 38, Centos 8.5 and Centos 9) .

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
  • Compiling the objects with -O2 instead of -O3 to mitigate a compiler bug in fc39 and ubuntu

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.8-4.centos85.src.rpm Source package for rpm-based Linux distributions 11726879 Bytes sha256
cryptlib-3.4.8-4.centos85.x86_64.rpm Binary package for rpm-based Linux distributions 7034272 Bytes sha256
cryptlib-3.4.8-4.centos9.src.rpm Source package for rpm-based Linux distributions 11726681 Bytes sha256
cryptlib-3.4.8-4.centos9.x86_64.rpm Binary package for rpm-based Linux distributions 7109219 Bytes sha256
cryptlib-3.4.8-4.centos10.src.rpm Source package for rpm-based Linux distributions 11738904 Bytes sha256
cryptlib-3.4.8-4.centos10.x86_64.rpm Binary package for rpm-based Linux distributions 6972681 Bytes sha256

These packages have been tested on Centos 8.5, 9 and Centos 10

File Description Size Fingerprint
All inclusive Fedora 35 package Fedora 35 SRC and RPM package sha256
All inclusive Fedora 39 package Fedora 39 SRC and RPM package sha256
All inclusive Fedora 40 package Fedora 40 SRC and RPM package sha256
All inclusive Fedora 41 package Fedora 41 SRC and RPM package sha256
All inclusive Fedora 42 package Fedora 42 SRC and RPM package sha256
All inclusive Fedora 43 package Fedora 43 SRC and RPM package sha256
All inclusive Fedora 44 package Fedora 44 SRC and RPM package sha256

These packages have been tested on Fedora 35 to 42
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.8.orig.2404.tar.gz Source archive for deb-based Linux distributions 7370089 Bytes sha256
cryptlib_3.4.8.orig.2204.tar.gz Source archive for deb-based Linux distributions 7370088 Bytes sha256
cryptlib_3.4.8.orig.2004.tar.gz Source archive for deb-based Linux distributions 7370132 Bytes sha256
cryptlib_3.4.8-5_amd64.2404.deb Binary package for deb-based Linux distributions 7402830 Bytes sha256
cryptlib_3.4.8-5_amd64.2204.deb Binary package for deb-based Linux distributions 7441384 Bytes sha256
cryptlib_3.4.8-5_amd64.2004.deb Binary package for deb-based Linux distributions 7287044 Bytes sha256

These packages have been tested on Ubuntu 24.04, 22.04 and 20.04.

Binaries for the Odd OS

The original source code archive (cryptlib348.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.