mattsaxon / pysonofflan

Python interface for controlling Sonoff smart switches/plugs running original Itead firmware, locally, in "LAN mode".
MIT License
32 stars 23 forks source link

Update pycryptodome to 3.13.0 #418

Open pyup-bot opened 2 years ago

pyup-bot commented 2 years ago

This PR updates pycryptodome from 3.9.7 to 3.13.0.

Changelog ### 3.13.0 ``` ++++++++++++++++++++++++++ New features ------------ * Add support for curve NIST P-224. Resolved issues --------------- * GH590: Fixed typing info for ``Crypto.PublicKey.ECC``. Other changes ------------- * Relaxed ECDSA requirements for FIPS 186 signatures and accept any SHA-2 or SHA-3 hash. ``sign()`` and ``verify()`` will be performed even if the hash is stronger than the ECC key. ``` ### 3.12.0 ``` ++++++++++++++++++++++++++ New features ------------ * ECC keys in the SEC1 format can be exported and imported. * Add support for KMAC128, KMAC256, TupleHash128, and TupleHash256 (NIST SP-800 185). * Add support for KangarooTwelve. Resolved issues --------------- * GH563: An asymmetric key could not be imported as a ``memoryview``. * GH566: cSHAKE128/256 generated a wrong output for customization strings longer than 255 bytes. * GH582: CBC decryption generated the wrong plaintext when the input and the output were the same buffer. Thanks to Michael K. Ashburn. ``` ### 3.11.0 ``` ++++++++++++++++++++++++++ Resolved issues --------------- * GH512: Especially for very small bit sizes, ``Crypto.Util.number.getPrime()`` was occasionally generating primes larger than given the bit size. Thanks to Koki Takahashi. * GH552: Correct typing annotations for ``PKCS115_Cipher.decrypt()``. * GH555: ``decrypt()`` method of a PKCS1v1.5 cipher returned a ``bytearray`` instead of ``bytes``. * GH557: External DSA domain parameters were accepted even when the modulus (``p``) was not prime. This affected ``Crypto.PublicKey.DSA.generate()`` and ``Crypto.PublicKey.DSA.construct()``. Thanks to Koki Takahashi. New features ------------ * Added cSHAKE128 and cSHAKE256 (of SHA-3 family). Thanks to Michael Schaffner. * GH558: The flag RTLD_DEEPBIND passed to ``dlopen()`` is not well supported by `address sanitizers <https://github.com/google/sanitizers/issues/611>`_. It is now possible to set the environment variable ``PYCRYPTDOME_DISABLE_DEEPBIND`` to drop that flag and allow security testing. ``` ### 3.10.4 ``` ++++++++++++++++++++++++++ Resolved issues --------------- * Output of ``Crypto.Util.number.long_to_bytes()`` was not always a multiple of ``blocksize``. ``` ### 3.10.3 ``` ++++++++++++++++++++++++++ Resolved issues --------------- * GH376: Fixed symbol conflict between different versions of ``libgmp``. * GH481: Improved robustness of PKCS1v1.5 decryption against timing attacks. * GH506 and GH509: Fixed segmentation faults on Apple M1 and other Aarch64 SoCs, when the GMP library was accessed via ``ctypes``. Do not use GMP's own sscanf and snprintf routines: instead, use simpler conversion routines. * GH510: Workaround for ``cffi`` calling ``ctypes.util.find_library()``, which invokes ``gcc`` and ``ld`` on Linux, considerably slowing down all imports. On certain configurations, that may also leave temporary files behind. * GH517: Fix RSAES-OAEP, as it didn't always fail when zero padding was incorrect. New features ------------ * Added support for SHA-3 hash functions to HMAC. Other changes ------------- * The Windows wheels of Python 2.7 now require the VS2015 runtime to be installed in the system, because Microsoft stopped distributing the VS2008 compiler in April 2021. VS2008 was used to compile the Python 2.7 extensions. ``` ### 3.10.1 ``` ++++++++++++++++++++++++ Other changes ------------- * Python 3 wheels use ``abi3`` ABI tag. * Remove Appveyor CI. ``` ### 3.10.0 ``` ++++++++++++++++++++++++ Resolved issues --------------- * Fixed a potential memory leak when initializing block ciphers. * GH466: ``Crypto.Math.miller_rabin_test()`` was still using the system random source and not the one provided as parameter. * GH469: RSA objects have the method ``public_key()`` like ECC objects. The old method ``publickey()`` is still available for backward compatibility. * GH476: ``Crypto.Util.Padding.unpad()`` was raising an incorrect exception in case of zero-length inputs. Thanks to Captainowie. * GH491: better exception message when ``Counter.new()`` is called with an integer ``initial_value`` than doesn't fit into ``nbits`` bits. * GH496: added missing ``block_size`` member for ECB cipher objects. Thanks to willem. * GH500: ``nonce`` member of an XChaCha20 cipher object was not matching the original nonce. Thanks to Charles Machalow. Other changes ------------- * The bulk of the test vectors have been moved to the separate package ``pycryptodome-test-vectors``. As result, packages ``pycryptodome`` and ``pycryptodomex`` become significantly smaller (from 14MB to 3MB). * Moved CI tests and build service from Travis CI to GitHub Actions. Breaks in compatibility ----------------------- * Drop support for Python 2.6 and 3.4. ``` ### 3.9.9 ``` +++++++++++++++++++++++ Resolved issues --------------- * GH435: Fixed ``Crypto.Util.number.size`` for negative numbers. New features ------------ * Build Python 3.9 wheels on Windows. ``` ### 3.9.8 ``` ++++++++++++++++++++ Resolved issues --------------- * GH426: The Shamir's secret sharing implementation is not actually compatible with ``ssss``. Added an optional parameter to enable interoperability. * GH427: Skip altogether loading of ``gmp.dll`` on Windows. * GH420: Fix incorrect CFB decryption when the input and the output are the same buffer. New features ------------ * Speed up Shamir's secret sharing routines. Thanks to ncarve. ```
Links - PyPI: https://pypi.org/project/pycryptodome - Changelog: https://pyup.io/changelogs/pycryptodome/ - Homepage: https://www.pycryptodome.org