aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/prov
Commit message (Collapse)AuthorAgeFilesLines
* Merge GH #1769 Support TLS signature padding strings in PKCS11 mappingJack Lloyd2018-12-101-0/+10
|\
| * Remove EMSA1 encodings from p11 sign mechanisms mapHannes Rantzsch2018-12-101-5/+0
| |
| * Extend the SignMechanisms map for Signature_Scheme padding stringsHannes Rantzsch2018-12-041-0/+15
| | | | | | | | | | | | This addresses #730. The tls_sign_message callback was unable to handle emsa strings produced as padding strings for TLS::Signature_Scheme, due to inconsistent naming (mostly between EMSA3 and EMSA_PKCS1).
* | Fix a memory leak in OpenSSL ECDHJack Lloyd2018-12-031-3/+5
|/
* Make exceptions easier to translate to error codesJack Lloyd2018-11-2312-75/+92
| | | | | | | | | | | Avoid throwing base Botan::Exception type, as it is difficult to determine what the error is in that case. Add Exception::error_code and Exception::error_type which allows (for error code) more information about the error and (for error type) allows knowing the error type without requiring a sequence of catches. See GH #1742
* Fix type errorJack Lloyd2018-11-211-1/+1
| | | | Closes #1747
* Add typecast_copyJack Lloyd2018-11-171-2/+2
| | | | | Wraps memcpy in the cases where we really are doing a type conversion using memcpy
* Avoid calling memset, memcpy within library codeJack Lloyd2018-11-177-10/+10
| | | | | | | | | Prefer using wrappers in mem_utils for this. Current exception is where memcpy is being used to convert between two different types, since copy_mem requires input and output pointers have the same type. There should be a new function to handle conversion-via-memcpy operation.
* Switch LibreSSL provider to OpenSSL 1.1 APIAlexander Bluhm2018-11-073-6/+6
| | | | | | | LibreSSL 2.7 has added parts of the OpenSSL 1.1 API. Remove the defined(LIBRESSL_VERSION_NUMBER) as it is not necessary anymore. Switch to the newer API unconditionally, older LibreSSL version are not supported.
* move instead of copyrumcajs2018-10-141-1/+1
|
* Resolve a leak in OpenSSL ECDSA verification for old OpenSSLJack Lloyd2018-10-031-5/+13
| | | | | | The code was using the 1.0 API incorrectly and causing a leak. https://github.com/riboseinc/rnp/issues/757
* Remove support for Visual C++ 2013Jack Lloyd2018-10-016-6/+6
| | | | Closes GH #1557
* Fix more MSVC warningsJack Lloyd2018-10-011-7/+31
|
* Fix more MSVC warningsJack Lloyd2018-10-013-16/+39
|
* Move UUID to utils, test it, and fix bugs.Jack Lloyd2018-09-302-106/+1
| | | | Fixes #1695
* Refactor mode tests, and correct bugs foundJack Lloyd2018-09-294-7/+30
| | | | | | | | | | | | | | | | | | | Several problems in CBC found by adding tests - If you set a key, then set a nonce, then set a new key, you could encrypt without setting a new nonce. - It was possible to call CBC finish without setting a nonce, which would crash. - If you had an CBC decryption object, set a key, set a nonce, then reset message state, it should throw because no nonce is set. Instead it would carry on using an all-zero nonce. Disable CommonCrypto with PKCS7 padding as it seems to have some problem that I cannot figure out from the build logs. This work sponsored by Ribose Inc
* Use new CAST-128 specific feature macro hereJack Lloyd2018-09-151-1/+1
|
* Add CommonCrypto block cipher supportJose Pereira2018-09-105-3/+204
|
* Merge GH #1674 Add CommonCrypto cipher modesJack Lloyd2018-09-105-5/+443
|\
| * Add CommonCrypto cipher modes supportJose Pereira2018-09-095-5/+443
| |
* | Add RandomNumberGenerator::accepts_inputJack Lloyd2018-09-062-0/+5
|/
* Merge GH #1667 Add hashing with CommonCryptoJack Lloyd2018-09-043-0/+186
|\
| * Add commoncrypto OS feature so it cannot be enabled on other systemsJack Lloyd2018-09-041-0/+4
| |
| * Indent to match conventions.Jack Lloyd2018-09-042-75/+73
| | | | | | | | | | Move CommonCrypto.h out of our commoncrypto.h since that header is included around the library.
| * Add support for hashing with CommonCryptoJose Pereira2018-09-033-0/+184
| |
* | Remove use of OpenSSL IDEAJack Lloyd2018-09-041-5/+0
|/ | | | | | | | | It appears at least some versions of Ubuntu 16.04 have OpenSSLs which don't define OPENSSL_NO_IDEA and include declarations for EVP_idea_ecb, but the function is not found at link time. Thus enabling OpenSSL engine fails. It is not worth a further fight here.
* Add nonce-set checks for OpenSSL CBC mode implsJack Lloyd2018-08-171-1/+5
|
* Fix for OpenSSLJack Lloyd2018-08-121-0/+4
|
* Add function to return the size of a key agreement outputJack Lloyd2018-08-121-0/+1
| | | | Very useful when using "Raw" DH/ECDH via the FFI API.
* Add functions to get size of PK ciphertext,plaintextJack Lloyd2018-08-103-1/+9
| | | | Needed for https://github.com/strongswan/strongswan/pull/109
* Add PK_Signer::signature_lengthJack Lloyd2018-08-107-11/+29
|
* Fix OpenSSL modesJack Lloyd2018-08-051-1/+12
|
* Support calling Whirlpool in OpenSSLJack Lloyd2018-07-261-0/+5
| | | | Available since 1.0.0, not sure how this was missed.
* Handle another possible OpenSSL error only seen on non-x86_64Jack Lloyd2018-07-171-7/+16
| | | | GH #1627
* Handle EC_R_BAD_SIGNATURE from OpenSSLJack Lloyd2018-05-312-0/+14
|
* Fix problems with failure to build in various configurationsJack Lloyd2018-03-311-0/+3
|
* Add PointGFp::encode as replacement for EC2OSPJack Lloyd2018-03-104-6/+6
| | | | | | Literally every single call to EC2OSP is converting the returned secure_vector to a std::vector. Which makes sense since private points are not really a thing in any protocol I know of.
* Ensure exception types are exported from DLLJack Lloyd2018-03-063-4/+4
| | | | GH #983
* Fix compliation problem in PKCS11Jack Lloyd2018-02-076-1/+6
| | | | | | | | | ./configure.py --amal --mini --enable-modules=pkcs11 would fail to build because the guarded includes of pk_keys.h ended up hiding the declaration entirely. This is really a bug in how the amalgamation is generated but may be hard to fix in the general case.
* Avoid deprecated functions in OpenSSL provider [ci skip]Jack Lloyd2018-02-011-3/+3
|
* Use shared representation of EC_GroupJack Lloyd2018-01-311-5/+5
| | | | Hide CurveGFp with an eye for eventual removal
* Fix a leak in OpenSSL block ciphersJack Lloyd2018-01-281-0/+3
| | | | Introduced when support for 1.1.0 API was added in #1056
* Correct OpenSSL RC4 namingJack Lloyd2017-12-281-1/+1
|
* Fix seek test with OpenSSL RC4Jack Lloyd2017-11-141-1/+1
|
* Remove duplicated includeJack Lloyd2017-11-131-1/+0
|
* Missing include: #include <cstdlib> is needed for std::free.Yuri2017-11-111-0/+1
|
* Add checks that keyed algorithms are actually keyed before useJack Lloyd2017-10-262-3/+17
| | | | | Previously calling update or encrypt without calling set_key first would result in invalid outputs or else crashing.
* Accept SHA-1, SHA1, or SHA-160 equallyJack Lloyd2017-10-132-2/+2
| | | | | | Fixes #1235 [ci skip]
* Add limits.h header for INT_MAXAlon Bar-Lev2017-10-131-0/+1
| | | | | Gentoo-Bug: https://bugs.gentoo.org/633468 Signed-off-by: Alon Bar-Lev <[email protected]>
* Remove needless mutableJack Lloyd2017-10-121-2/+2
| | | | [ci skip]