Software:GnuTLS

From HandWiki
Short description: Free software library implementing TLS
GnuTLS
GNUTLS-logo.svg
Developer(s)Nikos Mavrogiannopoulos, Simon Josefsson
Stable release3.8.2 (November 15, 2023; 3 months ago (2023-11-15)[1]) [±]
Written inC, Assembly
Operating systemLinux, macOS, Windows, BSD
Platformx86, x86-64, ARM[2]
TypeCryptography library
LicenseLGPL-2.1-or-later[3]
Websitewww.gnutls.org

GnuTLS (/ˈɡn ˌt ˌɛl ˈɛs/, the GNU Transport Layer Security Library) is a free software implementation of the TLS, SSL and DTLS protocols. It offers an application programming interface (API) for applications to enable secure communication over the network transport layer, as well as interfaces to access X.509, PKCS #12, OpenPGP and other structures.

Features

GnuTLS consists of a library that allows client applications to start secure sessions using the available protocols. It also provides command-line tools, including an X.509 certificate manager, a test client and server, and random key and password generators.

GnuTLS has the following features:

History

Origin

GnuTLS was initially created around March[6] to November[7] 2000, by Nikos Mavrogiannopoulos to allow applications of the GNU Project to use secure protocols such as TLS. Although OpenSSL already existed, OpenSSL's license is not compatible with the GPL;[8] thus software under the GPL, such as GNU software, could not use OpenSSL without making a GPL linking exception.

License

The GnuTLS library was licensed originally under the GNU Lesser General Public License v2, while included applications to use the GNU General Public License.

In August 2011 the library was updated to the LGPLv3.[9] After it was noticed[10] that there were new license compatibility problems introduced, especially with other free software with the license change, after discussions the license was downgraded again to LGPLv2.1 in March 2013.[11]

Split from GNU

GnuTLS was created for the GNU Project,[12][13] but in December 2012 its maintainer, Nikos Mavrogiannopoulos, dissociated the project from GNU after policy disputes with the Free Software Foundation.[12][13] Richard Stallman opposed this move and suggested forking the project instead.[14] Soon afterward, developer Paolo Bonzini ended his maintainership of GNU Sed and Grep, expressing concerns similar to those of GnuTLS maintainer Mavrogiannopoulos.[15]

Deployment

Software packages using GnuTLS include(d):

See also

References

  1. "The GnuTLS Transport Layer Security Library". https://www.gnutls.org/news.html. 
  2. "Debian -- Details of package gnutls-bin in buster". https://packages.debian.org/stable/gnutls-bin. 
  3. "LICENSE". https://gitlab.com/gnutls/gnutls/blob/master/LICENSE. 
  4. RFC 6091
  5. The GnuTLS Transport Layer Security Library
  6. "Initialized repository for GNU TLS (8aef5fff) · Commits · gnutls / GnuTLS · GitLab" (in en). 2000-03-07. https://gitlab.com/gnutls/gnutls/-/commit/8aef5fff2e54b67c694fa4ef9190cbedf1ff00c1. 
  7. "gnutls0-0-4 · Tags · gnutls / GnuTLS · GitLab" (in en). 2000-11-15. https://gitlab.com/gnutls/gnutls/-/tags/gnutls0-0-4. 
  8. Mark McLoughlin (2004-06-22). "The OpenSSL License and The GPL". http://people.gnome.org/~markmc/openssl-and-the-gpl.html. 
  9. Version 2.99.4 (released 2011-07-23)[...] ** libgnutls: license upgraded to LGPLv3
  10. Mavrogiannopoulos, Nikos (2013-03-26). "The perils of LGPLv3". gnutls.org. http://nmav.gnutls.org/2013/03/the-perils-of-lgplv3.html. "LGPLv3 is the latest version of the GNU Lesser General Public License. It follows the successful LGPLv2.1 license, and was released by Free Software Foundation as a counterpart to its GNU General Public License version 3. The goal of the GNU Lesser General Public Licenses is to provide software that can be used by both proprietary and free software. This goal has been successfully handled so far by LGPLv2.1, and there is a multitude of libraries using that license. Now we have LGPLv3 as the latest, and the question is how successful is LGPLv3 on this goal? In my opinion, very little. If we assume that its primary goal is to be used by free software, then it blatantly fails that." 
  11. 2013-03-14 Nikos Mavrogiannopoulos (nmav@gnutls.org) * COPYING.LESSER, README: gnutls 3.1.10 is LGPLv2.1
  12. 12.0 12.1 GnuTLS, copyright assignment, and GNU project governance on lwn.net by Michael Kerrisk (December 20, 2012)
  13. 13.0 13.1 Nikos Mavrogiannopoulos (2012-12-18). "gnutls is moving". https://lwn.net/Articles/529558/. 
  14. Stallman, Richard (11 December 2012). "GNUTLS is not going anywhere". gnutls-devel (Mailing list). you cannot take GNUTLS out of the GNU Project.
  15. Bonzini, Paolo (22 December 2012). "GNU sed 4.2.2 released, and a rant from the maintainer". bug-gnu-utils (Mailing list).
  16. 16.0 16.1 16.2 "GnuTLS - GNU Project - Free Software Foundation (FSF)". Free Software Foundation. 22 May 2010. https://www.gnu.org/software/gnutls/programs.html. 
  17. "OpenConnect VPN client technical details". http://www.infradead.org/openconnect/technical.html. 

External links