Changelog
Changelog
Version 1.0.5 - 2026-07-14
Added
Added Ed25519 (EdDSA) signing support for applet v2.0 (
KeyType.ED25519)Added
examples/solana_transaction/demonstrating Solana signing and transaction building
Changed
Renamed
BasicG1card class toBasic(BasicG1kept as a backwards-compatible alias)Padded the SIGN PIN to the spec’s fixed 9-byte field and replaced SIGN magic numbers with named constants
Replaced hardcoded PINs in examples with a named PIN variable
Fixed
Guarded Ed25519 key handling against silently falling through to the ECDSA path (unknown key types now raise)
Version 1.0.4 - 2026-04-10
Security
Block
change_puk()when PIN is locked (FINDING-009)Pinned vulnerable transitive dev dependencies to safe minimum versions:
protobuf >= 5.29.6(GHSA-7gcm-g887-7qv7, CVSS 8.2)python-multipart >= 0.0.22(GHSA-59g5-xgcq-4qw3 / GHSA-wp53-j4wj-2cfg, CVSS 8.7/8.6)zipp >= 3.19.1(GHSA-jfmj-5v4g-7637, CVSS 6.9)
Fixed
Fixed
verify_pin(None)to return 0 when PIN is blocked instead of raising an exceptionResolved PIN exception handling in BasicG1 card
Changed
Updated
PinBlockedExceptionmessage for clarityUpdated
python_requiresto>=3.11(removed upper bound, Python 3.14 now supported)Updated README with supported hardware details
Updated docs configuration with SEO meta tags, favicon, and project details
Added
Added
examples/README.mdwith overview of available examples and run instructions
CI
Fixed OSV-Scanner workflow to scan resolved installed package versions
Pinned OSV-Scanner action to
v2.3.5for reproducible CI builds
Version 1.0.3 - 2025-12-24
Added
Added
get_manufacturer_certificate()method to Base card class withhexedparameter for flexible certificate retrieval
Changed
Updated
get_manufacturer_certificate()in BasicG1 with multi-page APDU support for full certificate retrievalUpdated
manufacturer_certificate()function in authenticity module to use the new card-specific method
Version 1.0.2 - 2025-12-08
Changes
Updated dependencies to resolve security vulnerabilities
Improved Python 3 compatibility in cryptographic utilities
Added
Implemented Python code quality scanning CI/CD pipeline using flake8
Implemented security vulnerability scanning CI/CD pipeline using OSV-Scanner
Added automated dependency security checks in GitHub Actions workflows
Fixed
Fixed
AttributeError: module 'cryptnox_sdk_py.cryptos.py2specials' has no attribute 'is_python2'errorFixed
TypeError: can't concat str to byteserror inencode_pubkey()functionResolved info command issue that prevented retrieving card information
Fixed Python 3.12 compatibility issues in
py2specials.pymodule - Added proper Python 3 implementation for base 256 encoding/decoding - Fixed bytes/string handling in cryptographic operations
Version 1.0.1 - 2025-11-18
Changes
Package renamed from
cryptnoxpytocryptnox_sdk_py- All imports must be updated fromimport cryptnoxpytoimport cryptnox_sdk_py- Install using:pip install cryptnox-sdk-pyUpdated README.md with new package name and improved examples
Updated valid PUK validation logic
Updated GitHub Actions workflows for documentation and CI/CD
Modified setup configuration (setup.cfg) for better package management
Added
Added flake8 code quality checks to CI/CD workflow
Added Sphinx documentation framework
Implemented
disconnect()method for Connection class to properly close connectionsAdded comprehensive exception handling improvements
Fixed
Fixed card not recognized error
Resolved PUK retries persistence issue
Fixed flake8 code style errors throughout the codebase
Removed
Removed basic G0 cards references (no longer supported)
Removed factory hashlib codes