Releases: Synss/python-mbedtls
Releases · Synss/python-mbedtls
0.13.0 - 2018-10-25
Add TLS support
Both client side and server side are implemented.
- SSLv3 is not supported.
- Session management and SNI callbacks are not implemented.
API Changes
- x509:
caandmax_path_lengthbasic constraints are now
grouped into aBasicConstraintsnamedtuple. It is possible
to leave the basic constraints unset by passing None
toCRT.new(..., basic_constraints=None). - random:
randommodule renamed_random.
Bugfixes
- mpi: GC now actually overwrites keys with random data.
0.12.2 - 2018-09-10
Misc.
- New
propertysyntax from Cython 0.24. - Fixup rendering on Pypi.
- Update required deps.
0.12.1 - 2018-08-27
Merge branch 'develop'
0.12.0 - 2018-08-27
X.509 Parser and writer
- x509: Add accessors to most fields of CRT, CSR, and CRL.
Thex509module can now be used to inspect existing certificates. - x509: The module now offers basic signing and
verification capabilities.
API Changes
- pk:
from_{PEM,DER,buffer}are nowclassmethods to
comply with PEP 543. - x509:
Certificateclass renamedCRT. - x509:
startandendarguments renamednot_beforeand
not_after;md_algargument is nowdigestmod. - x509: Re-order the arguments of the
new()methods. - exceptions: Rename
MbedTLSError->TLSErrorto comply
with PEP 543.
Misc
- pk:
__eq__()now also accepts DER (bytes) or PEM (str) formats. - x509:
__bytes__()returns the certificates in the DER format. - x509:
__str__()now returns a human-readable string.
0.11.1 - 2018-07-04
Update changelog. No change to the code.
0.11.0 - 2018-07-04
Support Diffie-Hellman-Merkle key exchange and secure numbers
- Support Diffie-Hellman-Merkle key exchange.
- MPIs (multi-precision integers) now implement the full
numbers.IntegralAPI. - MPIs are erased from memory upon garbage collection.
- The
mpilibrary is now public (renamed_mpi->mpi).
API Changes
- pk: Methods that were previously returning a long integer now
return an MPI. - exceptions: Rename
_ErrorBase->MbedTLSError. It is now
the only new exception. - exceptions:
mbedtls_strerror()generates the error message.
0.10.0 - 2018-05-07
Support elliptic curve cryptography
- pk/ECC: Elliptic curve digital signature algorithm.
- pk/ECDHServer, pk/ECDHClient: Elliptic curve Diffie-Hellman.
The two classes together support ECDHE (ephemeral) as well.
API Changes
- pk/RSA:
generate()returns the private key. - pk/RSA:
to_DER()andto_PEM()are obsolete and will be removed.
Users should callexport_key()andexport_public_key()instead. - pk/RSA:
has_public()andhas_private()are now private.
Test ifexport_key()andexport_public_key()are truthy or falsy instead. - pk/RSA:
__str__()now returns the private key in PEM format. - pk/RSA:
to_bytes()and__bytes__()now return the private key in DER format.
Bugfix
- pk: Increase the size of the buffer for
sign(),encrypt(),decrypt()
Misc.
- Use const memoryviews supported by Cython 0.28.0.
- pk: pk is now a module instead of a package.
0.9.0 - 2018-03-14
API Changes
- x509/Certificate:
next()returns the next certificate in a chain. - md: Implement block_size property.
Misc.
- Clean up imports.
- Fix tests and packaging.
- Add pxd files to source distribution.
- Change git merge policy to fast-forward on develop.
- Switch to semantic versioning.
0.9 - 2018-03-13
Merge branch 'develop'
0.8 withdrawn - 2018-02-24
Support X.509 Certificates
- x509/Certificate: X.509 certificate writer and parser.
- x509/CSR: X.509 certificate signing request writer and parser.
- x509/CRL: X.509 certificate revocation list and validation.
API Changes
- CipherBase/RSA:
import_()method renamedfrom_buffer()for PEP 543. - CipherBase/RSA:
export(format="PEM")method renamedto_PEM() - CipherBase/RSA:
export(format="DER")method renamedto_DER() - CipherBase/RSA:
from_DER(),from_PEM()to import from DER or PEM. - CipherBase/RSA:
to_bytes()aliasesto_DER()