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 на класовете за приложения.