17 releases (10 breaking)
0.12.3 | Sep 2, 2024 |
---|---|
0.12.2 | May 24, 2024 |
0.12.1 | Feb 4, 2024 |
0.9.0 | Nov 28, 2023 |
0.3.0 | Jun 13, 2022 |
#132 in #wallet
155KB
2.5K
SLoC
Coldcard CLI
coldcard-cli
is a firmware upgrade and general management tool for the Coldcard hardware wallet.
Install it with:
$ cargo install coldcard-cli
Usage:
$ coldcard --help
coldcard-cli 0.12.0
Coldcard Wallet CLI Tool
USAGE:
coldcard [OPTIONS] <SUBCOMMAND>
OPTIONS:
-h, --help Print help information
--serial <SERIAL> The Coldcard serial number to operate on (default: first one found)
-V, --version Print version information
--xpub <XPUB> Perform a MITM check against an xpub
SUBCOMMANDS:
address Show the address for a derivation path
auth-token Authenticate a specific user using a 6-digit token (for HSM)
backup Initiate the backup process and create an encrypted 7z file
bag Show the bag number the Coldcard arrived in
chain Show the configured blockchain
delete-user Delete a specific HSM user
help Print this message or the help of the given subcommand(s)
hsm Show the current HSM policy
hsm-start Starts the HSM mode (with a specific policy)
install-udev-rules Installs the udev file required to detect Coldcards on Linux
list List the serial numbers of connected Coldcards
local-conf Generate a 6-digit code for PSBT signing in HSM mode
locker Get the hex contents of the storage locker (HSM mode only)
logout Securely log out of the Coldcard
message Sign a text message with a specific derivation path
passphrase Set a BIP39 passphrase
pubkey Show the pubkey for a derivation path
reboot Reboot the Coldcard
sign Sign a spending PSBT transaction
test Test USB connection
upgrade Download and upgrade to the latest firmware, or upgrade from file
user Create a new HSM user. The secret is generated on the device
version Show the version information of this Coldcard
xfp Show the master fingerprint for this wallet
xpub Show the xpub (default: master)
Linux Specific Instructions
In order to be able to detect a Coldcard device on a Linux system, 51-coinkite.rules must be placed in /etc/udev/rules.d/
. This can also be achieved using the install-udev-rules
command.
Two mutually exclusive HID backends are supported and can be turned on using the following features:
coldcard/linux-static-hidraw
(default)coldcard/linux-static-libusb
(potential issues with unclear error messages)
Logging
To see log output, run the program with the RUST_LOG=$level
environment variable. This uses the env_logger
crate.
Library
This project also offers a Rust library. See the coldcard
crate for more information.
Contributing
Contributions are welcome. Before making large changes, please open an issue first.
Disclaimer
This is not an official project and comes with no warranty whatsoever.
Dependencies
~13–26MB
~332K SLoC