summaryrefslogtreecommitdiff
path: root/src/cryptography
Commit message (Collapse)AuthorAgeFilesLines
* Open master for 2.1 (#3788)Alex Gaynor2017-07-171-1/+1
|
* 2.0 version bump and changelog (#3787)2.0Paul Kehrer2017-07-171-1/+1
| | | | | | * 2.0 version bump and changelog * dates are just an illusion
* Remove DH generator size constraint (#3364)mtury2017-07-171-2/+2
| | | | | | * Remove DH generator size constraint * Check that g > 1
* add AESGCM AEAD support (#3785)Paul Kehrer2017-07-172-3/+47
| | | | | | | | * add AESGCM AEAD support * remove stray newline * move AESGCM docs above CCM
* move tag_length to the AESCCM constructor (#3783)Paul Kehrer2017-07-161-14/+16
| | | | | | * move tag_length to the AESCCM constructor * review feedback
* AESCCM support (#3700)Paul Kehrer2017-07-162-9/+110
|
* allow p % 24 == 23 when generator == 2 in DH_check (#3768)Paul Kehrer2017-07-091-2/+15
| | | | | | | | | | * allow p % 24 == 23 when generator == 2 in DH_check * short url * update and expand comments * even better language!
* use an instance in aead_cipher_supported (#3772)Paul Kehrer2017-07-093-16/+13
| | | | | | | | * use an instance in aead_cipher_supported * test for chacha20poly1305 compatibility via init exception * pep8
* Fixed #3747 -- cache extensions on x.509 objects (#3769)Alex Gaynor2017-07-082-4/+18
| | | | | | | | | | * Fixed #3747 -- cache extensions on x.509 objects * be kind to cpython, save a dict lookup * flake8 * changelog
* remove egd (#3771)Paul Kehrer2017-07-081-9/+0
| | | | | | | | | | | * remove egd * oops * keep Cryptography_HAS_EGD for compat just in case This shouldn't really be necessary but maybe we can fully remove it in 2018 or 2019...
* remove cryptodev (#3770)Paul Kehrer2017-07-081-7/+0
| | | | | | * remove cryptodev * oops
* Attempt to use coverage to quantify how many of the CONDITIONAL_NAMES we ↵Alex Gaynor2017-07-082-65/+185
| | | | | | | | | | | | | | | | | | really use (#3763) * Attempt to use coverage to quantify how many of the CONDITIONAL_NAMES we really use * rewrite file to improve coverage * Write it this way so we can use line coverage * lost this one :-( * fix comment and flake8 * update the docs as well * flake8
* Remove conditionals we never use. (#3766)Alex Gaynor2017-07-081-4/+0
| | | | | | | | * Remove conditionals we never use. Refs #3763 * put this back
* stop using backend methods for chacha (#3765)Paul Kehrer2017-07-083-22/+20
|
* change chacha20poly1305_supported to aead_cipher_supported (#3762)Paul Kehrer2017-07-082-2/+6
|
* make the aead work a bit more generic (#3761)Paul Kehrer2017-07-082-17/+27
|
* don't parse SCTs on older openssl (#3749)Paul Kehrer2017-07-042-9/+24
| | | | | | | | * don't parse SCTs on older openssl * use two diff extension parsers because why not * review feedback
* Fixes #3745 -- add the any EKU EKU (#3750)Alex Gaynor2017-07-031-0/+1
| | | | | | | | | | * Fixes #3745 -- add the any EKU EKU * docs * whitespace * versionadded
* disallow MD5 in CertificateBuilder and CertificateSigningRequestBuilder (#3738)Paul Kehrer2017-06-301-0/+24
| | | | | | | | | | | | * disallow MD5 in CertificateBuilder and CertificateSigningRequestBuilder * only error on ECDSA and DSA lots of duplication in tests here, bleh * remove changelog entry, also handle this for CRLBuilder * pep8
* Fixed a memory leak in EC private numbers (#3741)Alex Gaynor2017-06-301-2/+4
|
* Fix for leaking memory in EllipticCurvePublicNumbers.public_key() (#3732)Alex Gaynor2017-06-281-3/+3
| | | | | | | | | | * Test for leaking memory in EllipticCurvePublicNumbers.public_key() * Fix the memory leak As far as I can tell, from spelunking in the OpenSSL source (as you do), EC_KEY_set_public_key_affine_coordinates doesn't take ownership of "x" or "y". https://github.com/openssl/openssl/blob/master/crypto/ec/ecp_smpl.c#L362-L420 is the place in the source I found that actually uses "x" and "y". * Unused imports
* remove python 3.3 from CI (#3729)Paul Kehrer2017-06-261-6/+0
| | | | | | * remove python 3.3 from CI * remove 3.3 everywhere, not just from CI
* bind DTLS 1.2 methods (#3725)Paul Kehrer2017-06-261-0/+5
| | | | | | * bind DTLS 1.2 methods * remove version specific dtls bindings, rename sentinel value
* Reorganize DHParameters and DHPublicKey *WithSerialization (#3722)Paul Kehrer2017-06-241-6/+6
| | | | | | | | * Reorganize DHParameters and DHPublicKey *WithSerialization fixes #3720 * fix up the changelog
* add missing methods to DH interfaces (#3719)Paul Kehrer2017-06-241-0/+18
|
* Dh parameters serialization (#3504)Aviv Palivoda2017-06-244-0/+109
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Support DH parameter serizalization - no X9.42 * Support X9.42 serialization - DER not working * Fix dhp_rfc5114_2.der Changing the DER parameters serialization after the fix in openssl commit a292c9f1b835 * DH parameters X9.42 DER serialization fixed * fix _skip_dhx_unsupported * document DH parameter_bytes * PEP8 fixes * Document load_pem_parameters * Document load_der_parameters * document ParameterFormat * Increase test coverage * Increase test covrage * Remove unneeded check * Fix typo * Fix error in load_der_parameters * Add load_pem_parameters and load_der_parameters to interfaces * CR fixes * Removed unverified phrase * Update version to 2.0 * Fix pep8 * Rename ParameterFormat.ASN1 to ParameterFormat.DHParameter * link pkcs3 * Add new line at end of file to serialization.rst * Rename DHparameters to PKCS3 * doc CR fix
* disallow empty string for NameAttribute (#3711)Paul Kehrer2017-06-191-0/+3
|
* X25519 Support (#3686)Paul Kehrer2017-06-093-0/+179
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * early days * sort of working * more things * remove private_bytes * public bytes, interface fix * load public keys * x25519 support basically done now * private_bytes is gone * some reminders * doctest this too * remove a thing that doesn't matter * x25519 supported checks * libressl has the NID, but a different API, so check for OpenSSL * pep8 * add missing coverage * update to use reasons * expand test a little * add changelog entry * review feedback
* ChaCha20Poly1305 support (#3680)Paul Kehrer2017-06-084-0/+177
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * chacha20poly1305 support * add chacha20poly1305 backend and some fixes * refactor * forgot to remove this * pep8 * review feedback and a lot of type/value checking * review feedback * raise unsupportedalgorithm when creating a ChaCha20Poly1305 object if it's not supported. * switch to ciphertext||tag * typo * remove a branch we don't need * review feedback * decrypts is *also* a word * use reasons
* bind even more evp (#3684)Paul Kehrer2017-06-061-1/+2
| | | | | | * bind even more evp * oops
* bind EVP_PKEY_get1_tls_encodedpoint because X25519 (#3682)Paul Kehrer2017-06-051-0/+3
|
* bind EVP_CTRL_AEAD even when on < 1.1.0 (#3679)Paul Kehrer2017-06-041-4/+4
|
* Refs #3461 -- parse SCTs from x.509 extension (#3480)Alex Gaynor2017-06-044-3/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Stub API for SCTs, feedback wanted * grr, flake8 * finish up the __init__ * Initial implementation and tests * write a test. it fails because computer * get the tests passing and fix some TODOs * changelog entry * This can go now * Put a skip in this test * grump * Removed unreachable code * moved changelog to the correct section * Use the deocrator for expressing requirements * This needs f for the right entry_type * coverage * syntax error * tests for coverage * better sct eq tests * docs * technically correct, the most useless kind of correct * typo and more details * bug * drop __eq__
* deprecate signer/verifier on asymmetric keys (#3663)Paul Kehrer2017-06-034-3/+24
| | | | | | * deprecate signer/verifier on asymmetric keys * review feedback, switch deprecated_call to work around a bug
* make signature and verification contexts error better re: prehashed (#3658)Paul Kehrer2017-06-024-3/+17
| | | | | | * make signature and verification contexts error better re: prehashed * code review feedback
* Post release tasks to open master for 2.0 (#3644)Alex Gaynor2017-05-292-2/+2
|
* 1.9 version bump and changelog (#3641)1.9Paul Kehrer2017-05-291-1/+1
|
* Enlarge _oid2txt buffer to handle larger OIDs (#3612)Fraser Tweedale2017-05-291-0/+14
| | | | | | | | | The OpenSSL manual recommends a buffer size of 80 for OBJ_oid2txt: https://www.openssl.org/docs/crypto/OBJ_nid2ln.html#return_values. But OIDs longer than this occur in real life (e.g. Active Directory makes some very long OIDs). If the length of the stringified OID exceeds the buffer size, allocate a new buffer that is big enough to hold the stringified OID, and re-do the conversion into the new buffer.
* move MACContext to mac.py and eliminate interfaces.py (#3631)Paul Kehrer2017-05-296-8/+25
| | | | | | | | | | | | | * move MACContext to mac.py and eliminate interfaces.py finally * improve title * re-add and deprecate interfaces.MACContext * use pytest.warns instead of deprecated_call The pytest docs insist that deprecation warnings are handled differently and that you should use deprecated_call, but this works so okay then
* Simplify int to hex string conversion (#3628)Alex Gaynor2017-05-281-3/+3
|
* fix libressl error/refactor some error handling (#3609)Paul Kehrer2017-05-264-44/+54
| | | | | | | | | | | | | | | | | | | | | | | * add libre so I can see the error * add the libre error needed and refactor error handling a bit We were historically matching on lib + func + reason, but func is somewhat unstable so now we match on lib + reason only. Of course, in this case libressl changed both lib and reason so it wouldn't have mattered. All error handling from the error queue in openssl is an illusion * fix a typo, probably an unneeded branch * review feedback * refactor tests to support libressl insert additional rant about libre here, although admittedly these tests were assuming stability where openssl itself guarantees none * better assert, fix flake8
* Document when OpenSSL changed its default (#3611)Alex Gaynor2017-05-251-1/+1
| | | | | | | | | | * Figure out when this came into existance by deleting it * Revert "Figure out when this came into existance by deleting it" This reverts commit 2fb9b8e104742bfa12eb5feedccebacfc23c66bb. * Clearly document when this became true
* jurisdictionCountryName also must be PrintableString (#3516)Alex Gaynor2017-05-251-2/+5
| | | | | | | | | | | | | | * jurisdictionCountryName also must be PrintableString * flake8 + citation * Write a test, which fails. If my analysis is correct, this is blocked on: https://github.com/openssl/openssl/pull/3284 * This is only true on 1.1.0 * clearly express the version requirement
* Put the exchange method on the correct interface (#3591)Alex Gaynor2017-05-241-7/+7
| | | | | | * Put the exchange method on the correct interface * fixed links in docs
* add convenience methods for key_size on EC{Public,Private}Key (#3587)Paul Kehrer2017-05-232-1/+21
|
* Simplify the update (#3586)Alex Gaynor2017-05-231-7/+3
| | | | | | * Simplify the update * wtf, cant reproduce issue
* Bump the minimum PyPy/cffi version and simplify as a result (#3585)Alex Gaynor2017-05-231-27/+7
| | | | | | | | * Bump the minimum PyPy/cffi version and simplify as a result * unused imports * grumble, fix
* let's deprecate some hashes we should never have exposed (#3584)Paul Kehrer2017-05-231-0/+16
|
* Fix deprecation warning (#3574)Alex Gaynor2017-05-231-1/+5
|
* Deprecate Python 3.3 support, with the intention of being removed in the ↵Alex Gaynor2017-05-221-0/+6
| | | | | | | | next release (#3566) * Deprecate Python 3.3 support, with the intention of being removed in the next release * whoops