summaryrefslogtreecommitdiffstats
path: root/src/crypto
AgeCommit message (Collapse)Author
2014-09-03Fix UHASH build on *BSDMatthias Schiffer
2014-09-01Add alloc helpers for aligned allocationsMatthias Schiffer
2014-08-28Add UHASH implementationMatthias Schiffer
2014-08-28Revert "Experimental HMAC-SHA1 implementation"Matthias Schiffer
We don't really want to support it, and it's slower than GHASH... This reverts commit 9bf498263765328011ee105e5e7b3e1cc1b2bc3f.
2014-08-25Experimental HMAC-SHA1 implementationMatthias Schiffer
This adds experimental support for <cipher>+hmac-sha1 methods. It currently depends on OpenSSL and is not yet ready for production use.
2014-08-25MAC: rename hash() to digest() and change length unit from blocks to bytesMatthias Schiffer
2014-08-24Coding style: always add a space between a pointer's type and the *Matthias Schiffer
2014-08-02Introduce and use alloc helpersMatthias Schiffer
These new helpers will terminate fastd on allocation failures and add some additional convenience (allow strdup with NULL; typesafe new(type) macros).
2014-06-28Fix build with ENABLE_OPENSSLMatthias Schiffer
2014-06-12Remove an unused variableMatthias Schiffer
2014-06-08Add ENABLE_LTO cmake optionMatthias Schiffer
Tested with GCC and clang; unlikely to work with other toolchains, so it's disabled by default.
2014-05-29Document *everything*Matthias Schiffer
2014-05-29Simplify configuration of cipher and MAC implementationsMatthias Schiffer
Let the cipher and MAC handlers just store the chosen implementations themselves instead of relying on the global configuration.
2014-05-27Remove fastd_true()Matthias Schiffer
2014-04-30Fix CMake errors on some config combinationsMatthias Schiffer
2014-04-24Convert few more counters to size_t, just for the sake of consistency...Matthias Schiffer
2014-04-20Make conf globalMatthias Schiffer
2014-04-10Use #pragma onceMatthias Schiffer
2014-03-14Adjust copyright yearsMatthias Schiffer
2014-03-13Rename USE_LIBSODIUM and USE_OPENSSL cmake flags to ENABLE_LIBSODIUM and ↵Matthias Schiffer
ENABLE_OPENSSL
2014-01-25Mark assembler files as not needing executable stackMatthias Schiffer
2013-12-26Only fail due to missing pclmul support if the pclmulqdq GHASH ↵Matthias Schiffer
implementation is actually enabled
2013-12-26Check if the compiler supports -mpclmulMatthias Schiffer
2013-12-14Remove blowfish-ctr cipher, it's much slower than Salsa20 and probably less ↵Matthias Schiffer
secure
2013-12-04Change xor and xor_a back to work on pointersMatthias Schiffer
For some reason, this makes GCC generate much better code on MIPS with -Os
2013-12-01Add fast SSE2 implementations "xmm" for Salsa20 and Salsa20/12Matthias Schiffer
Public Domain implementations by D. J. Bernstein, see http://cr.yp.to/snuffle.html
2013-12-01Remove a few `aligned' attributes that don't make senseMatthias Schiffer
2013-11-30Make the crypto implementations independent of fastd.h (and fix more minor bugs)Matthias Schiffer
2013-11-30Make crypto implementation configurable (and update a few error messages)Matthias Schiffer
2013-11-30Perform string-based lookup of method-related information only onceMatthias Schiffer
2013-11-30Remove cipher and MAC contextsMatthias Schiffer
Not a single implementation was using them...
2013-11-29Revert "crypto: separate cipher/MAC availability check from information request"Matthias Schiffer
This reverts commit d0707b161d10cf79242d40b24853988c89c7604a.
2013-11-29crypto: separate cipher/MAC availability check from information requestMatthias Schiffer
2013-11-29Compile with -std=c99 and restructure some code to ensure there is no ↵Matthias Schiffer
invalid aliasing (hopefully)
2013-11-28ghash-pclmulqdq: fix one left usage of a __builtin pclmulqdq instead of the ↵Matthias Schiffer
_mm version
2013-11-28ghash-pclmulqdq: rework implementation to allow both GCC and Clang to ↵Matthias Schiffer
generate fast code
2013-11-28ghash-pclmulqdq: make byteswap a macroMatthias Schiffer
For some reason, this allows clang to optimize the code much better.
2013-11-28ghash-pclmulqdq: speed up multiplication using the Karatsuba algorithmMatthias Schiffer
2013-11-28Add a pclmulqdq ghash implementationMatthias Schiffer
2013-11-27Allow checking if a crypto algorithm is available at runtimeMatthias Schiffer
2013-11-27Add OpenSSL-based aes128-ctr implementationMatthias Schiffer
2013-11-25Move crypto algorithm information out of implementationMatthias Schiffer
2013-11-25Move cipher and mac structures to a new headerMatthias Schiffer
2013-11-21Add salsa20/12 cipherMatthias Schiffer
2013-11-21Add salsa20 cipherMatthias Schiffer
2013-11-20Slightly simplify method/cipher/MAC definitionsMatthias Schiffer
2013-11-18blowfish-ctr: formatting fixesMatthias Schiffer
2013-11-18Remove OpenSSL-based blowfish implementationMatthias Schiffer
It doesn't have any advantages over the builtin one.
2013-11-18secure_memzero all cipher and MAC statesMatthias Schiffer
2013-11-17Add null cipherMatthias Schiffer