Usage Guide¶
L’SDK Nitrokey Python supporta attualmente i dispositivi Nitrokey 3 (nitrokey.nk3.NK3
) e Nitrokey Chiave d’accesso (nitrokey.nkpk.NKPK
). Entrambi i dispositivi sono basati sulla stessa piattaforma, Trussed, e quindi condividono la stessa classe base nitrokey.trussed.TrussedDevice
.
I dispositivi collegati possono essere riavviati in modalità bootloader, utilizzata per applicare gli aggiornamenti del firmware. È possibile accedere ai dispositivi in modalità bootloader utilizzando nitrokey.nk3.NK3Bootloader
e nitrokey.nkpk.NKPKBootloader
(classe base nitrokey.trussed.TrussedBootloader
).
Listing and Opening Devices¶
Utilizzare la funzione nitrokey.trussed.TrussedDevice.list()
per elencare e aprire tutti i dispositivi collegati:
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}")
Se si conosce il percorso del dispositivo, utilizzare invece nitrokey.trussed.TrussedDevice.open()
:
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}")
Funzioni simili sono disponibili per nitrokey.nk3.NK3Bootloader
e nitrokey.nkpk.NKPKBootloader
. Per elencare sia i dispositivi normali che quelli con bootloader, usare nitrokey.nk3.list()
e nitrokey.nkpk.list()
.
Nota
Attualmente, i dispositivi restituiti da nitrokey.trussed.TrussedDevice.list()
, nitrokey.nk3.list()
e nitrokey.nkpk.list()
sono validi solo fino alla successiva chiamata a una di queste funzioni. Per ulteriori informazioni, vedere issue 31.
Using Applications¶
L’SDK Nitrokey Python supporta queste applicazioni per tutti i dispositivi Trussed:
nitrokey.trussed.admin_app.AdminApp
: accesso ai metadati del dispositivo e gestione dello stato di configurazione dello stessonitrokey.trussed.provisioner_app.ProvisionerApp
: impostazione del dispositivo in modalità provisioner (applicabile solo ai dispositivi Hacker)
The Nitrokey 3 also provides these applications:
nitrokey.nk3.secrets_app.SecretsApp
: memorizza in modo sicuro le password e le credenziali.
Per ulteriori informazioni, consultare il riferimento API per le classi di applicazioni.