This repository contains TypeScript implementation of the Nitrokey Webcrypt client, along with a Vue demo application using it, available at:
See following for more information:
- https://github.com/Nitrokey/nitrokey-webcrypt
- https://github.com/Nitrokey/nitrokey-webcrypt-tests
- https://github.com/Nitrokey/nitrokey-webcrypt-usbip
- session management (Login and Logout)
- key generation (random);
- key generation from seed;
- data signing using generated key (
Sign
tab); - custom calls for all commands from the API (
Custom
tab); - automatic test execution of the all commands from the API (
TEST
button).
- Press
RESET AND LOGIN
button to reset the device's state by calling a factory reset operation, set new PIN and establish a session. - Generate key - either randomly or from a key seed, with
GENERATE KEY
orGENERATE KEY FROM SEED
respectively. - Sign data hash by pressing
SIGN DATA
button. - End session by pressing
LOGOUT
Note: all data are presented hexadecimal.
Using Custom
tab it is possible to send to device any API command.
Default PIN set by RESET AND LOGIN
is 123123
, however one can run FACTORY_RESET
command through the Custom
tab, and set own and login with
SET_PIN
and LOGIN
commands respectively.
For the fields marked as :bytes
please enter data in hexadecimal format, and regular text for fields marked as :string
.
The TEST
button calls all API commands to check for the correctness of its implementation.
These tests are not exhaustive (that is realized by the Python test suite), but mostly test "happy paths".
See Use Cases.
yarn install
yarn serve
yarn run vue-cli-service serve --https --open --host $(HOST) # for https
yarn build
yarn lint