Skip to main content

Python Library for Nitrokey devices.

Project description

pynitrokey

A command line interface for the Nitrokey FIDO2, Nitrokey Start, Nitrokey 3 and NetHSM.

Quickstart

$ pipx install pynitrokey
$ nitropy --help

Documentation

The user documentation for the nitropy CLI is available on docs.nitrokey.com. See also the product documentation for more information on the available commands:

Switching Nitrokey Start identities

Alternative MI switching method

pynitrokey installation is not always possible, hence describing below alternative method to change the Identity on the Nitrokey Start. It suffices to have any CCID application installed, and send the following APDU 00 85 00 {ID} (hex), where ID is in range [0;2]. After receiving this command Nitrokey Start will reboot with the selected identity.

Here is how to do it using GnuPG:

# Setting ID to 2
$ gpg-connect-agent --hex "scd apdu  00 85 00 02" /bye
ERR 65539 Unknown version in packet <Unspecified source>

# Alternative error messsage
ERR 65572 Bad certificate <Unspecified source>

The error message here is expected due to immediate reboot of the device, and with losing the connection.

When the ID change is attempted to be done immediately, the following response could be received:

ERR 100663406 Card removed <SCD>

To restore the communication, either kill the gpg-agent or run gpg --card-status again.

Tip: alternative gpg-connect-agent reloadagent /bye is not sufficient.

Compatibility

nitropy requires Python 3.9 or later.

Development

Information for developers and contributors can be found in the Developer Guide.

Contributors

pynitrokey development has been supported by these contributors:

Maintainers

Current maintainers can be found in MAINTAINERS.md file.

License

pynitrokey is licensed under either of

at your option.

pynitrokey also contains code originating from these projects:

For more information, see the SDPX license headers in each file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pynitrokey-0.8.5.tar.gz (129.8 kB view details)

Uploaded Source

Built Distribution

pynitrokey-0.8.5-py3-none-any.whl (159.5 kB view details)

Uploaded Python 3

File details

Details for the file pynitrokey-0.8.5.tar.gz.

File metadata

  • Download URL: pynitrokey-0.8.5.tar.gz
  • Upload date:
  • Size: 129.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pynitrokey-0.8.5.tar.gz
Algorithm Hash digest
SHA256 98f847e0876928a03d77cb09386316a467abce48b9a991c51dee2ee1aa364601
MD5 a22cb166a5f18444cbf0c19798774873
BLAKE2b-256 8d4bd6604f4a6785b46c3ff166fa2f373c157e911510ec3bbf6c29d1f0f37b2c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pynitrokey-0.8.5.tar.gz:

Publisher: cd-pypi.yaml on Nitrokey/pynitrokey

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pynitrokey-0.8.5-py3-none-any.whl.

File metadata

  • Download URL: pynitrokey-0.8.5-py3-none-any.whl
  • Upload date:
  • Size: 159.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pynitrokey-0.8.5-py3-none-any.whl
Algorithm Hash digest
SHA256 c5a0a45d81cfd3a39a68d30c7ff97a32c6f4e33992f89c84bc1b3f070bb48b90
MD5 43779e600edccf0c17d27f87a667187f
BLAKE2b-256 7d5bfbf77f4101626ca211b9ad7276168fe6ba4841e3517331de9c4a2e5af9a5

See more details on using hashes here.

Provenance

The following attestation bundles were made for pynitrokey-0.8.5-py3-none-any.whl:

Publisher: cd-pypi.yaml on Nitrokey/pynitrokey

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page