From Rosetta Code
This is an example of a library. You may see a list of other libraries used on Rosetta Code at Category:Solutions by Library.

From the OpenSSL site: The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a full-strength general purpose cryptography library.

OpenSSL provides libraries for C language, and the openssl(1) command for shell scripts. Several other languages provide access to OpenSSL. Ruby has 'openssl' in its standard library.

OpenSSL has two libraries:

  • crypto(3) implements cryptographic algorithms, such as ciphers, message digests, and X.509 certificates. crypto(3) also exposes features, including arbitrary-precision integers called BIGNUMs, and a secure random number generator.
  • ssl(3) implements SSL and TLS.

To link OpenSSL to a C program, a typical Unix command is

cc -o program program.c -lcrypto -lssl