Botan is a crypto library written in C++. It provides a variety of cryptographic algorithms, including common ones such as AES, MD5, SHA, HMAC, RSA, Diffie-Hellman, DSA, and ECDSA, as well as many others that are more obscure or specialized. It also offers SSL/TLS (client and server), X.509v3 certificates and CRLs, and PKCS #10 certificate requests. A message processing system that uses a filter/pipeline metaphor allows for many common cryptographic tasks to be completed with just a few lines of code. Assembly and SIMD optimizations for common CPUs offers speedups for critical algorithms like AES and SHA-1.
CyaSSL is a C-language-based SSL library targeted for embedded and RTOS environments, primarily because of its small size and speed. CyaSSL supports the industry standards up to the current TLS 1.2 level, is up to 20 times smaller than OpenSSL, includes SSL client libraries and an SSL server implementation, includes an OpenSSL compatibility layer, and offers several progressive ciphers such as RABBIT and HC-128. Dual licensed under both the GPLv2 and standard commercial licensing, it caters to a wide range of projects.
PDFTextStream is a PDF text and metadata extraction library available for Java and .NET. It supports all versions of the PDF document specification (including v1.7, used by Acrobat 8, 9, and X), extraction of text encoded using double-byte character sets (including Chinese, Japanese, and Korean), decryption of documents encrypted using 40-bit, 128-bit, 256-bit, and variable bit length ciphers, and extraction of all document metadata provided by PDF documents (including form data, bookmarks, and annotations). Easy integration with Jakarta Lucene is included, as well as interactive form update capability.
PVM (Parallel Virtual Machine) is a portable message-passing programming system, designed to link separate host machines to form a ``virtual machine'' which is a single, manageable computing resource. The virtual machine can be composed of hosts of varying types, in physically remote locations. PVM applications can be composed of any number of separate processes, or components, written in a mixture of C, C++ and Fortran. The system is portable to a wide variety of architectures, including workstations, multiprocessors, supercomputers and PCs.
C/Invoke is a library which can call C functions at runtime with no prior knowledge of the function prototypes. This capability is used to allow any language to call native libraries without writing a separate module in C, similar to the P/Invoke functionality of the .NET framework.
OpenAIS is an open source implementation of the SA Forum (www.saforum.org) Application Interface Specification. The project currently implements APIs to improve availability by reducing MTTR. APIs available are cluster membership, application failover, checkpointing, eventing, distributed locking, messaging, closed process groups, and extended virtual synchrony passthrough. It is possible to write redundant applications that tolerate hardware, operating system, and application faults. Cluster software developers can write plugins to use the infrastructure provided by OpenAIS.
CrissCross is a small cross-platform C++ library for console and file I/O, CPU identification (CPUID), hashing (MD2, MD4, MD5, SHA-1, SHA-256, SHA-512, Tiger), sockets (TCP and UDP only currently), and data structures (LList, DArray, RedBlackTree, AVLTree, SplayTree, etc). It is designed to run on Windows, Linux, FreeBSD, OpenBSD, NetBSD, Mac OS X, and even the Nintendo DS. Other platforms may become supported upon request. The main idea is to provide the ability to write a program using identical calls on the major platforms without needing to rewrite code.