The Cryb libraries
Find a file
Dag-Erling Smørgrav dc8984d0a0 Create autoconf macros to automate component selection.
These macros are designed to work in concert with the AX_PKG_CONFIG macros.  It is now possible to disable any component, even if another depends on it, provided that it is already installed.  For enabled components, we define the same variables as AX_PKG_CONFIG would, so Makefiles don't need to know if a component they rely on is being built as part of this packge or if it was already installed.
2018-05-06 03:21:59 +02:00
debian Add .gitignore and remove an unused file. 2018-05-05 15:38:02 +02:00
freebsd More robust FreeBSD port creation. 2018-04-26 22:00:32 +02:00
include Bump version and copyright years. 2018-04-26 22:00:21 +02:00
lib Make inter-library dependencies public. 2018-05-05 15:37:55 +02:00
m4 Create autoconf macros to automate component selection. 2018-05-06 03:21:59 +02:00
t Add missing dependency on cryb-rand for t_oath. 2018-05-05 15:37:55 +02:00
tools Centralize most of .gitignore. 2016-09-17 21:38:54 +02:00
.gitignore Start using pkg-config / pkgconf. 2017-03-07 00:54:46 +01:00
.travis.yml Fix compiler warnings in Travis. 2017-05-01 16:52:22 +02:00
autogen.des Respect user's CC 2016-09-04 16:18:13 +02:00
autogen.sh Ensure that autogen.sh fails if any of its steps does. 2017-04-06 19:51:47 +02:00
configure.ac Create autoconf macros to automate component selection. 2018-05-06 03:21:59 +02:00
CREDITS Implement the ChaCha family of stream ciphers. 2017-04-06 19:51:45 +02:00
HISTORY Standard files that "make dist" complains about. 2014-07-10 14:44:17 +00:00
INSTALL Standard files that "make dist" complains about. 2014-07-10 14:44:17 +00:00
LICENSE Bump version and copyright years. 2018-04-26 22:00:21 +02:00
Makefile.am Create autoconf macros to automate component selection. 2018-05-06 03:21:59 +02:00
README typo 2015-12-14 16:05:18 +01:00
README.md Prepare for moving to Github 2015-12-14 15:55:38 +01:00
RELNOTES Standard files that "make dist" complains about. 2014-07-10 14:44:17 +00:00

The Cryb libraries

The Cryb libraries are a collection of cryptography- and security-related function libraries written with the following goals in mind:

  • Comprehensive: Cryb aims to provide a rich and flexible set of building blocks for cryptographic applications.

  • Self-contained and easily embeddable: the Cryb libraries have no external dependencies (apart from the toolchain) and few internal ones. Individual modules and algorithms can easily be extracted from Cryb and integrated into other codebases.

  • Reliable: the libraries come with an extensive test suite with a long-term goal of 100% test coverage.

  • Stable: guaranteed API and ABI stability.

  • Documented: full API documentation in the form of Unix man pages.

  • Consistently and permissively licensed: the entire collection is under the 3-clause BSD license.

Caveat

We aren't there yet. The Cryb libraries are still undeniably at the experimental stage. However, significant portions are already in production use as components in other projects (cf: easily embeddable), and we have great expectations for the future of Cryb.