Usage Guide¶
Понастоящем Nitrokey Python SDK поддържа устройства Nitrokey 3 (nitrokey.nk3.NK3) и Nitrokey Passkey (nitrokey.nkpk.NKPK). И двете устройства се основават на една и съща платформа - Trussed, и следователно споделят един и същ базов клас nitrokey.trussed.TrussedDevice.
Свързаните устройства могат да бъдат рестартирани в режим на зареждане, който се използва за прилагане на актуализации на фърмуера. Достъпът до устройствата в режим bootloader може да се осъществи с помощта на nitrokey.nk3.NK3Bootloader и nitrokey.nkpk.NKPKBootloader (базов клас nitrokey.trussed.TrussedBootloader).
Listing and Opening Devices¶
Използвайте функцията nitrokey.trussed.TrussedDevice.list(), за да изброите и отворите всички свързани устройства:
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}")
Ако знаете пътя до устройството, използвайте вместо това 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}")
Подобни функции са налични за nitrokey.nk3.NK3Bootloader и nitrokey.nkpk.NKPKBootloader. За да изведете в списък както нормалните устройства, така и устройствата с bootloader, използвайте nitrokey.nk3.list() и nitrokey.nkpk.list().
Note
Понастоящем устройствата, върнати от nitrokey.trussed.TrussedDevice.list(), nitrokey.nk3.list() и nitrokey.nkpk.list(), са валидни само до следващото извикване на някоя от тези функции. Вижте issue 31 за повече информация.
Using Applications¶
Nitrokey Python SDK поддържа тези приложения за всички устройства с ферми:
- nitrokey.trussed.admin_app.AdminApp: достъп до метаданните на устройството и управление на състоянието на конфигурацията на устройството
- nitrokey.trussed.provisioner_app.ProvisionerApp: настройка на устройството в режим на провизор (приложимо само за устройствата Hacker)
The Nitrokey 3 also provides these applications:
- nitrokey.nk3.secrets_app.SecretsApp: сигурно съхранение на пароли и пълномощия
За повече информация вижте справката за API на класовете за приложения.