Usage Guide

Nitrokey Python SDK 目前支持 Nitrokey 3 (nitrokey.nk3.NK3) 和 Nitrokey Passkey (nitrokey.nkpk.NKPK) 设备。这两种设备基于相同的平台 Trussed,因此共享相同的基类 nitrokey.trussed.TrussedDevice

桁架式设备可重启至引导加载器模式,用于应用固件更新。可以使用 nitrokey.nk3.NK3Bootloadernitrokey.nkpk.NKPKBootloader 访问引导加载器模式下的设备(基类 nitrokey.trussed.TrussedBootloader)。

Listing and Opening Devices

Use the nitrokey.trussed.list() function to list and open all connected devices:

import nitrokey.trussed

print("Connected Nitrokey devices:")
for device in nitrokey.trussed.list():
    print(f"- {device.name} at {device.path}")

If you know the device path, use nitrokey.trussed.open() instead:

import nitrokey.trussed

path = "/dev/hidraw1"
device = nitrokey.trussed.open(path)
if device is not None:
    print(f"Found {device.name} at {path}")
else:
    print(f"No device found at {path}")

如果知道要连接的型号,还可以使用 nitrokey.nk3nitrokey.nkpk 模块中的``list`` 和``open`` 函数。如果还知道设备的类型,可以使用 nitrokey.nk3.NK3, nitrokey.nkpk.NKPK, nitrokey.nk3.NK3Bootloadernitrokey.nkpk.NKPKBootloader 类中的``list`` 和``open`` 方法。

Using Applications

硝基 Python SDK 支持所有 Trussed 设备的这些应用:

  • py:class:nitrokey.trussed.admin_app.AdminApp:访问设备元数据并管理设备配置状态

  • py:class:nitrokey.trussed.provisioner_app.ProvisionerApp:以供应器模式设置设备(仅适用于黑客设备)。

The Nitrokey 3 also provides these applications:

  • py:class:nitrokey.nk3.secrets_app.SecretsApp:安全地存储密码和凭证

更多信息,请参阅应用程序类的 API 参考资料。