FiDeSMo Utility ·
FDSM is the developer's Swiss Army Knife for working with a Fidesmo device and the Fidesmo API. It supersedes gradle-fidesmo for interacting with the Fidesmo API and provides an alternative to Fidesmo Android app when delivering services to a device via a PC/SC reader (contact or contactless). All from the command line.
Getting started
You will need the following:
- Latest Java 11 for running the app
- a Fidesmo Developer account for your
$FIDESMO_AUTH
(appId:appKey
) - a Fidesmo device (get one from the shop)
- a PC/SC NFC reader (unless your developer device is the Yubikey NEO with Fidesmo)
Grab a copy of fdsm.jar
(or fdsm.exe
wrapper for Windows) from the release area. It is an executable JAR file, so start by running
java -jar fdsm.jar -h
or fdsm.exe -h
on Windows. With Linux or macOS, it is recommended to add a handy alias to your ~/.bashrc
or ~/.profile
(assuming ~/Downloads is where you saved fdsm.jar):
alias fdsm="java -jar ~/Downloads/fdsm.jar"
HOWTO
FDSM should be easy to use for JavaCard developers with some knowledge of the Fidesmo API. We will cover the full development cycle with the following HOWTO-s
- Develop and build your JavaCard applet with
ant-javacard
- Test your applet on a Fidesmo device with
fdsm
- Manage your application and associated applets in the Fidesmo API with
fdsm
Support
- please open a new issue on Github if you find a mistake in code or documentation
- for general support, please contact Fidesmo support via [email protected]
License and development
FDSM is open source software, developed by Fidesmo AB and licensed under MIT license. Pull requests are most welcome, please refer to CONTRIBUTING.md.
To contribute you will need Apache Maven to build and test the software, but a wrapper to download the right version is included.
To produce a build, execute ./mvnw package
and use the generated target/fdsm.jar
.
Environment variables
fdsm
is a command line application and takes most of its input from command line arguments but some behavior can be tuned by setting environment variables.
FIDESMO_AUTH
- the app ID and app key from developer portal inappId:appKey
format, equivalent of using--auth appId:appKey
FIDESMO_API_URL
- the URL of the the Fidesmo backend (do not change if unsure)