Firmwareopdatering#

(Nitrokey 3 - Linux)

Denne vejledning beskriver, hvordan du opdaterer firmwaren på Nitrokey 3.

Vigtigt

For firmware v.1.0.0.0 og lavere vil opdateringen slette alle brugerdata! Sørg for, at du har aktiveret korrekte backup-loginmetoder og/eller sørg for, at Nitrokey 3 ikke er den eneste måde at autentificere/2FA på for dine programmer/tjenester.

For firmware v1.0.1 og derover bevares brugerdata under opdateringen. Sørg for altid at have en anden enhed (eller loginmetode) registreret i din tjeneste, hvis dine data af en eller anden grund ikke bevares.

Sådan opdaterer du#

Vigtigt

Afbryd aldrig Nitrokey 3 eller afbryd processen under opdatering, da dette sandsynligvis vil gøre din enhed ubrugelig!

  1. Sørg for, at du har den nyeste pynitrokey-version installeret, se venligst installationsvejledningen for dit operativsystem.

  2. Kør nitropy nk3 update.

  3. Når du har fået besked af nitropy, skal du røre ved enheden for at aktivere bootloader.

  4. Kun MacOS: Hvis du får besked fra nitropy, skal du køre opdateringskommandoen igen.

  5. Vent venligst, indtil processen er afsluttet. (Dette kan variere afhængigt af dit styresystem)

  6. Optionel: kør nitropy nk3 test for at kontrollere, om enheden fungerer korrekt efter flashing

Hvis der opstår fejl, skal du tage logfilerne fra /tmp mappen (/tmp/nitropy.log.*).

Typer af firmwareudgivelser#

Der er tre typer firmwareudgivelser til Nitrokey 3:

Stabile udgivelser er det vigtigste for brugerne. De er designet til at være bagudkompatible og til at bevare alle brugerdata, og de er grundigt testet. På produktionsenheder bør der kun anvendes stabile udgivelser.

En release candidate er en forpremiere på en kommende stabil udgave. Den skulle også være bagudkompatibel, men den er ikke testet lige så grundigt som en stabil version.

Testudgaverne (tidligere: alpha-udgaver) indeholder yderligere funktioner, som endnu ikke er klar til produktion. Brugerdata, der er oprettet med en testudgave, er muligvis ikke kompatible med andre udgaver. Disse udgivelser er stadig under testning og indeholder sandsynligvis flere fejl.

Se release notes på GitHub for at få flere oplysninger om de funktioner, der er tilgængelige i en version.

Du kan identificere typen af en firmwareudgave ved hjælp af dens versionsnummer:

Type

Versionsnummer

Eksempel

stabil udgivelse

v<major>.<minor>.<patch>

v1.3.1

udgivelseskandidat

v<major>.<minor>.<patch>-rc.<counter>

v1.3.1-rc.1

testudgivelse

v<major>.<minor>.<patch>-test.<date>

v1.3.1-test.20230414

Beskyttelse mod nedgradering#

Nitrokey 3’s firmware kan ikke nedgraderes. Du kan kun installere en firmwareopdatering med det samme eller et højere major-, minor- og patch-versionnummer end den firmware, der er installeret på enheden i øjeblikket. Dette beskytter mod downgrade-angreb, hvor en sikker firmwareversion erstattes med en gammel, potentielt usikker version.

Eksempler:

  • v1.3.1 kan opdateres til v1.3.1-test.20230414 og omvendt, fordi de har samme major-, minor- og patch-versionnummer.

  • v1.3.1 kan opdateres til v1.3.2 eller v1.4.0, fordi versionsnummeret stiger.

  • v1.3.1 kan ikke opdateres til v1.3.0-rc.1, fordi versionsnummeret ville blive mindre.

Dette er især relevant for brugere, der er afhængige af en funktion fra testudgaverne. Brugere af den stabile firmware kan altid opdatere til den seneste tilgængelige firmwareversion.

Fejlfinding#

Problem: Jeg får permission denied for /dev/hidrawX under opdatering.

Det betyder sandsynligvis, at din bruger ikke har de nødvendige tilladelser til at læse og skrive på enheden. Kontroller, at du har oprettet de korrekte `udev-regler`_ . Hent dette udev-rules-sæt, og placer det i din udev-regelsmappe (f.eks. /etc/udev/rules.d). Tag derefter din Nitrokey 3 ud af USB-stikket og kør: udevadm control --reload-rules && udevadm trigger eller genstart din maskine. Herefter burde opdateringen fungere uden problemet med tilladelser.