Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Namespace AEAD header guards | lloyd | 2013-07-01 | 3 | -6/+6 |
| | |||||
* | Check for overflow when decoding OIDs | lloyd | 2013-06-27 | 1 | -0/+5 |
| | |||||
* | Change same_mem to use XORs instead of equality operators. | lloyd | 2013-06-13 | 1 | -3/+3 |
| | | | | | | Potentially less prone to optimizer trickery wrt early exits, especially as it encourages a SIMD approach which modern compilers tend to prefer if they think they can get away with it. | ||||
* | Add missing header | lloyd | 2013-06-11 | 1 | -0/+47 |
| | |||||
* | Fix include | lloyd | 2013-06-05 | 1 | -1/+1 |
| | |||||
* | Move cryptobox/raw_key.cpp to new module cryptobox_psk which allows it | lloyd | 2013-06-05 | 5 | -25/+12 |
| | | | | | | to be used in TLS without requiring pulling in CTR, Serpent, PBKDF2 and other code required by password-based cryptobox but not needed for TLS session encryption. | ||||
* | Have TLS::Ciphersuite::valid check that all algorithms are available, | lloyd | 2013-06-04 | 2 | -21/+84 |
| | | | | | | | | | | | | | which allows us to remove a number of algorithms as hard dependencies and instead simply allow their use if they are included in the build. Currently all key exchange algorithms (RSA, DH, ECDH, SRP) remain as hard dependencies as msg_{client,server}_key.cpp directly manipulate those types. While theoretically optional, MD5, SHA-1, SHA-2, and SSL3-MAC remain hard dependencies as their availability affects protocol support as well as ciphersuites, though in principle being able to disable MD5/SHA-1 and requiring v1.2 or higher would be useful. | ||||
* | Avoid SIGFPE if no providers during benchmark | lloyd | 2013-05-30 | 1 | -4/+8 |
| | |||||
* | Avoid unnecessary allocations during GCM multiply, 20-30% speedup | lloyd | 2013-05-30 | 1 | -15/+12 |
| | |||||
* | Remove mutation from GCM multiply loop | lloyd | 2013-05-30 | 1 | -4/+2 |
| | |||||
* | Add Channel::send_warning_alert and send_fatal_alert | lloyd | 2013-05-30 | 4 | -8/+18 |
| | |||||
* | Fix Windows and static-only makefiles | lloyd | 2013-04-23 | 2 | -6/+4 |
| | |||||
* | Change TLS::Ciphersuite constructor to be non-inline and to take | lloyd | 2013-04-19 | 2 | -17/+37 |
| | | | | | arguments by const char*. Reduces size of tls_suite_info.o by 80% on Linux with GCC 4.8 | ||||
* | Add missing dependencies | lloyd | 2013-04-19 | 1 | -0/+2 |
| | |||||
* | Avoid warning | lloyd | 2013-04-19 | 1 | -2/+2 |
| | |||||
* | Compile fix | lloyd | 2013-04-19 | 1 | -1/+1 |
| | |||||
* | Add a constant to make it more obvious that the clock polling | lloyd | 2013-04-19 | 2 | -9/+11 |
| | | | | is not considered as contributing entropy to a rng poll. | ||||
* | Some small TLS doc updates | lloyd | 2013-04-19 | 1 | -0/+2 |
| | |||||
* | Avoid using representable value for internal null alert | lloyd | 2013-04-19 | 2 | -14/+7 |
| | |||||
* | Rename ARC4 to RC4 | lloyd | 2013-04-19 | 12 | -63/+63 |
| | |||||
* | Add more generalized runtime performance test, can check AEAD modes | lloyd | 2013-04-17 | 2 | -135/+109 |
| | | | | and for block ciphers will time both encrypt and decrypt. | ||||
* | Always include modules requiring ISA extensions as long as the | lloyd | 2013-04-17 | 14 | -85/+94 |
| | | | | | | | | | | | compiler and target platform might support it. For instance the AES SSSE3 code is now always in any x86 build, with just that specific file being compiled with -mssse3. Since we'll only call that code if cpuid confirms it works at runtime, we don't have portability issues, and it can be safely included in generic builds (eg for distributions). Tweak how machine specific compiler flags are generated to be a bit easier to maintain. | ||||
* | Rewrite the TLS padding comparison to be constant time | lloyd | 2013-04-16 | 1 | -6/+6 |
| | |||||
* | Add a policy for Suite B 128-bit | lloyd | 2013-04-12 | 2 | -12/+33 |
| | |||||
* | Remove old/broken/highly incomplete CMS code | lloyd | 2013-04-12 | 9 | -1337/+0 |
| | |||||
* | Kill workaround for GCC 3.x | lloyd | 2013-04-12 | 1 | -4/+0 |
| | |||||
* | Avoid null pointer deref if key was not set in AES | lloyd | 2013-04-12 | 1 | -0/+4 |
| | |||||
* | Move zero as null pointer warning to maintainer mode flags | lloyd | 2013-04-12 | 1 | -2/+2 |
| | |||||
* | Add datestamp to autogenerated tls_suite_info.cpp | lloyd | 2013-04-12 | 2 | -16/+13 |
| | |||||
* | Fix Ciphersuite::to_string when using non-GCM AEAD modes | lloyd | 2013-04-12 | 1 | -2/+2 |
| | |||||
* | Update link to CFRG OCB draft | lloyd | 2013-04-11 | 1 | -1/+1 |
| | |||||
* | Add support for AEAD modes in TLS. Add GCM ciphersuites. | lloyd | 2013-04-11 | 5 | -10/+240 |
| | |||||
* | In Channel, pre-size the IO buffers to 16K to avoid excess allocations. | lloyd | 2013-04-11 | 1 | -0/+7 |
| | | | | Translate Integrity_Failure exceptions to bad_record_mac | ||||
* | GCM garbled nonces after one message | lloyd | 2013-04-11 | 2 | -4/+4 |
| | |||||
* | Only negotiate an AEAD mode when using 1.2 | lloyd | 2013-04-11 | 3 | -0/+12 |
| | |||||
* | Mark Channel IO buffers for zeroing | lloyd | 2013-04-10 | 3 | -7/+7 |
| | |||||
* | Make the IV length and MAC keylength explicit in the ciphersuite | lloyd | 2013-04-10 | 7 | -128/+164 |
| | | | | Add support for alternate PRFs | ||||
* | Make ciphersuite_list a virtual member of TLS::Policy | lloyd | 2013-04-10 | 4 | -21/+20 |
| | | | | so it can be overridden by applications. | ||||
* | Add erase_chars and replace_chars | lloyd | 2013-04-10 | 2 | -7/+47 |
| | |||||
* | Avoid crash in get_aead if handed a string with no slashes | lloyd | 2013-04-10 | 1 | -0/+3 |
| | |||||
* | Add AEAD_Mode::output_length | lloyd | 2013-04-10 | 4 | -0/+34 |
| | |||||
* | Add a param to Connection_Cipher_State so it knows which direction | lloyd | 2013-04-10 | 3 | -1/+5 |
| | | | | processing is happening. | ||||
* | Lost get_aead decl in revert | lloyd | 2013-04-10 | 1 | -0/+5 |
| | |||||
* | Revert part of 5be6e329324fc8263de56167091754e27305917b, | lloyd | 2013-04-10 | 8 | -14/+15 |
| | | | | | | | AEAD_Mode::start now returns a value again. While not useful for any current modes it allows future flexibility of presenting protoocol-level concepts (eg, OpenPGP encryption) using the AEAD interface. | ||||
* | Change the default PKCS #8 PBKDF runtime from 200 to 300 milliseconds. | lloyd | 2013-04-04 | 4 | -5/+6 |
| | | | | | | | Round PBKDF1 and PBKDF2 time-based iterations to multiples of 10000 instead of 8192. Update the password hashing docs a bit. | ||||
* | Make SHA-256 the default instead of SHA-1 in passhash9 - it's been | lloyd | 2013-04-04 | 2 | -4/+16 |
| | | | | | | | | supported since 1.8.10, so shouldn't be any problems there. Add support for SHA-384 and SHA-512. Check for work factors over 512 and reject for now as too large. | ||||
* | Remove return value of AEAD_Mode::start as it doesn't seem necessary | lloyd | 2013-04-03 | 12 | -42/+89 |
| | | | | | | | and is an extra complication for callers. Replace the get_aead in lookup.h returning a Filter with one in aead.h returning AEAD_Mode. | ||||
* | Add an offset to ignore at the start of the buffer in AEAD processing | lloyd | 2013-03-28 | 7 | -67/+117 |
| | | | | | | which makes more complicated packet building easier to do in-place. For instance now update can take a buffer that contains a header and be told to ignore the header. | ||||
* | Have tls_suite_info.py generate the entire source file | lloyd | 2013-03-28 | 2 | -6/+37 |
| | | | | | | | instead of just the switch. Next step should be having it be run by configure at build time and a copy of the the params included in build-data | ||||
* | Add nonce length checks to EAX and GCM | lloyd | 2013-03-28 | 2 | -0/+6 |
| |