Oscrypto

Latest version: v1.3.0

Safety actively analyzes 619477 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 5

1.3.0

- Add support for OpenSSL 3.0
- Add first-class support for RSASSA-PSS certificates
- Add user-friendly handling of the error message with TLS on macOS
when a ceritificate has a lifetime that is longer than the CAB forum
guidelines
- Fix AES 192/256 encryption on OpenSSL and Windows to allow no padding when
plaintext is an exact multiple of 16 bytes long. Previously AES192 would
require plaintext with a length that was a multiple of 24 AND 16, and
AES256 would require plaintext with a length that was a multiple of 32.
- Add the ability to skip tests that require internet connectivity
*via jnahmias*
- Fix a bug throwing an exception when passing an invalid type to
`asymmetric.load_public_key()` *via Arbitrage0*
- Fix a number of typos in doc strings *via frennkie and kianmeng*

1.2.1

- Fix running in an environment with a custom OpenSSL install on macOS 10.15
- Fix compatibility with macOS 11, where `ctype.find_library()` no longer
works due to system `.dylib`s no longer being present on the filesystem
- Handle the Mac `EPROTOTYPE` error that may be returned when a TLS
connection is terminated
- Fixed the `oscrypto-tests` sdist on PyPi to work properly to generate a
.whl

1.2.0

- Allow `oscrypto.use_ctypes()`, `oscrypto.use_openssl()` and
`oscrypto.use_winlegacy()` to be called after initialization as long as the
configuration does not change

1.1.1

- Use versioned libcrypto.dylib and libssl.dylib on macOS Catalina to prevent
segfaults
- Fix warnings reported when using with cffi 1.13.2

1.1.0

- Added `oscrypto.load_order()`, which returns a `list` of unicode strings
of the names of the fully-qualified module names for all of submodules of
the package. The module names are listed in their dependency load order.
This is primarily intended for the sake of implementing hot reloading.

1.0.0

- Backwards Compatibility Breaks
- `oscrypto.backend()` will now return `"mac"` instead of `"osx"` when
running on a Mac and not explicitly configured to use OpenSSL
- Enhancements
- Added functionality to calculate public keys from private keys since that
was removed from asn1crypto:
- `asn1crypto.keys.PrivateKeyInfo().unwrap()` is now
`asymmetric.PrivateKey().unwrap()`
- `asn1crypto.keys.PrivateKeyInfo().public_key` is now
`asymmetric.PrivateKey().public_key.unwrap()`
- `asn1crypto.keys.PrivateKeyInfo().public_key_info` is now
`asymmetric.PrivateKey().public_key.asn1`
- `asn1crypto.keys.PrivateKeyInfo().fingerprint` is now
`asymmetric.PrivateKey().fingerprint`
- `asn1crypto.keys.PublicKeyInfo().unwrap()` is now
`asymmetric.PublicKey().unwrap()`
- `asn1crypto.keys.PublicKeyInfo().fingerprint` is now
`asymmetric.PublicKey().fingerprint`
- Added `oscrypto.use_ctypes()` to avoid CFFI if desired
- Added `tls.TLSSocket().port` property
- Improved handling of disconnects with `tls.TLSSocket()`
- Improved error messages when dealing with failures originating in OpenSSL
- Allow PEM-encoded files to have leading whitespace when loaded via
`keys.parse_private()`, `keys.parse_public()` and
`keys.parse_certificate()`
- Restructured internal imports of asn1crypto to make vendoring easier
- No longer touch the user keychain on Macs when generating keys, instead
use a temporary one
- Bug Fixes
- Fixed compatibility with Python 3.7+
- Fixed compatibility with LibreSSL version 2.2.x+
- Fixed a bug where `tls.TLSSocket().read_until()` that would sometimes read
more data from the socket than necessary
- Fixed a buffer overflow when reading data from an OpenSSL memory bio
- Fixed a bug in `util.pbkdf2()` that would cause incorrect output in some
situations when run on Windows XP or with OpenSSL 0.9.8
- Fixed `aes_cbc_no_padding_encrypt()` so it can be executed when the backend
is OpenSSL
- A `SecTrustRef` obtained from `SSLCopyPeerTrust()` on Mac is now
properly released
- Packaging
- `wheel`, `sdist` and `bdist_egg` releases now all include LICENSE,
`sdist` includes docs
- Added `oscrypto_tests` package to PyPi

Page 1 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.