|
S.no
|
Title / URL
|
Description
|
Supported
Algorithms as of 2008
|
Language /
Platform
|
License
|
| 1
|
Kryptos Project
|
Educational
Software |
Symetric
Algorithms: DES, IDEA, MARS, RC5, RC6, Rijndael, Serpent, Triple DES,
Twofish. Asymetric Algorithms: RSA. Signature Authentication: DSA, RSA,
ECDSA |
Visual C++ 7.1
on
Windows |
MIT
|
| 2
|
Crypto++
Library 5.5.2
|
Free C++ class
library of cryptographic schemes. Contains implementations of various
symetric, asymetric, and hashing algorithms.
|
Most symetric
block ciphers (with multiple modes of operation), stream ciphers, ECC,
MACs, the most popular hashing functions
|
C++ on Win32/64,
UNIX, Mac OS X, Solaris, Linux, BeOS
|
Open
|
| 3
|
Cryptix
|
Supports
OpenPGP,
JCE, under maintenance now. |
OpenPGP , JCE
|
OpenPGP , JCE
|
Cryptix General
|
| 4
|
LiDIA
|
A C++ Library
For
Computational Number Theory |
Arithmetic
Interfaces, Basic arithmetic, Factorization, Lattice Basis Reduction,
Linear Algebra over Z, Number Fields, Finite Fields, Polynomials,
Elliptic Curves (can generate cryptographically strong elliptic
curves), Primality Proving, Support for Big Int, Other Generic Data
Types |
C++ on 32 bit
linux and SPARC Sun Solaris 2.6
|
Open for
non-commercial use |
| 5
|
GMP
|
GMP is a free
library for arbitrary precision arithmetic, operating on signed
integers, rational numbers, and floating point numbers
|
High-level
signed
integer arithmetic functions. High-level rational arithmetic functions.
High-level floating-point arithmetic functions. Low-level
positive-integer, hard-to-use, very low overhead functions. Berkeley MP
compatible functions. High-level floating-point accurately rounding
arithmetic functions. |
C++ on linux,
unix, and other unix-like systems
|
LGPL
|
| 6
|
NTL
|
High-performance,
portable C++ library providing data structures and algorithms for
manipulating signed, arbitrary length integers, and for vectors,
matrices, and polynomials over the integers and over finite fields.
|
Polynomial
arithmetic, lattice reduction, vectors, matrices, and polynomials over
the integers and over finite fields, and for arbitrary precision
floating point arithmetic. |
C++ on UNIX and
Windows |
Open
|
| 7
|
MIRACL
|
Big Number
Library which implements all of the primitives necessary to design Big
Number Cryptography into your real-world application
|
RSA public key
cryptography, Diffie-Hellman Key exchange, DSA digital signature,
Elliptic Curve Cryptography over GF(p) and GF(2m),
AES Modes
of Operation, SHA-1/256/384/512
|
Binaries only
for
Windows and Linux |
Free for
non-commercial use, license required for commercial use
|
| 8
|
MatrixSSL
|
Embedded SSL
implementation designed for small footprint applications and devices
|
SSL and TLS
server and client support . Included crypto library - RSA, 3DES, AES,
ARC4, SHA-1, MD5, RC4-MD5, RC4-SHA, DES-CBC3-SHA, AES128-SHA
|
C++ on Window,
Mac OS X, Linux, VxWorks, Pocket PC, eCos
|
GPL
|
| 9
|
OpenSSL
|
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
|
It offers
support
for SSL and TLS, as well as a wide variety of Certification Authority
functions and a general purpose crypto library, ASN.1 (including
X.509), Base64 & PEM, md2, md4, md5, sha, ripemd-160, AES, DES,
3DES, IDEA, all in ECB, CFB, OFB and CBC modes. RC2, RC4, RC5, Safer,
DH, RSA, DSA |
C++ on Linux, BSD
|
GPL
|
| 10
|
Java
SSL Library
|
Java
implementation of a fast and scalable SSL library
|
Supports Client
and Server SSL protocol for SSL versions 2 and 3 and TLS version 1.
Supports Mutual Authentication.
|
Any machine that
runs the JVM |
Apache Software
License |
| 11
|
EspreSSL
|
A free, pure
Java
SSL library, (only source, no support) previously jSSL
|
SSL versions 2
and 3 |
Any machine that
runs the JVM |
Open
|
| 12
|
GNU
Crypto Project
|
Provides a free,
versatile, high-quality, and provably correct implementations of
cryptographic primitives and tools in the Java programming language for
use by programmers and end-users
|
A large number
of
algorithms are implemented in this solution. These include a large
number of symmetric encryption algorithms and hashing functions. A
limited number of asymetric algorithms are implemented as well,
including RSA and Diffie-Hellman
|
Any machine that
runs the JVM |
GPL with the
library exception which permits its use as a library in conjunction
with non-free software |
| 13
|
Programming
Libraries for C/C++
|
Crypto SDK for
C++ (focused on PGP) |
NSDPGP 3.0 ,
CTClib 2.1 for PGP , PGP Tools 1.0 , PGPLIB 1.0 , PGP SDK
|
Windows
|
Open
|
| 14
|
PyCrypto
- Python Cryptography Toolkit
|
Collection of
cryptographic algorithms and protocols, implemented for use from Python
|
AES / ARC32 /
Blowfish /CAST/ DES /3DES/IDEA RC5 / Hashing - MD2 MD4 MD5 SHA / RIPEMD
|
Windows, Linux,
UNIX |
Open
|
| 15
|
Java
Cryptography Architecture
|
The Java
Cryptography Architecture encompasses the parts of the Java 2 SDK
Security API related to cryptography
|
DSA / X.509 /
MD5
/ SHA-1 / DES & many others
|
Any machine that
runs the JVM |
None
|
| 16
|
Flexiprovider
|
Builds off of
the
Java Cryptography Architecture to provide fast and secure
implementations of cryptographic algorithms for developers not well
versed in cryptography |
AES, Triple DES,
password based encryption, MD5, SHA-1, RIPEMD, CBC-MAC, CMAC, HMAC,
ECDSA, ECNR, ECDH, ECIES, and additional modules under research such as
the use of number field cryptography in imaginary quadratic orders.
|
Any machine that
runs the JVM |
Core module is
LGPL, additional modules are released under GPL
|
| 17
|
Perl
Crypto
|
CPAN repository
|
Extensive
support
for multiple algorithms. Please use CPAN repository to look around
which one you need. |
Perl 5.10.0
|
GPL
|
| 18
|
International
Crypto API for GNU/Linux Kernel
|
CryptoAPI adds a
framework for cryptography to the GNU/Linux kernel
|
Kernel
cryptographic modules/ supported algorithms undocumented
|
C/C++ on all
OSes
supporting POSIX |
None
|
| 19
|
Cryptlib
|
Security toolkit
that allows even inexperienced crypto programmers to easily add
encryption and authentication services to their software
|
cryptlib
provides
an extensive range of other capabilities including full X.509/PKIX
certificate handling (all X.509 versions from X.509v1 to X.509v4) with
additional support for SET, Microsoft AuthentiCode, Identrus, SigG,
S/MIME, SSL, and Qualified certificates, PKCS #7 certificate chains,
handling of certification requests and CRLs including automated
checking of certificates against CRLs and online checking using RTCS
and OCSP, and issuing and revoking certificates using CMP and SCEP. In
addition cryptlib implements a full range of certification authority
(CA) functions, as well as providing complete CMP, SCEP, RTCS, and OCSP
server implementations to handle online certificate
enrollment/issue/revocation and certificate status checking. Alongside
the certificate handling, cryptlib provides a sophisticated key storage
interface that allows the use of a wide range of key database types
ranging from PKCS #11 devices, PKCS #15 key files, and PGP/OpenPGP key
rings through to commercial-grade RDBMS' and LDAP directories with
optional SSL protection. |
BeOS, DOS, IBM
MVS, Macintosh/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. Language bindings are
available for C / C++, C# / .NET, Delphi, Java, Python, and Visual
Basic (VB). |
GPL-Compatible
License |
| 20
|
Botan
|
Botan is a C++
library implementing a variety of cryptographic algorithms and formats
|
PKCS , PKCS #3
Diffie-Hellman , PKCS #5 v1.5/v2.0 ,Parts of 1363 , X.509v3
certificates (RSA, DSA, and Diffie-Hellman) are supported, X.509 CRLs.
Support also includes a number of symmetric ciphers including national
block ciphers, telecom block ciphers, a number of
deprecated/compatibility ciphers and various block cipher modes. Also
includes support for a number of hashing and MAC functions.
|
C++ with support
for Linux, FreeBSD, NetBSD, Solaris, Mac OS X, and Windows
|
Creative Commons
|
| 21
|
StrongHold32
|
Stand alone
crypto program created for Win32 . It is based on the RC5 family
(32/0..255/0..255). Easy to use and fast. Process any file types. Tool
supports one click multiple files encryption and fast e-mail processing
|
Variety of
options based on RC5 encryption.
|
Delphi/Kylix on
Windows |
Apache Software
License |
| 22
|
Pidgin-Encryption
|
Transparently
encrypts instant message communications with RSA encryption
|
RSA encryption
with bit sizes from 512 - 4096 bits.
|
C++ on Linux and
Windows |
GPL
|
| 23
|
Stunnel
- Universal SSL Wrapper
|
Program that
allows you to encrypt arbitrary TCP connections inside SSL
|
Provides
security
to non-SSL aware daemons such as POP, IMAP, and LDAP.
|
C++ on UNIX and
Windows |
GPL
|
| 24
|
Crypto
Kong
|
This is a tool
to
manage digital signatures and encryption of documents
|
Elliptical
curves
for signing and ARC-4 for encrypting the message
|
C++ library
which
implements the libraries and VB front end which manages the UI. Runs
only on Windows |
Open
|
| 25
|
Eric's
Crypto Software
|
This is
cryptographic software which can be implemented on PIC Microcontrollers
and Scenix-sx microcontrollers
|
Implements DES
and SKIPJACK algorithms |
Linux
|
GPL
|
| 26
|
DES
Encryption
|
Javascript
implementation of DES |
Supports DES and
Triple DES with Electronic Codebook and Cipher Block Chaining
|
Can be
implemented in any webpage that supports javascript.
|
Open
|
| 27
|
JGSS
Package
|
Provides Java
programs access to Kerberos Generic Security Services API and includes
the signing and sealing of messages, and a generic authentication
mechanism |
Kerberos V5
|
Any machine that
runs the JVM |
Open
|
| 28
|
perl5-gpg
|
Perl5 interface
to GnuPG |
OpenPGP
|
Perl with
support
for Windows, UNIX, and Linux.
|
LGPL
|
| 29 |
Network
Security Services (NSS)
|
A set of
libraries designed to support cross-platform development of
security-enabled client and server applications
|
SSL v2 and v3,
TLS, PKCS #1, #3, #5, #7, #8, #9, #10, #11, #12, S/MIME, X.509 v3
certificates, OCSP, PKIK, and all the traditional symetric, asymetric,
and hashing functions. |
C++ on UNIX,
Linux, Windows, Mac OS X, Solaris, OS/2 and BeOS
|
Mozilla Public
License, GPL, LGPL |
| 30
|
BSAFEeay
|
Implementation
of
RSA Security's BSAFE Crypto-C API, using the SSLeay crypto library
|
Single DES, RSA
(without key generation), SHA-1, MD5, Diffie-Hellman (except parameter
generation), PKCS #5 |
C++ on UNIX,
Linux and Windows |
Open
|
| 31
|
libgcrypt
|
General purpose
cryptographic library based on the code from GnuPG
|
Provides
functions for 'all' cryptograhic building blocks
|
C++ on Linux
|
GPL
|
| 32
|
TurboPower
LockBox
|
LockBox is a
cross-platform toolkit for data encryption
|
It provides
support for Blowfish, RSA, MD5, SHA-1, Triple DES, Rijndael, &
digital signing of messages. |
Delphi/Kylix and
Object Pascal on all 32 bit versions of Windows and all POSIX systems
|
Mozilla Public
License |
| 33
|
BeeCrypt
|
Ongoing project
to provide a strong and fast cryptography toolkit
|
Includes entropy
sources, random generators, block ciphers, hash functions, message
authentication codes, multiprecision integer routines, and public key
primitives |
Assembly, C,
C++,
and Java on Windows (through Cygwin) and all BSD platforms
|
LGPL
|
| 34
|
libecc
|
Elliptic curve
cryptography library that supports fixed-size keys for maximum speed.
Its goal is to become the first free library to let users generate safe
elliptic curves, and to provide an important source of information for
anyone with general interest in ECC
|
ECC cryptography
with fixed size keys. |
C++ on UNIX and
Linux |
GPL
|
| 35
|
OpenPGP
|
Listing of PGP
implementations available for use.
|
Libraries
available support PGP, S/MIME, SSL, etc.
|
Resource
|
Various licenses
|
| 36 |
BouncyCastle
|
Lightweight
java-based encryption library. There is also a C# version which
implements most of the java one.
|
Supports TLS,
X.509 v1 and v3, CRL v2, PKCS #12, X.509 v2 attribute certificates,
S/MIME, CMS, OCSP, TSP, OpenPGP,
|
Java version
runs
on any machine with the JVM. C# version will run on any Windows machine
with .NET 1.0 installed |
Open
|
| 37 |
OpenPGP
SDK
|
The OpenPGP SDK
project provides an open source library which implements the OpenPGP
specification |
OpenPGP, RSA
|
Linux, UNIX,
Solaris |
Open
|
| 38 |
CrypTool
|
The application
CrypTool is a free e-learning application for Windows
|
Numerous classic
and modern cryptographic algorithms (encryption and decryption, key
generation, secure passwords, authentication, secure protocols, ...).
Visualisation of several methods (e.g. Caesar, Enigma, RSA,
Diffie-Hellman, digital signatures, AES). Cryptanalysis of certain
algorithms (e.g. Vigenere, RSA, AES). Crypt-analytical measuring
methods (e.g. entropy, n-grams, autocorrelation). Auxiliary methods
(e.g. primality tests, factorization, base64 coding).
|
CrypTool runs on
Windows XP or greater with .NET 3.0 installed. JCrypTool is a Java
implementation and is platform independent.
|
Open
|
| 39 |
Haskell
Cryptographic Library
|
Implementation
of
various cryptographic functions for the Haskell programming language.
|
DES, Blowfish,
AES, Cipher Block Chaining, PKCS #5, SHA-1, MD5, and RSA
|
Can be compiled
by the Haskell compiler GHC on Unix, Linux, Windows, and Mac OS X
|
Different
modules
have different licenses, but all are either BSD or GPL
|
| 40
|
as3crypto
|
Cryptography
library written in Actionscript 3 which can be used by Flash that
provides several common algorithms
|
TLS 1.0
(partial), X.509, RSA, AES, DES, 3-DES, Blowfish, XTEA, RC4, MD2, MD5,
SHA-1, SHA-224, SHA-256, PKCS #1 and #5, and modes: ECB, CBC, CFB,
CFB8, OFB, CTR |
Flex 2 for the
flash player. |
BSD
|
| 41
|
Pure-ruby
Cryptographic Library
|
A pure-ruby
implementation of a number of popular encryption algorithms
|
Blowfish, GOST,
IDEA, and AES. Twofish, Serpent, and CAST256 are planned for release
soon. |
Built for ruby
and is platform independent. |
Public domain
|
| 42
|
SharpPrivacy
|
An open source
implementation of the OpenPGP standard for the .NET Framework
|
OpenPGP
|
Built .NET
Framework 1.0 so runs on Windows or Linux running Mono.
|
Public domain
|
| 43
|
JavaScript
MD5
|
JavaScript
implementation of some hashing functions
|
MD4, MD5, and
SHA-1 |
JavaScript code
so therefore can be run on any website with JavaScript support.
|
Public domain
|
| 44
|
Extensions
for Microsoft AJAX Framework
|
Provides
cryptographic services including secure encoding and decoding of data,
as well as hashing and random number generation, and new methods for
Javascript native objects. |
MD5, SHA-1,
HMAC,
AES |
Can be deployed
on any asp.net website using the Microsoft AJAX framework
|
Public domain
|
| 45
|
aSSL
|
A javascript
client and server side piece that implements a technology similar to
SSL without HTTPS. |
RSA and AES
|
Javascript is
used for the client piece and ASP is used for the serverside component
|
MIT
|
| 46 |
Chilkat
Perl Encryption Library
|
Perl encryption
library for encrypting and decrypting both strings and binary data.
|
AES, Blowfish,
and Twofish. Hashing can be done with SHA-1, SHA-384, SHA-512, MD2,
MD5, and HAVAL. |
Written in perl
with support for Windows, UNIX, and Linux.
|
Trial available
but requires a purchased license
|
| 47 |
pgpenvelope
|
Interface
between
Pine and the GNU Privacy Guard (GnuPG). It allows one to perform
expected OpenPGP-related operations on messages.
|
OpenPGP
|
Written in perl
for all OSes that support POSIX
|
GPL
|
| 47 |
LibTomMath
|
Provides highly
optimized and portable routines for a vast majority of integer based
number theoretic applications (including public key cryptography)
|
RSA, DH and ECC
|
C
|
open source |
| 48 |
OpenKeys
|
Cross-platform
library for application-based password management, providing a common
development interface to keyring/keychain solutions such as Gnome
Keyring, KWallet, Apple Keychain and Keepass.
|
Gnome Keyring,
KWallet, Apple Keychain, and Keepass
|
C and Python for
UNIX, Linux, Windows, and Mac OS X
|
LGPL
|