A command line tool and shell to manage keycards https://keycard.tech
Go to file
Michele Balistreri 31a238c3d6
update keycard-go
2023-10-11 17:29:37 +09:00
_assets ci: use crazymax/xgo:1.18.1 docker image as base (#17) 2022-11-09 19:11:43 +01:00
_shell-commands-examples add verification command 2023-10-09 20:50:55 +09:00
.gitignore add .gitignore 2019-03-18 19:50:13 +01:00
LICENSE.md add LICENSE 2019-03-18 19:57:48 +01:00
Makefile ci: use crazymax/xgo:1.18.1 docker image as base (#17) 2022-11-09 19:11:43 +01:00
README.md update README 2021-11-09 12:10:08 +01:00
VERSION bump version 2021-10-19 11:30:27 +02:00
go.mod update keycard-go 2023-10-11 17:29:37 +09:00
go.sum update keycard-go 2023-10-11 17:29:37 +09:00
initializer.go remove status and pair commands from cli in favour of shell scripts 2021-11-09 12:10:28 +01:00
installer.go fix go-ethereum import 2021-10-21 15:29:39 +02:00
main.go fix cap file flag name in error message (#14) 2022-11-09 07:23:12 +01:00
ndef.go add option to customize ndef data with custom url and cash address 2019-11-19 18:02:36 +01:00
shell.go add verification command 2023-10-09 20:50:55 +09:00

README.md

keycard-cli

keycard is a command line tool to manage Status Keycards.

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 test and build targets.
  • 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! This command will remove the applet and all the keys from the card. ⚠️

keycard-cli delete -l debug

Keycard shell

Check the _shell-commands-examples folder.