The Cryb libraries
Go to file
Dag-Erling Smørgrav 4d76b664d2 Merge counter and lastused.
To prevent replay attacks, HOTP uses a counter, while TOTP keeps track of the time the key was last used.  Since these values have the same type and are never used at the same time, merge them into an anonymous union.
2018-11-15 18:35:01 +01:00
debian New alpha release. 2018-05-13 16:40:29 +02:00
freebsd More robust FreeBSD port creation. 2018-04-26 22:00:32 +02:00
include Merge counter and lastused. 2018-11-15 18:35:01 +01:00
lib Add a CRYB_VERBOSE environment variable. 2018-05-11 17:41:54 +02:00
m4 Differentiate between provider and consumer. 2018-11-15 18:34:57 +01:00
t Continue to refine our build system. 2018-05-13 00:24:38 +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 Switch Travis to Xenial. 2018-11-15 18:08:25 +01: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 Differentiate between provider and consumer. 2018-11-15 18:34:57 +01: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 Install our autoconf macros. 2018-05-06 17:38:45 +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.