Atualização do Firmware#

Este guia descreve como actualizar o firmware na Nitrokey 3.

Importante

**Certifique-se de que tem os métodos de login de backup adequados activados e/ou assegure-se de que o Nitrokey 3 não é a única forma de autenticar/2FA para as suas aplicações/serviços.

For firmware v1.0.1 and above user data is retained during the update. Anyways, be sure to always have another device (or login method) registered with your service, if for some reason your data is not retained.

Como atualizar#

Importante

Nunca desconecte a Nitrokey 3 ou aborte o processo durante a atualização, isso provavelmente tornará seu aparelho inútil!

  1. Certifique-se de que tem a última versão pynitrokey instalada, por favor verifique as instruções de instalação para o seu SO

  2. Corre nitropy nk3 update``.

  3. Uma vez instruído por nitropy toca no dispositivo para activar o carregador de arranque.

  4. sómacOS: Se instruído por nitropy executar novamente o comando update.

  5. Por favor, aguarde até o processo estar concluído. (Isto pode variar em função do seu sistema operativo)

  6. Opcional: correr nitropy nk3 test para verificar se o dispositivo está a funcionar correctamente depois de piscar

No caso de algum erro, por favor pegue os logs de /tmp directório (/tmp/nitropy.log.*).

Firmware Release Types#

There are three types of firmware releases for the Nitrokey 3:

Stable releases are most important for users. They are designed to be backward compatible and to retain all user data and are thoroughly tested. On production devices, only stable releases should be used.

A release candidate is a preview of an upcoming stable release. It should also be backward compatible but is not tested as thoroughly as a stable release.

Test releases (previously: alpha releases) contain additional features that are not ready for production yet. User data created with a test release may not be compatible with other releases. These releases are still being tested and are more likely to contain bugs.

See the release notes on GitHub for more information on the features available in a release.

You can identify the type of a firmware release by its version number:

Type

Version Number

Example

stable release

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

v1.3.1

release candidate

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

v1.3.1-rc.1

test release

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

v1.3.1-test.20230414

Downgrade Protection#

The firmware of the Nitrokey 3 cannot be downgraded. You can only install a firmware update with the same or a higher major, minor and patch version number than the firmware currently installed on the device. This protects against downgrade attacks where a secure firmware version would be replaced with an old, potentially insecure version.

Examples:

  • v1.3.1 can be updated to v1.3.1-test.20230414 and vice versa because they have the same major, minor and patch version number.

  • v1.3.1 can be updated to v1.3.2 or v1.4.0 because the version number increases.

  • v1.3.1 cannot be updated to v1.3.0-rc.1 because the version number would decrease.

This is mostly relevant for users that rely on a feature from the test releases. Users of the stable firmware can always update to the latest available firmware version.

Resolução de problemas:#

Issue: Eu recebo permission denied for /dev/hidrawX durante a atualização.

Isso provavelmente significa que seu usuário não tem as permissões necessárias para ler-escrever o dispositivo. Por favor, certifique-se de que você configurou o correto udev-rules. Faça o download deste udev-rules set e coloque-o no seu directório de regras udev (por exemplo, /etc/udev/rules.d`). Depois retire o seu Nitrokey 3 da ranhura USB e execute: udevadm control --reload-rules && udevadm trigger` ou reinicie a sua máquina. Depois disso a atualização deve funcionar sem a emissão da permissão.