Usage Guide

Nitrokey Python SDK obsługuje obecnie urządzenia Nitrokey 3 (nitrokey.nk3.NK3) i Nitrokey Passkey (nitrokey.nkpk.NKPK). Oba urządzenia są oparte na tej samej platformie, Trussed, i dlatego dzielą tę samą klasę bazową nitrokey.trussed.TrussedDevice.

Urządzenia z kratownicą mogą zostać zrestartowane do trybu bootloadera, który jest używany do stosowania aktualizacji firmware. Urządzenia w trybie bootloadera mogą być dostępne przy użyciu nitrokey.nk3.NK3Bootloader i nitrokey.nkpk.NKPKBootloader (klasa bazowa nitrokey.trussed.TrussedBootloader).

Listing and Opening Devices

Użyj funkcji nitrokey.trussed.TrussedDevice.list(), aby wyświetlić listę i otworzyć wszystkie podłączone urządzenia:

from nitrokey.nk3 import NK3
from nitrokey.nkpk import NKPK

print("Connected Nitrokey devices:")
for device in NK3.list():
    print(f"- {device.name} at {device.path}")
for device in NKPK.list():
    print(f"- {device.name} at {device.path}")

Jeśli znasz ścieżkę urządzenia, użyj nitrokey.trussed.TrussedDevice.open() zamiast:

from nitrokey.nk3 import NK3
from nitrokey.nkpk import NKPK

path = "/dev/hidraw1"
device = NK3.open(path)
if device is not None:
    print(f"Found {device.name} at {path}")
device = NKPK.open(path)
if device is not None:
    print(f"Found {device.name} at {path}")

Podobne funkcje są dostępne dla nitrokey.nk3.NK3Bootloader i nitrokey.nkpk.NKPKBootloader. Aby wyświetlić listę urządzeń normalnych i bootloaderów, użyj nitrokey.nk3.list() i nitrokey.nkpk.list().

Informacja

Obecnie urządzenia zwrócone przez nitrokey.trussed.TrussedDevice.list(), nitrokey.nk3.list() i nitrokey.nkpk.list() są ważne tylko do następnego wywołania którejkolwiek z tych funkcji. Zobacz wydanie 31 po więcej informacji.

Using Applications

Nitrokey Python SDK obsługuje te aplikacje dla wszystkich urządzeń Trussed:

The Nitrokey 3 also provides these applications:

  • py:class:nitrokey.nk3.secrets_app.SecretsApp: bezpieczne przechowywanie haseł i danych uwierzytelniających

Więcej informacji można znaleźć w odnośniku API dla klas aplikacji.