keycard-cli
keycard-cli copied to clipboard
A command line tool and shell to manage keycards
keycard-cli
keycard is a command line tool to manage Status Keycards.
- Dependencies
- Installation
- Continuous Integration
- CLI Commands
- Card info
- Keycard applet installation
- Card initialization
- Deleting the applet
- Keycard shell
Dependencies
- An USB smart card reader (those with contacts are more reliable than NFC readers).
- On linux you need to install and run the pcsc daemon.
Installation
Download the binary for your platform from the releases page and rename the file to keycard, removing the platform specific suffix.
Continuous Integration
Jenkins builds provide:
- PR Builds - Run only the
testandbuildtargets. - Manual Builds - Create GitHub release draft with binaries for 3 platforms.
Successful PR builds are mandatory.
Usage
Card info
keycard info -l debug
The info command will print something like this:
Installed: true
Initialized: false
InstanceUID: 0x
PublicKey: 0x112233...
Version: 0x
AvailableSlots: 0x
KeyUID: 0x
Keycard applet installation
The install command will install an applet to the card.
You can download the status cap file from the status-im/status-keycard releases page.
keycard install -l debug -a PATH_TO_CAP_FILE
In case the applet is already installed and you want to force a new installation you can pass the -f flag.
Card initialization
keycard init -l debug
The init command initializes the card and generates the secrets needed to pair the card to a device.
PIN 123456
PUK 123456789012
Pairing password: RandomPairingPassword
Deleting the applet
:warning: WARNING! This command will remove the applet and all the keys from the card. :warning:
keycard-cli delete -l debug
Keycard shell
Check the _shell-commands-examples folder.