Актуализация на фърмуера#

Това ръководство описва как да актуализирате фърмуера на Nitrokey 3.

Important

За фърмуер v.1.0.0 и по-нисък актуализацията ще изтрие всички потребителски данни! Уверете се, че сте активирали подходящи резервни методи за влизане и/или се уверете, че Nitrokey 3 не е единственият начин за удостоверяване/2FA за вашите приложения/услуги.

При фърмуер v1.0.1 и по-нови потребителски данни се запазват по време на актуализацията. Както и да е, не забравяйте винаги да имате друго устройство (или метод за влизане), регистрирано в услугата, ако по някаква причина данните ви не се запазят.

Как да актуализирате#

Important

Никога не изключвайте Nitrokey 3 или не прекъсвайте процеса по време на актуализиране, защото това вероятно ще направи устройството ви безполезно!

  1. Уверете се, че имате инсталирана най-новата версия на pynitrokey, моля, проверете инструкциите за инсталиране за вашата операционна система

  2. Изпълнете nitropy nk3 update.

  3. След като получите инструкции от nitropy, докоснете устройството, за да активирате буутлоудъра.

  4. само за MacOS: Ако сте инструктирани от nitropy, изпълнете отново командата update.

  5. Моля, изчакайте, докато процесът приключи. (Това може да варира в зависимост от операционната ви система)

  6. Опционално: стартирайте nitropy nk3 test, за да проверите дали устройството работи правилно след флашването

В случай на грешки, моля, вземете логовете от /tmp директория (/tmp/nitropy.log.*).

Типове версии на фърмуера#

Съществуват три вида версии на фърмуера за Nitrokey 3:

Стабилните версии са най-важни за потребителите. Те са проектирани така, че да са обратно съвместими, да запазват всички потребителски данни и са щателно тествани. На производствени устройства трябва да се използват само стабилни версии.

Кандидат за издаване на **** е предварителен преглед на предстоящо стабилно издание. Тя също трябва да бъде обратно съвместима, но не е тествана толкова щателно, колкото стабилната версия.

Тестовите версии (преди: алфа версии) съдържат допълнителни функции, които все още не са готови за производство. Потребителските данни, създадени с тестово издание, може да не са съвместими с други издания. Тези издания все още се тестват и е по-вероятно да съдържат грешки.

Вижте бележките към изданието release notes в GitHub за повече информация относно наличните функции в дадено издание.

Можете да определите типа на дадена версия на фърмуера по номера на версията:

Тип

Номер на версията

Пример:

стабилно издание

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

v1.3.1

кандидат за освобождаване

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

v1.3.1-rc.1

тестово освобождаване

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

v1.3.1-test.20230414

Защита от понижаване на нивото#

Вграденият софтуер на Nitrokey 3 не може да бъде понижен. Можете да инсталирате само актуализация на фърмуера със същия или по-висок номер на версията major, minor и patch от фърмуера, инсталиран в момента на устройството. Това предпазва от атаки за понижаване, при които сигурна версия на фърмуера би била заменена със стара, потенциално несигурна версия.

Примери:

  • v1.3.1 може да се актуализира до v1.3.1-test.20230414 и обратно, защото имат един и същ номер на главната, второстепенната и на поправката версия.

  • v1.3.1 може да се актуализира на v1.3.2 или v1.4.0, защото номерът на версията се увеличава.

  • v1.3.1 не може да се актуализира до v1.3.0-rc.1, защото номерът на версията ще се намали.

Това се отнася най-вече за потребители, които разчитат на функция от тестовите версии. Потребителите на стабилния фърмуер винаги могат да актуализират до последната налична версия на фърмуера.

Troubleshooting (Linux):#

Проблем: Получавам permission denied for /dev/hidrawX по време на актуализация.

Това вероятно означава, че вашият потребител няма необходимите разрешения за четене и запис на устройството. Уверете се, че сте настроили правилно udev-rules. Изтеглете този набор udev-rules и го поставете в директорията с правилата на udev (например /etc/udev/rules.d). След това извадете вашия Nitrokey 3 от USB слота и стартирайте: udevadm control --reload-rules && udevadm trigger или рестартирайте машината си. След това актуализацията би трябвало да работи без проблем с разрешенията.