Release Notes

  • Version 3.0.0 (released 2023-12-07)

    • NOTE: Backwards incompatible release.

    • Dropped Python 2 support, new minimum requirement: Python 3.8.

    • Added type hints.

    • Bumped minimum supported Cryptography version to 2.6.

    • Dropped yubihsm.eddsa package, in favor of EdDSA support in Cryptography.

    • Dropped custom constants for Brainpool curves, in favor of those in Cryptography.

    • Dropped .generated, .imported, and .wrapped from ORIGIN. Instead use: ORIGIN.GENERATED in origin, etc.

    • Added support for asymmetric authentication.

    • Added support for symmetric encryption (AES).

    • Changes relevant to maintainers:

      • Added mypy to pre-commit checks.

      • Switched build and packaging system to poetry.

      • Switched to using pytest for testing (unittest still used in some places).

  • Version 2.1.2 (released 2022-12-05)

    • Bugfix: Fix broken sign_ssh_certificate command.

  • Version 2.1.1 (released 2022-09-22)

    • Dependency fix: Require Cryptography <38.

  • Version 2.1.0 (released 2021-04-13)

    • Stop using deprecated functions from cryptography.io (prevents warnings).

    • Support Prehashed data when signing.

    • Implement context manager (python with-statement) for YubiHsm and AuthSession.

    • Bugfix: Fix byte-order issue with AEAD nonce ID.

  • Version 2.0.1 (released 2019-06-19)

    • Bugfix: ORIGIN representation was broken, causing get_info() to fail.

    • Bugfix: Algorithm parsing in DeviceInfo fixed.

    • Handing of too large messages improved.

  • Version 2.0.0 (released 2018-11-26)

    • Published under the Apache v2.0 software license.

    • Reworked most library APIs to align with SDK 2.0 changes.

    • Added documentation to all public APIs, with Sphinx generated docs.

  • Version 1.0.0 (released 2017-10-27)

    • First version