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; 16 months ago (2025-05-01).[10]
  • cryptlib 3.4.5 was released on March 8, 2019; 7 years ago (2019-03-08).
  • cryptlib 3.4.4.1 was released on August 21, 2018; 8 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; 10 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; 15 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; 18 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; 20 years ago (2006-08-29).[20]
  • cryptlib 3.2.3 was released on July 10, 2006; 20 years ago (2006-07-10).[21]
  • cryptlib 3.2.2 was released on September 6, 2005; 21 years ago (2005-09-06).[22]
  • cryptlib 3.2.1 was released on August 9, 2005; 21 years ago (2005-08-09).[23]
  • cryptlib 3.2 was released on April 18, 2005; 21 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.