Software:Cryptlib

From HandWiki
cryptlib
Developer(s)Peter Gutmann
Initial release1995 (1995)
Stable release3.4.5 (2019; 7 years ago (2019)[1]) [±]
Written inC
TypeSecurity library
LicenseSleepycat (Berkeley Database) License[2][3]
Website{{{1}}}

cryptlib is an open-source cross-platform software security toolkit library. It is distributed under the Sleepycat License,[2] a free software license compatible with the GNU General Public License.[3] Alternatively, cryptlib is available under a proprietary license for those preferring to use it under proprietary terms.[4]

Features

cryptlib is a security toolkit library that allows programmers to incorporate encryption and authentication services to software. It provides a high-level interface, so that strong security capabilities can be added to an application without needing to know many of the low-level details of encryption or authentication algorithms. Extensive documentation in the form of a 400+ page programming manual is available.[5]


cryptlib can make use of the cryptographic capabilities of a variety of external cryptographic devices such as hardware cryptographic accelerators, Fortezza cards, PKCS #11 devices, hardware security modules (HSMs), and cryptographic smart cards. It can be used with a variety of cryptography devices that have received FIPS 140 or ITSEC/Common Criteria certification. The cryptographic device interface also provides a general-purpose plug-in capability for adding new functionality that can be used by cryptlib.

cryptlib is written in C and supports BeOS, DOS, IBM MVS, Mac OS X, OS/2, Tandem, a variety of Unix versions (including AIX, Digital Unix, DGUX, FreeBSD/NetBSD/OpenBSD, HP-UX, IRIX, Linux, MP-RAS, OSF/1, QNX, SCO UnixWare, Solaris, SunOS, Ultrix, and UTS4), VM/CMS, Windows 3.x, Windows 95/98/ME, Windows CE/PocketPC/SmartPhone and Windows NT/2000/XP/Vista. It is designed to be portable to other embedded system environments. It is available as a standard DLL. Language bindings are available for C / C++, C# / .NET, Delphi,[6] Java, Python, and Visual Basic (VB).

Algorithm support

Ciphers
Algorithm Key size Block size
AES 128/192/256 128
Blowfish 448 64
CAST-128 128 64
ChaCha20 128 / 256 8
DES[7] 56 64
Triple DES 112 / 168 64
IDEA[8] 128 64
RC2[9] 1024 64
RC4[9] 2048 8
Hashes
Algorithm Digest size
MD5[7] 128
SHA-1 160
SHA-2 256 / 384 / 512
MACs
Algorithm Key size Digest size
HMAC-MD5 128 128
HMAC-SHA-1 160 160
HMAC-SHA-2 256 256 / 384 / 512
Poly1305 128 128
Public-key
Algorithm Key size
Diffie–Hellman 4096
DSA 4096
ECDSA 256 / 384 521
ECDH 256 / 384 / 521
Elgamal 4096
RSA 4096

Release History

  • cryptlib 3.4.8 was released on May 1, 2025; 9 months ago (2025-05-01).[10]
  • cryptlib 3.4.5 was released on March 8, 2019; 6 years ago (2019-03-08).
  • cryptlib 3.4.4.1 was released on August 21, 2018; 7 years ago (2018-08-21).[11]
  • cryptlib 3.4.4 was released on January 10, 2018; 8 years ago (2018-01-10).[12]
  • cryptlib 3.4.3 was released on March 25, 2016; 9 years ago (2016-03-25).[13]
  • cryptlib 3.4.2 was released on December 17, 2012; 13 years ago (2012-12-17).[14]
  • cryptlib 3.4.1 was released on July 27, 2011; 14 years ago (2011-07-27).[15]
  • cryptlib 3.4.0 was released on October 6, 2010; 15 years ago (2010-10-06).[16]
  • cryptlib 3.3.2 was released on July 3, 2008; 17 years ago (2008-07-03).[17]
  • cryptlib 3.3.1 was released on February 1, 2007; 19 years ago (2007-02-01).[18]
  • cryptlib 3.3 was released on September 13, 2006; 19 years ago (2006-09-13).[19]
  • cryptlib 3.2.3a was released on August 29, 2006; 19 years ago (2006-08-29).[20]
  • cryptlib 3.2.3 was released on July 10, 2006; 19 years ago (2006-07-10).[21]
  • cryptlib 3.2.2 was released on September 6, 2005; 20 years ago (2005-09-06).[22]
  • cryptlib 3.2.1 was released on August 9, 2005; 20 years ago (2005-08-09).[23]
  • cryptlib 3.2 was released on April 18, 2005; 20 years ago (2005-04-18).[24]
  • cryptlib 3.1 was released on December 13, 2003; 22 years ago (2003-12-13).[25]

See also

References

  1. Gutmann, Peter (2019). "Downloading". https://www.cs.auckland.ac.nz/~pgut001/cryptlib/download.html. 
  2. 2.0 2.1 "Security FAQ". https://www.cryptlib.com/security-faq. 
  3. 3.0 3.1 "License list". https://www.gnu.org/licenses/license-list.html. 
  4. "Enterprise cryptlib". http://www.cryptlib.com/. 
  5. cryptlib user manual
  6. "Cryptlib AddOn's for Delphi programmers". http://cryptlib.sogot.de/delphi.html. 
  7. 7.0 7.1 Disabled by default due to its insecurity
  8. Disabled by default due to it being patented
  9. 9.0 9.1 Disabled by default due to it being obsolete
  10. "cryptlib 3.4.8". 2025-05-01. https://github.com/cryptlib/cryptlib/releases/tag/v3.4.8. 
  11. "cryptlib 3.4.4 update 1 released" (Mailing list). August 21, 2018. Retrieved 2019-08-07.
  12. "cryptlib 3.4.4 released" (Mailing list). January 10, 2018. Retrieved 2019-08-07.
  13. "cryptlib 3.4.3 released" (Mailing list). March 25, 2016. Retrieved 2019-08-07.
  14. "cryptlib 3.4.2 released" (Mailing list). December 17, 2012. Retrieved 2019-08-07.
  15. "cryptlib 3.4.1 released" (Mailing list). July 27, 2011. Retrieved 2019-08-07.
  16. "cryptlib 3.4.0 released" (Mailing list). October 6, 2010. Retrieved 2019-08-07.
  17. "cryptlib 3.3.2 released" (Mailing list). July 3, 2008. Retrieved 2019-08-07.
  18. "cryptlib 3.3.1 released" (Mailing list). February 1, 2007. Retrieved 2019-08-07.
  19. "cryptlib 3.3 released" (Mailing list). September 13, 2006. Retrieved 2019-08-07.
  20. "cryptlib 3.2.3a released" (Mailing list). August 29, 2006. Retrieved 2019-08-07.
  21. "cryptlib 3.2.3 released" (Mailing list). July 10, 2006. Retrieved 2019-08-07.
  22. "cryptlib 3.2.2 released" (Mailing list). September 6, 2005. Retrieved 2019-08-07.
  23. "cryptlib 3.2.1 released" (Mailing list). August 9, 2005. Retrieved 2019-08-07.
  24. "cryptlib 3.2 released" (Mailing list). April 18, 2005. Retrieved 2019-08-07.
  25. "cryptlib 3.1 released" (Mailing list). December 13, 2003. Retrieved 2019-08-07.