From a0c6480aa6b1c6dad45b67e5bc7c29c5f0a4bb0e Mon Sep 17 00:00:00 2001 From: Daniel Mueller Date: Tue, 28 Mar 2017 20:06:42 -0700 Subject: Send HID feature report to open/close the encrypted volume With this change we assemble a HID feature report and send it to the nitrokey device. Feature reports are the objects used for sending commands to the nitrokey. We create two different reports for opening and closing of the encrypted volume. --- nitrocli/README.md | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 nitrocli/README.md (limited to 'nitrocli/README.md') diff --git a/nitrocli/README.md b/nitrocli/README.md new file mode 100644 index 0000000..5ec814e --- /dev/null +++ b/nitrocli/README.md @@ -0,0 +1,61 @@ +nitrocli +======== + +**nitrocli** is a program that provides a command line interface for +certain commands on the [Nitrokey Storage][nitrokey] device. + +The following commands are currently supported: +- open: Open the encrypted volume. The user PIN needs to be entered. +- close: Close the encrypted volume. + + +Usage +----- + +Usage is as simple as providing the name of the respective command as a +parameter, e.g.: +```bash +# Open the nitrokey's encrypted volume. +$ nitrocli open +# Close it again. +$ nitrocli close +``` + + +Installation +------------ + +The following dependencies are required: +- **hidapi**: In order to provide USB access this library is used. +- **GnuPG**: The `gpg-connect-agent` program allows the user to enter + PINs. + +#### From Source +In order to compile the program the `hid` crate needs to be available +which allows to access the nitrokey as a USB HID device. This crate and +its dependencies are contained in the form of subrepos in compatible and +tested versions. Cargo is required to build the program. + +The build is as simple as running: +```bash +$ cargo build --release +``` + +It is recommended that the resulting executable be installed in a +directory accessible via the `PATH` environment variable. + +#### From Crates.io +**nitrocli** is [published][nitrocli-cratesio] on crates.io. If an +installation from the checked-out source code is not desired, a +quick-and-dirty local installation can happen via: +```bash +$ cargo install nitrocli --root=$PWD/nitrocli +``` + +#### Via Packages +If you are using [Gentoo Linux](https://www.gentoo.org/), there is an +[ebuild](https://github.com/d-e-s-o/nitrocli-ebuild) available that can +be used directly. + +[nitrokey]: https://www.nitrokey.com/news/2016/nitrokey-storage-available +[nitrocli-cratesio]: https://crates.io/crates/nitrocli -- cgit v1.2.1