nitrokey-rs

A libnitrokey wrapper for Rust providing access to Nitrokey devices.

Documentation

toml [dependencies] nitrokey = "0.1.1"

Compatibility

The required [libnitrokey][] version is built from source. The host system must provide libhidapi-libusb0 in the default library search path.

As I only have access to a Nitrokey Pro, this crate only provides support for the Nitrokey Pro methods. If you want to contribute for the Nitrokey Storage, please send a mail to nitrokey-rs-dev@ireas.org.

Unsupported Functions

The following functions provided by libnitrokey are deliberately not supported by nitrokey-rs:

Tests

The default test suite assumes that no Nitrokey device is connected and only performs minor sanity checks. There is another test suite that assumes that a Nitrokey Pro is connected (admin password 12345678, user password 123456). To execute this test suite, run cargo test --no-default-features --features test-pro -- --test-threads 1. Note that this test suite might lock your stick if you have different passwords!

The totp and totp_pin tests can occasionally fail due to bad timing. Also make sure to run the tests sequentially (--test-threads 1), otherwise they might interfere.

The get_major_firmware_version test will fail for newer libnitrokey versions as it relies on buggy behavior in version 3.2.

Contact

For bug reports, patches, feature requests or other messages, please send a mail to nitrokey-rs-dev@ireas.org.

License

This project is licensed under the MIT License. libnitrokey is licensed under the LGPL-3.0.