Commit graph

7207 commits

Author SHA1 Message Date
Paul Kehrer
4eaa511c62 2.2.1 version bump (#4166) 2018-03-20 19:17:50 -04:00
Paul Kehrer
be31b36152 Backport the AES KWP fix (#4164)
* fix bug with n % 8 length wrapping on AESKWP (#4160)

* fix bug with n % 8 length wrapping on AESKWP

* review feedback

* add changelog
2018-03-20 18:42:18 -04:00
Alex Gaynor
b17f0527a0 Backport Revert "don't allow GeneralNames to be an empty list (#4128)" (#4161) (#4163)
* Revert "don't allow GeneralNames to be an empty list (#4128)" (#4161)

This breaks the urllib3 tests, as well as several in-the-wild certs

This reverts commit 388d1bd3e9.

* changelog

* Don't reference undocumented class
2018-03-20 17:22:23 -04:00
Alex Gaynor
3eacd87004 add botan's AESKWP vectors reformatted for our NIST loader (#4159) (#4162) 2018-03-20 13:26:12 -04:00
Paul Kehrer
4601fbab95 2.2 release! (#4150)
* 2.2 release!

* also change versions
2018-03-18 22:45:30 -04:00
Paul Kehrer
cd6cf4aa75 implement AES KW with padding (RFC 5649) (#3880)
* implement AES KW with padding (RFC 5649)

fixes #3791

* oops, 2.2

* make sure this is the right valueerror

* more match

* make key padding easier to read

* review feedback

* review feedback
2018-03-18 22:06:13 -04:00
Paul Kehrer
4a41e540b2 i hate groovy and i hate hard to test scripts (#4149) 2018-03-18 16:30:35 -04:00
Paul Kehrer
8aa1eb385c change our manylinux1 and macos wheel builders to build limited api (#4113)
* change our manylinux1 and macos wheel builders to build limited api

pip does not currently support the--py-limited-api cli flag that wheel
uses so we have to switch to downloading and then building via
setup.py bdist_wheel for now.
However, we can get rid of everything but the py34 builder on
mac/linux/linux32, saving us 6 wheels now (and soon 9 with the release
of python 3.7)

* some newlines

* review feedback
2018-03-18 15:02:49 -04:00
Denis Gladkikh
05b34433fc Update authors (#4148) 2018-03-18 12:08:17 -04:00
Paul Kehrer
47a66f19bd Allow DSA q=224 (#4147)
* load Q=224 vectors

* DSA parameters should support 224 for q length

* oxford comma
2018-03-18 10:12:14 -04:00
Paul Kehrer
17c8f126c7 Brainpool curves (#4129)
* added brainpool ec-curves key_length >= 256bit

* limit brainpool curves to the set that appear required + docs

* oops

* typos all around me

* add brainpool ECDH kex tests

* switch to using rfc 7027 vectors

* review feedback

* empty commits are the best
2018-03-15 13:35:10 -04:00
Paul Kehrer
2250aafd6f brainpool vectors from rfc 7027 (#4143) 2018-03-15 11:59:22 -04:00
Paul Kehrer
a522f9cc0e bump travis to latest pypy version (#4134) 2018-03-05 22:00:20 -05:00
Paul Kehrer
e3d2fc1727 install only the minimum required to build our docs for rtd (#4133)
* install only the minimum required to build our docs for rtd

We don't need to install sphinxcontrib-spelling or doc8 in rtd.

* move another package
2018-03-05 19:50:10 -05:00
Jeremy Lainé
ef8f066d5a Check all .so's are noexecstack (#3994) (#4130)
The ouput of execstack -q is one line per file, either:

- starting with a '-' (dash) if the file does not require an executable stack
- start with an 'X' if the file *does* require an executable stack

We check there are no files which require an executable stack.
2018-03-05 17:47:44 -04:00
Dominic Chen
aa877e1a66 add X509_CRL_dup function (#4127) 2018-03-05 17:17:17 -04:00
Paul Kehrer
37c6a80141 remove cms bindings we don't use (#4131) 2018-03-05 13:15:31 -05:00
Jeremy Lainé
d87f80619b Document motivation for a KDF after key-exchange (#4005) (#4124) 2018-03-05 14:05:38 -04:00
David Benjamin
62303cc9dc Remove unused bindings from asn1.py (#4082)
* Remove unused bindings from asn1.py

This also includes a couple removals from x509v3.py which also reference
ASN1_ITEM_EXP.

* re-add int ASN1_STRING_set_default_mask_asc(char *);

* also re-add static const int MBSTRING_UTF8
2018-03-05 12:02:02 -05:00
Paul Kehrer
388d1bd3e9 don't allow GeneralNames to be an empty list (#4128)
* don't allow GeneralNames to be an empty list

* flake8
2018-03-05 10:36:08 -05:00
Paul Kehrer
96787f954b test acme and also josepy as a downstream in jenkins (#4123) 2018-02-25 10:18:03 -05:00
Jeremy Lainé
8374206d4d Add certbot to downstream tests (#3740) (#4120) 2018-02-25 11:22:37 +08:00
Tux
404496aeb7 Expose BN_rand and BN_rand_range (#4118) 2018-02-23 15:57:54 -05:00
Paul Kehrer
2c1277936b switch RSA OAEP examples to use SHA256 (#4117) 2018-02-22 09:44:46 -05:00
Alex Gaynor
98cba4142c Reorder this to reflect Alex's Opinions On What Is Good (#4115) 2018-02-22 10:25:54 +08:00
Paul Kehrer
7254db5d16 add aws-encryption-sdk as a downstream (#4106)
they're probably important, let's not break them.
2018-02-13 11:07:14 -05:00
Alex Gaynor
9402044dae fixed docs with latest sphinx (#4107) 2018-02-13 19:31:05 +04:00
Jeremy Lainé
a36579b6e4 Add binding for SSL_get_certificate (#4100)
Currently we only expose SSL_get_peer_certificate, which allows you
to retrieve the remote party's certificate. This adds the symetrical
binding to retrieve the local party's certificate.

The motivation for this additional binding is to make it possible to
query the local certificate regardless of the method which was used to
load the certificate into the SSL connection (from a file, from an
in-memory object). An example where this is useful is when negotiating
a DTLS-SRTP connection, the fingerprint of the local certificate needs
to be communicated to the remote party out-of-band via SDP.

This binding can be exposed in pyopenssl as Connection.get_certificate().
2018-02-06 20:11:03 +08:00
Jeremy Lainé
b71d5f5c55 Add myself to AUTHORS.rst (#4101) 2018-02-06 20:10:17 +08:00
Jeremy Lainé
c58d019352 Add bindings for SRTP support (#4099) 2018-02-06 07:37:34 +08:00
Paul Kehrer
d6ad9fd2e0 memory leak changelog (#4097) 2018-02-05 03:47:21 -05:00
Paul Kehrer
1fdf29e6e0 fix a memory leak in ec derive_private_key (#4096)
* fix a memory leak in ec derive_private_key

fixes #4095

* pep8!
2018-02-04 09:24:07 -05:00
gesslerpd
fc2ad04b46 Add bindings for DTLS support (#4089)
* + more DTLS bindings

* + BIO_CTRL_DGRAM*

* + read ahead functions

* rm BIO_CTRL_DGRAM_SET_PEEK_MODE

* rm BIO_CTRL_DGRAM_SET_DONT_FRAG

* + link mtu conditional logic

* rm some BIO_CTRL_DGRAM* bindings
2018-01-23 11:23:53 -06:00
gesslerpd
47d96e39e9 Add bindings for PSK (#4084)
* + PSK function bindings

* + PSK conditional

* trigger CI

* trigger CI
2018-01-18 11:37:47 -06:00
gesslerpd
5e866f7191 Add bindings for SSL_OP_NO_DTLS* (#4079)
* + bindings for SSL_OP_NO_DTLS*

* + conditional for not HAS_GENERIC_DTLS_METHOD

* flag SSL_OP_NO_DTLS* for unsupported deletion
2018-01-16 09:07:23 -06:00
David Benjamin
2beccafe22 Use the real X509_REVOKED_dup when available. (#4080)
This avoids reaching into the ASN1_ITEM mess if not necessary.
2018-01-12 15:32:29 -05:00
Paul Kehrer
ba6798161c temporarily pin cffi to avoid bug related to virtualenv (#4083)
* temporarily pin cffi to avoid bug related to virtualenv

* right, don't duplicate the name
2018-01-12 14:16:46 -05:00
Alex Gaynor
d2c12683d3 Fixes #4076 - simplify the implementation of int_from_bytes on python2 (#4077)
* Fixes #4076 - simplify the implementation of int_from_bytes on python2

* whitespace

* Added a test
2018-01-10 08:17:09 -05:00
David Tucker
038146fdc7 Add a Versioning section to the API stability docs (#4027) 2018-01-07 10:32:36 -06:00
Alex Gaynor
15cc998c1f Fixed import path in go script (#4075) 2018-01-06 18:39:57 -06:00
Paul Kehrer
858a429d88 The HKDF limit is actually 255 * digest_length_in_bytes (#4037)
* The HKDF limit is actually 255 * digest_length_in_bytes

Previously we had a bug where we divided digest_size by 8...but
HashAlgorithm.digest_size is already in bytes.

* test longer output

* changelog
2018-01-06 18:55:27 -05:00
Paul Kehrer
323f2ad66b add 1200 byte HKDF test vector and a generator/verifier for it (#4074)
* add 1200 byte HKDF test vector and a generator/verifier for it

* exit non-zero when failing

* ugh
2018-01-06 16:00:28 -05:00
Alex Gaynor
f8327a977f Drop conda workaround from installation docs (#4073)
I don't think it's relevant anymore
2018-01-06 10:07:40 -06:00
Tux
110398ee2e Use BN_clear_free in places where BN_free is being used (#4072)
* Expose BN_clear_free

* Use BN_clear_free in test_int_to_bn

* Use BN_clear_free in lieu of BN_free

* Use BN_free on public values
2018-01-05 19:53:45 -05:00
Tux
fbb0c12c87 Expose BN_clear_free in the OpenSSL backend (#4071)
* Expose BN_clear_free

* Use BN_clear_free in test_int_to_bn
2018-01-05 17:44:54 -05:00
Paul Kehrer
bade58f156 just a quick confirmation that it really is an x25519 evp key (#4070)
* just a quick confirmation that it really is an x25519 evp key

* openssl assert. take that python -O
2018-01-05 10:58:35 -05:00
Paul Kehrer
754c693bc7 DH interfaces existed in 0.9 but we didn't implement until 1.7 (#4068)
* DH interfaces existed in 0.9 but we didn't implement until 1.7

* sigh empty
2018-01-05 07:51:39 -05:00
Alex Gaynor
c0c70fb78d grammar nit, use a comma here (#4066) 2017-12-29 10:09:30 -06:00
Alex Gaynor
0ed80b467d Fixed #4039 -- added a python_requires to setup.py (#4064) 2017-12-26 12:04:31 -06:00
Alex Gaynor
2590556611 Fixed #4006 -- bind functions for dealing with sigalgs (#4063)
* Fixed #4006 -- bind functions for dealing with sigalgs

* oops
2017-12-26 10:36:40 -06:00