Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Treat RSASSA-PSS keys like rsaEncryption RSA keys | Tobias Brunner | 2017-11-08 | 1 | -0/+4 |
| | | | | | | | | | | In theory we should treat any parameters and the identifier itself as restriction to only use the key to create signatures accordingly (e.g. only use RSA with PSS padding or even use specific hash algorithms). But that's currently tricky as we'd have to store and pass this information along with our private keys (i.e. use PKCS#8 to store them and change the builder calls to pass along the identifier and parameters). That would require quite some work. | ||||
* | openssl: Add support for signature schemes with parameters | Tobias Brunner | 2017-11-08 | 2 | -47/+34 |
| | |||||
* | certificate: Return signature scheme and parameters from issued_by() method | Tobias Brunner | 2017-11-08 | 3 | -9/+17 |
| | | | | | This also required some include restructuring (avoid including library.h in headers) to avoid unresolvable circular dependencies. | ||||
* | openssl: Add support for verifying RSASSA-PSS signatures | Tobias Brunner | 2017-11-08 | 2 | -3/+142 |
| | |||||
* | openssl: Add support for creating RSASSA-PSS signatures | Tobias Brunner | 2017-11-08 | 2 | -5/+132 |
| | |||||
* | openssl: Add helper to determine EVP_MD from hash_algorithm_t | Tobias Brunner | 2017-11-08 | 2 | -9/+27 |
| | |||||
* | openssl: Add functions to determine missing RSA private key parameters | Tobias Brunner | 2017-11-08 | 1 | -9/+223 |
| | | | | | We only need n, e, and d. The parameters for the Chinese remainder algorithm and even p and q can be determined from these. | ||||
* | private-key: Add optional parameters argument to sign() method | Tobias Brunner | 2017-11-08 | 2 | -2/+2 |
| | |||||
* | public-key: Add optional parameters argument to verify() method | Tobias Brunner | 2017-11-08 | 5 | -5/+7 |
| | |||||
* | openssl: Also load EC keys from an ENGINE | Tobias Brunner | 2017-11-02 | 5 | -155/+168 |
| | |||||
* | openssl: Fix call of X509_CRL_get0_signature() with OpenSSL 1.1.0 | Tobias Brunner | 2017-10-10 | 1 | -3/+3 |
| | | | | | | | The order of arguments in X509_CRL_get0_signature() is not the same as that of X509_get0_signature(). Fixes: 989ba4b6cd16 ("openssl: Update CRL API to OpenSSL 1.1.0") | ||||
* | Define MODP_CUSTOM constructors as variadic functions | Tobias Brunner | 2017-09-18 | 2 | -4/+6 |
| | | | | | | They now match the dh_constructor_t signature. This is a follow up for the changes merged with b668bf3f9ec1 and should fix use of MODP_CUSTOM on Apple's ARM64 platform. | ||||
* | openssl: Add support for delta CRLs | Tobias Brunner | 2017-09-18 | 2 | -19/+74 |
| | |||||
* | certificates: Use shared destructor for x509_cdp_t | Tobias Brunner | 2017-09-18 | 1 | -11/+2 |
| | |||||
* | openssl: Properly handle flags in key usage extension | Tobias Brunner | 2017-06-14 | 1 | -8/+6 |
| | |||||
* | Migrate all enumerators to venumerate() interface change | Tobias Brunner | 2017-05-26 | 2 | -6/+23 |
| | |||||
* | openssl: BoringSSL doesn't provide curve data for ECC Brainpool curves | Tobias Brunner | 2016-12-10 | 1 | -1/+4 |
| | |||||
* | openssl: Fix AES-GCM with BoringSSL | Tobias Brunner | 2016-10-11 | 1 | -3/+3 |
| | | | | | | | | BoringSSL only supports a limited list of (hard-coded) algorithms via EVP_get_cipherbyname(), which does not include AES-GCM. While BoringSSL deprecated these functions they are also supported by OpenSSL (in BoringSSL a completely new interface for AEADs was added, which OpenSSL currently does not support). | ||||
* | openssl: Add a generic private key loader | Tobias Brunner | 2016-10-05 | 7 | -18/+129 |
| | |||||
* | gmp: Support of SHA-3 RSA signatures | Andreas Steffen | 2016-09-22 | 3 | -20/+20 |
| | |||||
* | Fixed some typos, courtesy of codespell | Tobias Brunner | 2016-07-04 | 1 | -1/+1 |
| | |||||
* | openssl: Update GCM/crypter API to OpenSSL 1.1.0 | Tobias Brunner | 2016-06-29 | 1 | -13/+13 |
| | |||||
* | openssl: Update HMAC API to OpenSSL 1.1.0 | Tobias Brunner | 2016-06-29 | 1 | -9/+25 |
| | |||||
* | openssl: Don't use deprecated RAND_pseudo_bytes() | Tobias Brunner | 2016-06-29 | 1 | -7/+0 |
| | |||||
* | openssl: Update PKCS#12 API to OpenSSL 1.1.0 | Tobias Brunner | 2016-06-29 | 1 | -1/+5 |
| | |||||
* | openssl: Update PKCS#7 API to OpenSSL 1.1.0 | Tobias Brunner | 2016-06-29 | 1 | -3/+7 |
| | |||||
* | openssl: Update CRL API to OpenSSL 1.1.0 | Tobias Brunner | 2016-06-29 | 1 | -7/+42 |
| | | | | | | There is currently no way to compare the outer and inner algorithms encoded in a parsed CRL. X509_CRL_verify() does not seem to check that either, though (unlike X509_verify()). | ||||
* | openssl: Update x509 API to OpenSSL 1.1.0 | Tobias Brunner | 2016-06-29 | 1 | -12/+48 |
| | |||||
* | openssl: Update ECDSA API to OpenSSL 1.1.0 | Tobias Brunner | 2016-06-29 | 2 | -5/+24 |
| | |||||
* | openssl: Update RSA API to OpenSSL 1.1.0 | Tobias Brunner | 2016-06-29 | 2 | -16/+52 |
| | |||||
* | openssl: Make some utilities take const BIGNUM pointers | Tobias Brunner | 2016-06-29 | 2 | -4/+6 |
| | |||||
* | openssl: Add macro to define fallback functions for non-opaque OpenSSL versions | Tobias Brunner | 2016-06-29 | 1 | -0/+38 |
| | |||||
* | openssl: Update DH API to OpenSSL 1.1.0 | Tobias Brunner | 2016-06-29 | 1 | -11/+41 |
| | |||||
* | openssl: Update crypter API to OpenSSL 1.1.0 | Tobias Brunner | 2016-06-29 | 1 | -12/+17 |
| | | | | | EVP_CIPHER and EVP_CIPHER_CTX are now opaque types, the getters already existed before. | ||||
* | openssl: Fix mapping from ASN1 to chunk_t with OpenSSL 1.1.0 | Tobias Brunner | 2016-06-29 | 1 | -1/+7 |
| | | | | ASN1_OBJECT is now opaque. | ||||
* | openssl: Update initialization and cleanup for OpenSSL 1.1.0 | Tobias Brunner | 2016-06-29 | 1 | -7/+17 |
| | | | | | | We can't call OPENSSL_cleanup() as that would prevent us from re-initializing the library again (which we use in the Android app, that loads/unloads plugins). | ||||
* | openssl: OpenSSL 1.1.0 is thread-safe so we don't have to setup callbacks | Tobias Brunner | 2016-06-29 | 1 | -0/+13 |
| | |||||
* | android: Use non-aliased cipher identifiers | Tobias Brunner | 2016-06-13 | 1 | -12/+12 |
| | | | | | | Some of these are also understood by BoringSSL. Fixes #1510. | ||||
* | openssl: BoringSSL does not support configuration | Tobias Brunner | 2016-04-15 | 1 | -0/+4 |
| | | | | | The other initialization functions are still defined but many are apparently no-ops (this is also true for the threading initialization). | ||||
* | openssl: The member storing the DH exponent length has been renamed in BoringSSL | Tobias Brunner | 2016-04-15 | 1 | -0/+4 |
| | |||||
* | openssl: Use proper EVP macro to determine size of a hash | Tobias Brunner | 2016-04-15 | 2 | -2/+2 |
| | |||||
* | Use standard unsigned integer types | Andreas Steffen | 2016-03-24 | 5 | -6/+6 |
| | |||||
* | 128 bit default security strength for IKE and ESP algorithms | Andreas Steffen | 2015-12-17 | 1 | -19/+19 |
| | | | | | | | | | | | | | | | | | The default ESP cipher suite is now AES_CBC-128/HMAC_SHA2_256_128 and requires SHA-2 HMAC support in the Linux kernel (correctly implemented since 2.6.33). The default IKE cipher suite is now AES_CBC-128/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/ECP_256 if the openssl plugin is loaded or AES_CBC-128/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/MODP_3072 if ECC is not available. The use of the SHA-1 hash algorithm and the MODP_2048 DH group has been deprecated and ENCR_CHACHA20_POLY1305 has been added to the default IKE AEAD algorithms. | ||||
* | 128 bit default security strength requires 3072 bit prime DH group | Andreas Steffen | 2015-12-14 | 1 | -4/+4 |
| | |||||
* | openssl: Explicitly include openssl/bn.h | Tobias Brunner | 2015-09-16 | 5 | -0/+5 |
| | | | | | | | | If OpenSSL is compiled with OPENSSL_NO_DEPRECATED some of the headers we include don't include openssl/bn.h anymore. Therefore, we have to explicitly include it ourselves where we use BN_* functions. Fixes #1113. | ||||
* | openssl: Don't refer to EVP_des_ecb() if OpenSSL is built without DES support | Tobias Brunner | 2015-04-17 | 1 | -0/+2 |
| | | | | | | While DES-ECB is not registered by the plugin in this case (so the function will never actually be called), the compiler still warns about the implicitly declared function. | ||||
* | openssl: Support setting ECDH private values | Martin Willi | 2015-04-15 | 1 | -0/+44 |
| | |||||
* | openssl: Support setting private Diffie-Hellman values | Martin Willi | 2015-04-15 | 1 | -0/+13 |
| | |||||
* | utils: Use chunk_equals_const() for all cryptographic purposes | Martin Willi | 2015-04-14 | 2 | -2/+2 |
| | |||||
* | openssl: Don't pre-initialize OpenSSL HMAC with an empty key | Martin Willi | 2015-04-13 | 1 | -6/+16 |
| | | | | | | | | | | With OpenSSL commit 929b0d70c19f60227f89fac63f22a21f21950823 setting an empty key fails if no previous key has been set on that HMAC. In 9138f49e we explicitly added the check we remove now, as HMAC_Update() might crash if HMAC_Init_ex() has not been called yet. To avoid that, we set and check a flag locally to let any get_mac() call fail if set_key() has not yet been called. |