Usage Guide¶
Nitrokey Python SDK stöder för närvarande Nitrokey 3 (nitrokey.nk3.NK3) och Nitrokey Passkey (nitrokey.nkpk.NKPK) enheter. Båda enheterna är baserade på samma plattform, Trussed, och delar därför samma basklass nitrokey.trussed.TrussedDevice.
Trussed-enheter kan startas om till ett bootloader-läge som används för att tillämpa firmware-uppdateringar. Enheter i bootloader-läge kan nås med hjälp av nitrokey.nk3.NK3Bootloader och nitrokey.nkpk.NKPKBootloader (basklass nitrokey.trussed.TrussedBootloader).
Listing and Opening Devices¶
Använd funktionen nitrokey.trussed.TrussedDevice.list() för att lista och öppna alla anslutna enheter:
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}")
Om du känner till enhetens sökväg, använd nitrokey.trussed.TrussedDevice.open() istället:
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}")
Liknande funktioner finns för nitrokey.nk3.NK3Bootloader och nitrokey.nkpk.NKPKBootloader. Om du vill lista både normala enheter och bootloader-enheter använder du nitrokey.nk3.list() och nitrokey.nkpk.list().
Observera
För närvarande är de enheter som returneras av nitrokey.trussed.TrussedDevice.list(), nitrokey.nk3.list() och nitrokey.nkpk.list() endast giltiga fram till nästa anrop till någon av dessa funktioner. Se utgåva 31 för mer information.
Using Applications¶
Nitrokey Python SDK stöder dessa applikationer för alla Trussed-enheter:
nitrokey.trussed.admin_app.AdminApp: åtkomst till enhetsmetadata och hantering av enhetskonfigurationsstatusnitrokey.trussed.provisioner_app.ProvisionerApp: ställa in enheten i provisionerläge (endast tillämpligt för Hacker-enheter)
The Nitrokey 3 also provides these applications:
nitrokey.nk3.secrets_app.SecretsApp: lagra lösenord och autentiseringsuppgifter på ett säkert sätt
Se API-referensen för applikationsklasserna för mer information.