Released 2024-10-26
- Add support for Python 3.13. #577
- Drop support for Python 3.8. #576
- Add enable_non_aead=False option for encode & decode. #575
- Add option for Deterministic encoded protected and unprotected headers. #574
- Fix link on README. #552
- Rename github actions files. #548
- Fix error on populating codecov token. #547
Released 2024-08-03
- Add Python 3.12 to CI. #499
- Update dev dependencies.
- Bump codecov/codecov-action to v4. #541
- Bump setuptools to 70.0.0. #538
- Bump zipp to 3.19.1. #537
- Bump certifi to 2024.7.4. #536
- Bump tox to 4.16.0. #535
- Bump urllib3 to 2.2.2. #534
- Bump requests to 2.32.0. #530
- Bump jinja2 to 3.1.4. #528
- Bump idna to 3.7. #525
- Bump sphinx-autodoc-typehints to 2.0.1. #524
- Bump blacken-docs to 1.18.0. #522
- Bump pre-commit/black to 24.4.2. #522
- Bump pre-commit/flake8 to 7.1.0. #522
- Bump pre-commit/mirrors-mypy to 1.10.0. #522
- Bump pre-commit/pre-commit-hooks to 4.6.0. #522
- Bump pytest-cov to 5.0.0. #519
- Bump pytest to 8.1.1. #516
Released 2024-01-27
- Update dev dependencies.
- Bump tox to 4.12.1. #496
- Bump pre-commit/flake8 to 7.0.0. #493
- Bump pytest to 7.4.4. #492
- Bump pre-commit/black to 23.12.1. #491
- Bump pre-commit/mirrors-mypy to 1.8.0. #491
- Bump pre-commit/isort to 5.13.2. #390
- Update Sphinx version to upper than 7.1. #388
- Update sphinx-autodoc-typehints version to upper than 1.25.2. #388
- Bump sphinx-rtd-theme to 2.0.0. #386
Released 2023-11-25
- Fix readthedocs error. #480
- Tighten the range of pyca/cryptography version. #476
- Add support for Python 3.12 on tox. #475
Released 2023-11-12
- Fix context string for countersignature. #471
- Fix key_ops validation. #470
- Update dev dependencies.
- Bump sphinx-autodoc-typehints to 1.25.0. #469
Released 2023-11-09
- Fix recipient encoding with empty protected header. #467
- Fix nonce modification test. #466
- Accept zero length map protected header. #465
- Generate zero-length protected header for non-AEAD. #463
Released 2023-10-20
- Fix to_cis to convert protected from Dict[str, Any] to Dict[int, Any]. #452
- Add detached_payload parameter to sign/verify funcs. #451
- Fix detach&attach not to create new COSEMessage instance. #447
- Remove Self from COSEMessage. #446
- Update test for COSE-HPKE. #445
- Add detached content converter. #444
- Add ECDH-ES+AES-KW test. #443
- Parametrize test for AES-KW/HPKE and CTR/CBC. #442
- Add AES-CTR and AES-CBC support. #441
- Allow AES-KW algorithm in context. #439
Released 2023-10-09
- Add enum COSEKeyTypes. #437
- Add enum COSEKeyCrvs. #437
- Add enum COSEKeyOps. #437
- Follow draft-cose-hpke-06. #437
- Fix typo of private attribute. #435
Released 2023-09-23
- Update dependencies.
- Bump cryptography to 41.0.4. #433
Released 2023-09-09
- Update IETF I-D references in README. #412
- Add enum COSEKeyParams. #411
- Add enum COSEAlgs. #409
- Update dependencies.
- Bump cryptography to 41.0.3. #416
- Update dev dependencies.
- Bump pytest to 7.4.2. #430
- Bump tox to 4.11.2. #429
- Bump pre-commit to 3.4.0. #427
- Bump sphinx-autodoc-typehints to 1.24.0. #424
- Bump sphinx to 7.1.2. #423
- Bump certifi to 2023.7.22. #422
- Bump sphinx-rtd-theme to 1.3.0. #420
- Bump pre-commit/blacken-docs to 1.15.0. #413
- Bump pre-commit/black to 23.7.0. #413
Released 2023-07-08
- Fix and update examples in README. #405
- Add enum CWTClaims. #404
- Rename COSEType to COSETypes. #403
- Add enum COSEHeaders. #401
- Add experimental support for CWT claims in COSE headers. #400
- Update dev dependencies.
- Bump tox to 4.6.4. #398
Released 2023-07-03
- Update the base python version on CI/CD. #396
- Drop support for Python 3.7. #391
- Update dependencies.
- Bump cryptography to 41.0.0. #395
- Update dev dependencies.
- Bump sphinx to 7.0.1. #394
- Bump pre-commit to 3.3.3. #393
- Bump pre-commit/mirrors-mypy to 1.4.1. #389
- Bump pytest to 7.4.0. #388
- Bump tox to 4.6.3. #387
- Bump pre-commit/blacken-docs to 1.14.0. #386
- Bump sphinx-rtd-theme to 1.2.2. #384
- Bump pytest-cov to 4.1.0. #381
- Bump pre-commit/black to 23.3.0. #370
Released 2023-03-25
Released 2023-02-18
- Remove unused log. #355
- Change HPKE sender information from dict to list. #354
- Add SECURITY.md. #352
- Remove unused function in CBORProcessor. #333
- Fix link to readthedocs. #326
Released 2023-01-01
- Add support for countersignatures. #323
- Remove Python 3.7 from CI temporarilly. #323
- Enhance COSE message validation. #300
- Add test and sample for COSE-HPKE MAC. #297
- Add Python 3.11 to CI. #296
- Update dependencies.
- Bump cbor2 from 5.4.6. #302
Released 2022-11-29
- Add encode() to COSE. #294
Released 2022-11-29
- BREAKING CHANGES for v2.0.0. #290
- Remove context parameter from Recipient encode()
- Remove context and salt parameters from Recipient functions.
- Add derive_bytes() to COSEKey interface.
- Add decode() to Recipient interface.
- Remove apply() from Recipient interface.
- Remove from_jwk() from Recipient.
- Remove extract() and decrypt() from Recipient interface.
- Drop support for protected header for Key Wrap.
- Remove derive_key() from COSEKey interface.
- Update examples on README to be compliant with v2.0.0. #290
- Remove usage examples from documentation for ReadTheDocs. #290
- Add b_protected getter/setter to Recipient interface. #290
- Add to_bytes() to COSEKey interface. #285
- Add support for HPKE key wrapping experimentally. #284
Released 2022-11-16
- Add support for COSE-HPKE DHKEM-X25519/X448 experimentally. #282
- Update dependencies.
- Bump pyhpke to 0.4.0. #281
Released 2022-11-02
- Follow COSE-HPKE early version of draft-03. #271
Released 2022-10-23
- Fix additional authenticated data context. #266
- Refine samples in README. #265
- Drop support for binary protected header on COSE. #252
- Make encode_and_encrypt key parameter optional. #261
- Add COSE-HPKE experimantally. #260
- Drop support for Python 3.6. #259
- Update dependencies.
- Bump cryptography to 38.0.2. #257
Released 2022-10-08
- Update dependencies.
- Bump cryptography to 38.0.1. #248
Released 2022-08-10
Released 2022-06-18
- Update dependencies.
- Bump cryptography to 37.0.2 #228
Released 2022-04-03
Released 2022-01-01
- Add 2022 to copyright and license. #205
- Fix link to homepage on PyPI. #204
- Add license information to PyPI. #204
Released 2021-12-31
- Refine github action. #202
- Refine tox.ini. #202
- Use pytest-cov instead of coverage. #202
- Refine pyproject.toml. #202
- Add poetry.lock. #202
Released 2021-12-15
- Use the default salt length for PS256/384/512 instead of the max length. #195
Released 2021-12-11
Released 2021-10-16
- Add support for Python 3.10. #183
Released 2021-10-11
- Make public types explicit for PyLance. #180
- Use datetime.now(tz=timezone.utc) instead of datetime.utcnow. #179
- Add py.typed for PEP561. #176
Released 2021-10-04
- Add support for x5c. #174
Released 2021-08-09
Released 2021-07-07
Released 2021-07-03
- Add helper for hcert. #154
Released 2021-07-01
- Disable access to CWT property for global CWT instance (cwt). #153
- Fix kid verification for recipient. #152
- Change default setting of verify_kid to True for CWT. #150
- Add setter/getter for each setting to COSE/CWT. #150
- Fix type of parameter for COSE constructor. #149
- Add verify_kid option to COSE. #148
- Fix kid verification. #148
- Add support for hcert. #147
Released 2021-06-27
- Add context support to Recipient.from_jwk(). #144
- Disable auto salt generation in the case of ECDH-ES. #143
- Add support for auto salt generation. #142
- Add salt parameter to RecipientInterface.apply(). #142
- Remove alg parameter from RecipientInterface.apply(). #141
Released 2021-06-24
- Make MAC key can be derived with ECDH. #139
- Add RawKey for key material. #138
- Make MAC key can be derived with HKDF. #137
- Remove COSEKeyInterface from RecipientInterface. #137
- Implement AESKeyWrap which has COSEKeyInterface. #137
- Add encode_key() to RecipientInterface. #134
- Rename key to keys on CWT/COSE decode(). #133
- Remove materials from COSE.decode(). #131
- Add decode_key() to RecipientInterface. #131
- Remove alg from keys in recipient header. #131
- Add support for ECDH with key wrap. #130
- Refine README. #127
- Add samples of using direct key agreement. #126
Released 2021-06-13
- Rename from_json to from_jwk. #124
- Add support for X25519/X448. #123
- Add derive_key to EC2Key. #122
- Add key to OKPKey. #122
- Add support for key derivation without kid. #120
- Add support for ECDH-SS direct HKDF. #119
- Add support for ECDH-ES direct HKDF. #118
Released 2021-06-04
- Introduce new() into CWT/COSE. #115
- Rename Claims.from_dict to Claims.new. #115
- Rename COSEKey.from_dict to COSEKey.new. #115
- Rename Recipient.from_dict to Recipient.new. #115
- Add Signer for encode_and_sign function. #114
- Divide CWT options into independent parameters. #113
Released 2021-05-31
- Add JSON support for COSE. #109
- Devite a COSE options parameter into independent parameters. #109
- Refine COSE default mode. #108
- Refine the order of parameters for CWT functions. #107
- Fix example in docstring. #107
- Make interface docstring public. #106
Released 2021-05-30
- Refine EncryptedCOSEKey interface. #104
- Merge RecipientsBuilder into Recipients. #103
- Rename Key to COSEKeyInterface. #102
- Rename RecipientBuilder to Recipient. #101
- Make Key private. #100
- Merge ClaimsBuilder into Claims. #98
- Rename KeyBuilder to COSEKey. #97
- Rename COSEKey to Key. #97
- Add support for external AAD. #94
- Make unwrap_key return COSEKey. #93
- Fix default HMAC key size. #91
- Add support for AES key wrap. #89
- Add support for direct+HKDF-SHA256 and SHA512. #87
Released 2021-05-11
- Add alg validation and fix related bug. #77
- Update protected/unprotected default value from {} to None. #76
Released 2021-05-09
- Add support for bytes-formatted protected header. #73
- Derive alg from kty and crv on from_jwk. #73
- Add alg_auto_inclusion. #73
- Move nonce generation from CWT to COSE. #73
- Re-order arguments of COSE API. #73
- Add support for COSE algorithm names for KeyBuilder.from_jwk. #72
- Add tests based on COSE WG examples. #72
- Move parameter auto-gen function from CWT to COSE. #72
- Refine COSE API to make the type of payload parameter be bytes only. #71
- Simplify samples on docs. #69
Released 2021-05-08
- Add test for error handling of encoding/decoding. #67
- Fix low level error message. #67
- Add support for multiple aud. #65
- Relax the condition of the acceptable private claim value. #64
- Fix doc version. #63
Released 2021-05-04
- Make decode accept multiple keys. #61
- Add set_private_claim_names to ClaimsBuilder and CWT. #60
- Add sample of CWT with user-defined claims to docs. #60
Released 2021-05-04
- Make ClaimsBuilder return Claims. #56
- Add support for JWK keyword of alg and key_ops. #55
- Add from_jwk. #53
- Add support for PoP key (cnf claim). #50
- Add to_dict to COSEKey. #50
- Add crv property to COSEKey. #50
- Add key property to COSEKey. #50
- Add support for RSASSA-PSS. #49
- Add support for RSASSA-PKCS1-v1_5. #48
Released 2021-04-30
- Add CWT.encode. #46
- Fix bug on KeyBuilder.from_dict. #45
- Add support for key_ops. #44
- Add support for ChaCha20/Poly1305. #43
- Make nonce optional for CWT.encode_and_encrypt. #42
- Add support for AES-GCM (A128GCM, A192GCM and A256GCM). #41
- Make key optional for KeyBuilder.from_symmetric_key. #41
Released 2021-04-29
- Add docstring to COSE, KeyBuilder and more. #39
- Add support for COSE_Encrypt structure. #36
- Add support for COSE_Signature structure. #35
- Change protected_header type from bytes to dict. #34
- Add support for COSE_Mac structure. #32
- Add test for CWT. #29
Released 2021-04-23
Released 2021-04-19
- Add support for Ed448, ES384 and ES512. #13
- Add support for EncodeError and DecodeError. #13
- Add test for supported algorithms. #13
- Update supported algorithms and claims on docs. #13
Released 2021-04-18
Released 2021-04-18
Released 2021-04-18
- Fix description of installation.
Released 2021-04-18
- First public preview release.