cryptnox-cli
CLI for managing Cryptnox Hardware Wallet smart cards
cryptnox-cli is a command-line interface for managing Cryptnox Hardware Wallet smart cards, enabling secure seed initialization and cryptographic signing for Bitcoin and Ethereum.
Supported hardware
Cryptnox Hardware Wallet smart cards
Works with Cryptnox Hardware Wallet smart cards running firmware v1.6.0 or later.
| Smart card | Wallet version |
|---|---|
| Crypto Hardware Wallet – Dual Card Set | v1.6.1 |
Smart card readers
Works with Cryptnox readers and any other standard PC/SC smart card reader:
| Reader | Type | Interface |
|---|---|---|
| Cryptnox® Smartcard Reader | Contact (ID-1 + SIM) | USB-A |
| Compact USB Mini Smartcard Reader | Contact (ID-1) | USB-A |
| Cryptnox NFC Contactless Reader | Contactless (NFC/ISO 14443) | USB-C |
Installation
From PyPI
pip install cryptnox-cli
From MStore
mstore install cryptnox-cli
Visit the MStore page to install cryptnox-cli via the graphical user interface.
From source
git clone https://github.com/cryptnox/cryptnox-cli.git
cd cryptnox-cli
pip install .
This installs the package and makes the cryptnox command available (if your Python installation is in your system PATH).
Quick usage examples
1. Sign and send a Bitcoin transaction
- Create or obtain a raw unsigned transaction externally.
- Run the signing & send command:
cryptnox btc send <recipient_address> <amount> [-f <fees>]
2. Dual initialization
-
Factory reset each card:
cryptnox reset→ enter PUK → verify reset. -
Initialize each card:
cryptnox init→ (optional) set name/email → set PIN (4–9 digits) → set or generate PUK → verify init. -
Run dual seed procedure:
cryptnox seed dual— follow prompts: insert Card A (enter PIN), swap to Card B (enter PIN), swap back as requested.
3. Change PIN code
- Run command:
cryptnox change_pin - Enter current PIN → enter new PIN → verify change.
- Check with
cryptnox infousing new PIN (BTC & ETH accounts displayed).
4. Get extended public key (xpub)
- Run command:
cryptnox get_xpub - Enter PIN → enter PUK
- The card returns the xpub
Documentation
The full User & Developer documentation is available at the Cryptnox CLI Documentation. It covers installation and setup, usage guides and examples, CLI command reference, and developer notes with API details.
License
cryptnox-cli is dual-licensed:
- LGPL-3.0 for open-source projects and proprietary projects that comply with LGPL requirements
- Commercial license for projects that require a proprietary license without LGPL obligations (see COMMERCIAL.md for details)
For commercial inquiries, contact: contact@cryptnox.com
========= Changelog
1.0.5 <https://github.com/Cryptnox-Software/cryptnox-cli/compare/ver1.0.4...ver1.0.5>_
Fixed ^^^^^
- Fixed
ModuleNotFoundErrorformanufacturer_certificatecommand in packaged installer (MSIX/MSI) — the module was missing from PyInstaller'shiddenimports, causing all commands to fail at runtime in the frozen executable
1.0.4 <https://github.com/Cryptnox-Software/cryptnox-cli/compare/ver1.0.3...ver1.0.4>_
Added ^^^^^
- Bitcoin (BTC) send transaction support with SegWit/bech32 address support
- Bitcoin testnet4 support for development and testing
- QuickNode integration via Blockbook UTXOs for UTXO fetching, with JSON-RPC for fee estimation and broadcast
- Parallel network queries for faster Bitcoin balance and UTXO lookups
- XRP and BNB address display in card info
- Manufacturer certificate retrieval command
- Power cycle prompt with automatic card reconnection when required
- Double confirmation when changing PIN or PUK to prevent accidental changes
- Ctrl+C cancellation support in PIN/PUK input prompts
- CodeQL, Semgrep, and OSV security scanning workflows in CI/CD
Changed ^^^^^^^
- Updated cryptnox-sdk-py to 1.0.4
- Added Python 3.14 support
- Mainnet set as the default network configuration
- Improved PIN/PUK input UX on Windows (simplified getpass, removed polling loop)
- Improved verify PIN flow: warns instead of blocking when PUK change is attempted with PIN locked
- Card info command now performs network queries in parallel for improved performance
- Updated dependencies to address security vulnerabilities (Dependabot)
Fixed ^^^^^
- Restored Ctrl+C handling in
getpasson all platforms - Fixed Ctrl+C handling in
confirm_pin_codeandconfirm_puk_code - Fixed thread-safety issue by pre-fetching card config before
ThreadPoolExecutor - Fixed CodeQL
py/incomplete-url-substring-sanitizationfinding in URL validation - Fixed
PinBlockedExceptionhandling and propagation
Removed ^^^^^^^
- Removed AWS backup and seed backup features (
backup.py,seed_backup.py,download_folder.py)
1.0.3 <https://github.com/Cryptnox-Software/cryptnox-cli/compare/v1.0.2...v1.0.3>_
Added ^^^^^
- Added Cryptnox logo to documentation
- Added Other/Proprietary License option
Changed ^^^^^^^
- Updated cryptnox-sdk-py to 1.0.2
- Updated other dependencies to latest versions
- Modified documentation UI, colors, and layout
- Updated documentation license information
1.0.2 <https://github.com/Cryptnox-Software/cryptnox-cli/compare/v1.0.1...v1.0.2>_
Changed ^^^^^^^
- Updated README file with improved documentation
- Modified commercial license details
1.0.1 <https://github.com/Cryptnox-Software/cryptnox-cli/compare/v2.9.1...ver1.0.1>_
Added ^^^^^
- Package renamed from
cryptnoxprotocryptnox_cli- Install using:
pip install cryptnox-cli
- Install using:
- BIP39 passphrase support for seed generation and recovery
- BIP39 passphrase length limitation and validation
- Sphinx documentation framework for comprehensive CLI documentation
- GitHub Actions workflows for automated documentation deployment
- Constants file for centralized configuration management
- Flake8 code quality checks in CI/CD workflow
Changed ^^^^^^^
- Updated README with improved documentation and examples
- Modified documentation configuration and deployment process
- Reconfigured documentation deployment workflow
- Updated setup configuration (setup.cfg) for better package management
- Improved code organization with constants file
Fixed ^^^^^
- Resolved runtime import errors
- Fixed flake8 code style errors throughout the codebase
- Fixed PUK retries persistence issue
Removed ^^^^^^^
- Removed cleos dependency
- Removed Ropsten testnet support (deprecated network)
Metadata
Release files for cryptnox-cli 1.0.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cryptnox_cli-1.0.5.tar.gz | 135.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cryptnox_cli-1.0.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 300.6 kB
Release files / cryptnox_cli-1.0.5.tar.gz
| Download URL | cryptnox_cli-1.0.5.tar.gz |
|---|---|
| Size | 135.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2e7229bf229ab3b8800f0d97809dcd96ab05a89b10bf21914e00e5f3a605d5b2
|
|
BLAKE2b-256 checksum How to use checksums |
c5f295f421a696bd0cfed3dfd18e4fe266709d0b6d4770fe6949e9c9d5351f39
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.14
|
Release files / cryptnox_cli-1.0.5-py3-none-any.whl
| Download URL | cryptnox_cli-1.0.5-py3-none-any.whl |
|---|---|
| Size | 165.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4ff45319f4af14165d2694e8ab84fdf54379dff9ab9defef471ec52cb7b7df43
|
|
BLAKE2b-256 checksum How to use checksums |
7516729d273c65dda747f66db35002d4248a331abf2798d51e55e09813fbae7c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.14
|