coinkite-tap-proto

Emulator

A python emulator of a single card.

Usage

Usage: ecard.py [OPTIONS] COMMAND [ARGS]...

Options:
  -q, --quiet             Less debugging
  -t, --testnet           Operate on testnet3 rather than mainnet
  -r, --rng-seed integer  Seed value for (not) RNG
  --help                  Show this message and exit.

Commands:
  emulate    Emulate a card which has just powered on after CAP loaded.
  satscard   Build a SATSCARD and do the basics with it.
  tapsigner  Build a TAPSIGNER card and do the basics with it.

Command usage:

# emulate a factory-fresh card
% ./ecard.py emulate -f
# emulate a SATSCARD with first slot populated, certificate chain installed
% ./ecard.py emulate
# emulate a TAPSIGNER with no key picked yet
% ./ecard.py emulate -t --no-init
# emulate a TAPSIGNER with key already picked
% ./ecard.py emulate -t

When emulating a card, commands can be sent to the Unix domain pipe at /tmp/ecard-pipe as CBOR objects. Responses are CBOR to be decoded.