Usage Guide¶
Nitrokey Python SDK は現在、Nitrokey 3 (nitrokey.nk3.NK3
) と Nitrokey パスキー (nitrokey.nkpk.NKPK
) デバイスをサポートしています。両デバイスは同じプラットフォームである Trussed をベースにしているため、同じ基本クラス nitrokey.trussed.TrussedDevice
を共有しています。
トラスデバイスはファームウェアアップデートを適用するために使用されるブートローダモードに再起動することができます。ブートローダモードのデバイスには nitrokey.nk3.NK3Bootloader
と nitrokey.nkpk.NKPKBootloader
(基本クラス nitrokey.trussed.TrussedBootloader
) を使ってアクセスできます。
Listing and Opening Devices¶
py:meth:`ニトロキー.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
にもあります。通常のデバイスとブートローダデバイスの両方をリストアップするには nitrokey.nk3.list()
と nitrokey.nkpk.list()
を使用してください。
注釈
現在のところ、 nitrokey.trussed.TrussedDevice.list()
, nitrokey.nk3.list()
, nitrokey.nkpk.list()
が返すデバイスは、次にこれらの関数を呼び出すまでしか有効ではありません。詳しくは`issue 31<https://github.com/Nitrokey/nitrokey-sdk-py/issues/31>`_ を参照してください。
Using Applications¶
ニトロキーPython SDKは、すべてのTrussedデバイスに対してこれらのアプリケーションをサポートしています:
nitrokey.trussed.admin_app.AdminApp
: デバイスのメタデータにアクセスし、デバイスの設定状態を管理します。nitrokey.trussed.provisioner_app.ProvisionerApp
: プロビジョナーモードでデバイスをセットアップする (Hacker デバイスにのみ適用可能)
The Nitrokey 3 also provides these applications:
nitrokey.nk3.secrets_app.SecretsApp
: パスワードと認証情報を安全に保存する
詳細については、アプリケーション・クラスのAPIリファレンスを参照してください。