nitrokey.trussed

Submodules

Αντικείμενα συσκευής με δέστρες

class nitrokey.trussed.TrussedBase

Βασική κλάση για συσκευές Nitrokey που χρησιμοποιούν το πλαίσιο Trussed και εκτελούν το firmware ή τον bootloader.

abstract close()
Επιστρεφόμενος τύπος:

None

abstract reboot()
Επιστρεφόμενος τύπος:

bool

abstract uuid()
Επιστρεφόμενος τύπος:

Uuid | None

abstract property name: str
abstract property path: str
abstract property pid: int
property vid: int
class nitrokey.trussed.TrussedDevice

Βάσεις: TrussedBase

__init__(device, fido2_certs)
Παράμετροι:
  • device (CtapHidDevice)

  • fido2_certs (Sequence[Fido2Certs])

Επιστρεφόμενος τύπος:

None

close()
Επιστρεφόμενος τύπος:

None

abstract classmethod from_device(device)
Παράμετροι:

device (CtapHidDevice)

Επιστρεφόμενος τύπος:

T

classmethod list()
Επιστρεφόμενος τύπος:

list[T]

classmethod open(path)
Παράμετροι:

path (str)

Επιστρεφόμενος τύπος:

T | None

reboot()
Επιστρεφόμενος τύπος:

bool

uuid()
Επιστρεφόμενος τύπος:

Uuid | None

wink()
Επιστρεφόμενος τύπος:

None

property path: str
class nitrokey.trussed.TrussedBootloader

Βάσεις: TrussedBase

abstract update(image, callback=None)
Παράμετροι:
  • image (bytes)

  • callback (Callable[[int, int], None] | None)

Επιστρεφόμενος τύπος:

None

abstract property variant: Variant

Update Container Objects

nitrokey.trussed.parse_firmware_image(variant, data, model)
Παράμετροι:
Επιστρεφόμενος τύπος:

FirmwareMetadata

class nitrokey.trussed.FirmwareContainer

FirmwareContainer(version: nitrokey.trussed._utils.Version, pynitrokey: Optional[nitrokey.trussed._utils.Version], images: Dict[nitrokey.trussed._bootloader.Variant, bytes])

__init__(version, pynitrokey, images)
Παράμετροι:
Επιστρεφόμενος τύπος:

None

classmethod parse(path, model)
Παράμετροι:
  • path (str | BytesIO)

  • model (Model)

Επιστρεφόμενος τύπος:

FirmwareContainer

images: Dict[Variant, bytes]
pynitrokey: Version | None
version: Version
class nitrokey.trussed.FirmwareMetadata

FirmwareMetadata(version: Nitrokey.trussed._utils.Version, signed_by: Optional[str] = None, signed_by_nitrokey: bool = False)

__init__(version, signed_by=None, signed_by_nitrokey=False)
Παράμετροι:
  • version (Version)

  • signed_by (str | None)

  • signed_by_nitrokey (bool)

Επιστρεφόμενος τύπος:

None

signed_by: str | None = None
signed_by_nitrokey: bool = False
version: Version
class nitrokey.trussed.Variant

Βάσεις: Enum

classmethod from_str(s)
Παράμετροι:

s (str)

Επιστρεφόμενος τύπος:

Variant

LPC55 = 'lpc55'
NRF52 = 'nrf52'

Αντικείμενα κοινής ωφέλειας

class nitrokey.trussed.App

Βάσεις: Enum

Εντολές CTAPHID ειδικά για τον προμηθευτή για εφαρμογές Trussed.

ADMIN = 114
PROVISIONER = 113
SECRETS = 112
class nitrokey.trussed.Fido2Certs

Fido2Certs(start: Nitrokey.trussed._utils.Version, hashes: list[str])

__init__(start, hashes)
Παράμετροι:
  • start (Version)

  • hashes (list[str])

Επιστρεφόμενος τύπος:

None

static get(certs, version)
Παράμετροι:
Επιστρεφόμενος τύπος:

Fido2Certs | None

hashes: list[str]
start: Version
class nitrokey.trussed.Model

Βάσεις: Enum

classmethod from_str(s)
Παράμετροι:

s (str)

Επιστρεφόμενος τύπος:

Model

NK3 = 'Nitrokey 3'
NKPK = 'Nitrokey Passkey'
property firmware_pattern: Pattern[str]
property firmware_repository: Repository
class nitrokey.trussed.Uuid

UUID of a Nitrokey Trussed device.

__init__(value)
Παράμετροι:

value (int)

Επιστρεφόμενος τύπος:

None

value: int
class nitrokey.trussed.Version

Η έκδοση μιας συσκευής Nitrokey Trussed, σύμφωνα με το Semantic Versioning 2.0.0.

Ορισμένες πηγές πληροφοριών για την έκδοση, δηλαδή η έκδοση που επιστρέφεται από παλαιότερες συσκευές και τα δυαδικά αρχεία υλικολογισμικού, δεν περιέχουν το στοιχείο προ-έκδοσης. Αυτές οι περιπτώσεις επισημαίνονται με complete=False. Αυτή η σημαία επηρεάζει τη σύγκριση: Η προ-έκδοση λαμβάνεται υπόψη μόνο εάν και οι δύο περιπτώσεις έκδοσης είναι πλήρεις.

>>> Version(1, 0, 0)
Version(major=1, minor=0, patch=0, pre=None, build=None)
>>> Version.from_str("1.0.0")
Version(major=1, minor=0, patch=0, pre=None, build=None)
>>> Version.from_v_str("v1.0.0")
Version(major=1, minor=0, patch=0, pre=None, build=None)
>>> Version(1, 0, 0, "rc.1")
Version(major=1, minor=0, patch=0, pre='rc.1', build=None)
>>> Version.from_str("1.0.0-rc.1")
Version(major=1, minor=0, patch=0, pre='rc.1', build=None)
>>> Version.from_v_str("v1.0.0-rc.1")
Version(major=1, minor=0, patch=0, pre='rc.1', build=None)
>>> Version.from_v_str("v1.0.0-rc.1+git")
Version(major=1, minor=0, patch=0, pre='rc.1', build='git')
__init__(major, minor, patch, pre=None, build=None, complete=False)
Παράμετροι:
  • major (int)

  • minor (int)

  • patch (int)

  • pre (str | None)

  • build (str | None)

  • complete (bool)

Επιστρεφόμενος τύπος:

None

core()

Επιστρέφει το βασικό μέρος αυτής της έκδοσης, δηλαδή την έκδοση χωρίς τα στοιχεία προ-έκδοσης και κατασκευής.

>>> Version(1, 0, 0).core()
Version(major=1, minor=0, patch=0, pre=None, build=None)
>>> Version(1, 0, 0, "rc.1").core()
Version(major=1, minor=0, patch=0, pre=None, build=None)
>>> Version(1, 0, 0, "rc.1", "git").core()
Version(major=1, minor=0, patch=0, pre=None, build=None)
Επιστρεφόμενος τύπος:

Version

classmethod from_int(version)
Παράμετροι:

version (int)

Επιστρεφόμενος τύπος:

Version

classmethod from_str(s)
Παράμετροι:

s (str)

Επιστρεφόμενος τύπος:

Version

classmethod from_v_str(s)
Παράμετροι:

s (str)

Επιστρεφόμενος τύπος:

Version

build: str | None = None
complete: bool = False
major: int
minor: int
patch: int
pre: str | None = None

Trussed Exceptions

class nitrokey.trussed.TrussedException

Βάσεις: Exception

class nitrokey.trussed.TimeoutException

Βάσεις: TrussedException

__init__()
Επιστρεφόμενος τύπος:

None