A Nim SDK to interact with the Status Keycard - a hardware wallet implementation on JavaCard.
git clone https://github.com/mmlado/keycard-nim.git
cd keycard-nim
nimble install- pcsc-nim - PC/SC library for smart card access
- Nim >= 1.6.14
import keycard/keycard
import keycard/commands/select
import keycard/transport
# Create keycard instance
let t = newTransport()
var card = newKeycard(t)
# Connect to first reader
let readers = card.listReaders()
card.connect(readers[0])
defer: card.close()
# Select the Keycard applet
let result = card.select()
if result.success:
echo "Card version: ", card.version()
echo "Initialized: ", card.isInitialized()
echo "Secure channel: ", card.hasSecureChannel()Run tests with mock PC/SC (no hardware required):
nimble testRun example with real card:
nimble exampleClean build artifacts:
nimble cleanContributions welcome! Please:
- Run tests before submitting (
nimble test) - Follow existing code style
- Add tests for new features
- Update this README with implementation status
MIT