Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | openssl: Return the proper IV length for OpenSSL crypters | Tobias Brunner | 2015-02-23 | 1 | -1/+1 | |
| | | | | | | | For instance, the NULL cipher has a block size of 1 but an IV length of 0. Fixes #854. | |||||
* | x509: Fix public key reference leak if authority key identifier does not match | Martin Willi | 2015-02-06 | 1 | -10/+12 | |
| | ||||||
* | unit-tests: Adapted to coverity fixes | Andreas Steffen | 2014-12-23 | 1 | -9/+12 | |
| | ||||||
* | Fixed bad bit shift and sign extension errors | Andreas Steffen | 2014-12-23 | 3 | -4/+14 | |
| | ||||||
* | bliss: Remove unnecessary cast to double | Tobias Brunner | 2014-12-23 | 1 | -1/+1 | |
| | | | | | | Coverity is still not happy when the result of an integer division is assigned to a double (without e.g. casting the result to an int first to indicate the intent). The shift should avoid this issue. | |||||
* | bliss: Log type if unsupported | Tobias Brunner | 2014-12-23 | 1 | -1/+1 | |
| | ||||||
* | bliss: Make sure sampler exists after checking for it earlier | Tobias Brunner | 2014-12-23 | 1 | -2/+2 | |
| | ||||||
* | crypto: Define MODP_CUSTOM outside of IKE DH range | Tobias Brunner | 2014-12-23 | 6 | -6/+6 | |
| | | | | | | | | | Before this fix it was possible to crash charon with an IKE_SA_INIT message containing a KE payload with DH group MODP_CUSTOM(1025). Defining MODP_CUSTOM outside of the two byte IKE DH identifier range prevents it from getting negotiated. Fixes CVE-2014-9221. | |||||
* | bliss: Fix Doxygen comments | Tobias Brunner | 2014-12-15 | 2 | -6/+6 | |
| | ||||||
* | Also initialize s_sign | Andreas Steffen | 2014-12-12 | 1 | -1/+1 | |
| | ||||||
* | pem: Handle BER indefinite length encoding as binary ASN.1 | Martin Willi | 2014-12-12 | 1 | -1/+24 | |
| | | | | | | While our ASN.1 parser can't handle BER indefinite length encoding, the OpenSSL backend can. Some PKCS#12 containers get encoded this way, so we should support loading such files in the pem plugin. | |||||
* | Cache only support fingerprint types | Andreas Steffen | 2014-12-12 | 1 | -2/+4 | |
| | ||||||
* | Fix ambiguities and gcc compiler warning | Andreas Steffen | 2014-12-12 | 1 | -3/+3 | |
| | ||||||
* | Use bitspender->get_bytes() method in ntru_trits | Andreas Steffen | 2014-12-12 | 1 | -26/+14 | |
| | ||||||
* | Use Huffman code in BLISS signature | Andreas Steffen | 2014-12-12 | 7 | -38/+296 | |
| | ||||||
* | Include design parameters in generated Huffman code files | Andreas Steffen | 2014-12-12 | 1 | -20/+31 | |
| | ||||||
* | bliss: Fix monolithic build | Tobias Brunner | 2014-12-12 | 11 | -93/+114 | |
| | | | | | | | | | | | This requires moving test files so that the Makefile for the tests can be included after building libstrongswan, which requires the plugin when building monolithically. Due to this a static helper library is required as directly referring to object files (or source files) is not possible. It's also necessary to avoid any link-time dependency on libstrongswan in bliss_huffman, to avoid circular dependencies (bliss_huffman -> libstrongswan -> bliss -> bliss_huffman). | |||||
* | bliss: Fix compilation warning with certain GCC versions | Tobias Brunner | 2014-12-12 | 1 | -1/+2 | |
| | | | | | | Theoretically, n could be zero and these variables are then used uninitialized. Older GCC versions warn about this and on Travis where we compile with -Werror this causes the tests to fail. | |||||
* | Pack private key arrays | Andreas Steffen | 2014-12-10 | 1 | -17/+75 | |
| | ||||||
* | Automatic generation of optimized Huffman codes | Andreas Steffen | 2014-12-09 | 7 | -0/+559 | |
| | ||||||
* | unit-tests: added bliss_sampler test | Andreas Steffen | 2014-12-09 | 3 | -0/+99 | |
| | ||||||
* | Expanded bliss_bitpacker to 32 bits | Andreas Steffen | 2014-12-09 | 5 | -41/+39 | |
| | ||||||
* | Implemented full BLISS support for IKEv2 public key authentication and the ↵ | Andreas Steffen | 2014-11-29 | 6 | -7/+15 | |
| | | | | pki tool | |||||
* | Applied bit packing to BLISS public key | Andreas Steffen | 2014-11-29 | 5 | -55/+68 | |
| | ||||||
* | Wipe BLISS private key memory | Andreas Steffen | 2014-11-29 | 1 | -2/+8 | |
| | ||||||
* | Created bliss_bitpacker class to encode BLISS signatures | Andreas Steffen | 2014-11-29 | 8 | -46/+464 | |
| | ||||||
* | Skip the unused bits field of the ASN.1 BIT STRING encoding | Andreas Steffen | 2014-11-29 | 1 | -1/+1 | |
| | ||||||
* | Store NTT A of BLISS public key a | Andreas Steffen | 2014-11-29 | 2 | -28/+24 | |
| | ||||||
* | unit-tests: created bliss_sign test suite | Andreas Steffen | 2014-11-29 | 5 | -1/+91 | |
| | ||||||
* | Finished BLISS signature generation | Andreas Steffen | 2014-11-29 | 12 | -157/+1170 | |
| | ||||||
* | Implemented Gaussian rejection sampler | Andreas Steffen | 2014-11-29 | 6 | -16/+496 | |
| | | | | | The bliss_sampler class uses the mgf1_bitspender as a pseudo-random source. | |||||
* | Implemented get_byte() method for mgf1_bitspender class | Andreas Steffen | 2014-11-29 | 1 | -2/+1 | |
| | | | | | | The new get_byte() method returns a pseudo-random byte at a time. Changed the get_bits() interface to the same interface as get_byte(). Updated the mgf1 unit-tests accordingly. | |||||
* | Added support for BLISS-III | Andreas Steffen | 2014-11-29 | 1 | -2/+17 | |
| | ||||||
* | Started implementing BLISS signature generation | Andreas Steffen | 2014-11-29 | 3 | -15/+9 | |
| | ||||||
* | Store and parse BLISS private and public keys in DER and PEM format | Andreas Steffen | 2014-11-29 | 5 | -27/+419 | |
| | | | | | | | | Additionally generate SHA-1 fingerprints of raw BLISS subjectPublicKey and subjectPublicKeyInfo objects. Some basic functions used by the bliss_public_key class are shared with the bliss_private_key class. | |||||
* | Use mgf1_bitspender in ntru_poly_create_from_seed | Andreas Steffen | 2014-11-29 | 2 | -52/+16 | |
| | ||||||
* | Use mgf1_bitspender to generate random secret key | Andreas Steffen | 2014-11-29 | 1 | -280/+226 | |
| | ||||||
* | unit-tests: Added bliss_fft test suite | Andreas Steffen | 2014-11-29 | 5 | -0/+193 | |
| | ||||||
* | Moved mgf1 class to libstrongswan/crypto/mgf1 | Andreas Steffen | 2014-11-29 | 5 | -267/+7 | |
| | ||||||
* | Defined BLISS I and IV parameter sets | Andreas Steffen | 2014-11-29 | 4 | -19/+365 | |
| | ||||||
* | Implemented Number Theoretic Transform using the FFT algorithm | Andreas Steffen | 2014-11-29 | 8 | -3/+869 | |
| | | | | | | By pre-multiplying the input arrays with a linear phase the fast multiplication via FFT and inverse FFT computes a negative wrapped convolution corresponding to a modulus of x^n+1. | |||||
* | Created framework for BLISS post-quantum signature algorithm | Andreas Steffen | 2014-11-29 | 7 | -0/+625 | |
| | ||||||
* | constraints: Use a more specific FQDN/email name constraint matching | Martin Willi | 2014-10-30 | 1 | -22/+73 | |
| | | | | | | | While RFC 5280 is not very specific about the matching rules of subjectAltNames, it has some examples how to match email and FQDN constraints. We try to follow these examples, and restrict DNS names to subdomain matching and email to full email, host or domain matching. | |||||
* | constraints: Don't reject certificates with invalid certificate policies | Martin Willi | 2014-10-30 | 1 | -25/+97 | |
| | | | | | | | | | | | | Instead of rejecting the certificate completely if a certificate has a policy OID that is actually not allowed by the issuer CA, we accept it. However, the certificate policy itself is still considered invalid, and is not returned in the auth config resulting from trust chain operations. A user must make sure to rely on the returned auth config certificate policies instead of the policies contained in the certificate; even if the certificate is valid, the policy OID itself in the certificate are not to be trusted anymore. | |||||
* | curl: For SSL features, depend on thread-safety provided by our crypto plugins | Martin Willi | 2014-09-24 | 3 | -7/+57 | |
| | | | | | | | | | To use SSL in curl, we need to initialize the SSL library in a thread-safe manner and provide the appropriate callbacks. As we already do that in our crypto plugins using these libraries, we depend on these features. This implies that we need the same plugin enabled (openssl, gcrypt) as the curl backend is configured to use to fetch from HTTPS URIs. | |||||
* | curl: Dynamically query supported protocols and register appropriate features | Martin Willi | 2014-09-24 | 1 | -10/+64 | |
| | ||||||
* | curl: Try to initialize with SSL support to handle https:// URIs | Martin Willi | 2014-09-24 | 1 | -1/+6 | |
| | | | | If initialization fails, we fall back to the old behavior. | |||||
* | plugin-loader: Support a reload() callback for static features | Martin Willi | 2014-09-22 | 2 | -4/+35 | |
| | ||||||
* | curl: Log error code too | Tobias Brunner | 2014-09-09 | 1 | -2/+5 | |
| | | | | It seems libcurl does not always return an error message. | |||||
* | openssl: Report correct key length for EC keys when not using NIST curves | Tobias Brunner | 2014-09-02 | 2 | -22/+2 | |
| | | | | Fixes #688. |