Usage Guide¶
Le SDK Nitrokey Python prend actuellement en charge les dispositifs Nitrokey 3 (nitrokey.nk3.NK3
) et Nitrokey Passe-partout (nitrokey.nkpk.NKPK
). Les deux appareils sont basés sur la même plateforme, Trussed, et partagent donc la même classe de base nitrokey.trussed.TrussedDevice
.
Les appareils trussés peuvent être redémarrés en mode bootloader qui est utilisé pour appliquer les mises à jour du firmware. Les dispositifs en mode bootloader sont accessibles en utilisant nitrokey.nk3.NK3Bootloader
et nitrokey.nkpk.NKPKBootloader
(classe de base nitrokey.trussed.TrussedBootloader
).
Listing and Opening Devices¶
Utilisez la fonction nitrokey.trussed.TrussedDevice.list()
pour lister et ouvrir tous les périphériques connectés: :
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}")
Si vous connaissez le chemin du périphérique, utilisez plutôt 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}")
Des fonctions similaires sont disponibles pour nitrokey.nk3.NK3Bootloader
et nitrokey.nkpk.NKPKBootloader
. Pour lister à la fois les périphériques normaux et les périphériques bootloader, utilisez nitrokey.nk3.list()
et nitrokey.nkpk.list()
.
Note
Actuellement, les périphériques retournés par nitrokey.trussed.TrussedDevice.list()
, nitrokey.nk3.list()
et nitrokey.nkpk.list()
ne sont valides que jusqu’au prochain appel à l’une de ces fonctions. Voir issue 31 pour plus d’informations.
Using Applications¶
Le kit de développement logiciel Nitrokey Python prend en charge ces applications pour tous les dispositifs Trussed :
nitrokey.trussed.admin_app.AdminApp
: accéder aux métadonnées de l’appareil et gérer l’état de configuration de l’appareilnitrokey.trussed.provisioner_app.ProvisionerApp
: setup device in provisioner mode (only applicable for Hacker devices)
The Nitrokey 3 also provides these applications:
nitrokey.nk3.secrets_app.SecretsApp
: stocker en toute sécurité les mots de passe et les informations d’identification
Pour plus d’informations, voir la référence API des classes d’application.