К основному содержимому

Проверка исходного кода с открытым исходным кодом для прошивки, установленной на устройствах аппаратного кошелька OneKey

Обновлено вчера

В этой статье представлено пошаговое руководство, которое поможет вам проверить соответствие прошивки, установленной на вашем аппаратном кошельке OneKey, ее соответствующему исходному коду с открытым исходным кодом на GitHub.

Важно

Чип безопасности, встроенный в аппаратный кошелек OneKey, подписан официальной мультиподписью во время производства. Если прошивка аппаратного кошелька будет злонамеренно изменена хакером, при запуске появится сообщение «Обнаружена неофициальная прошивка».

Процесс

Системная прошивка Прошивка Bluetooth

Шаг 1: Загрузка и установка последней версии прошивки

  • Посетите официальный сайт обновления прошивки OneKey.

  • Подключите аппаратный кошелек OneKey к компьютеру с помощью USB-кабеля.

  • Как только ваше устройство аппаратного кошелька будет обнаружено, вы сможете увидеть информацию о кошельке, отображаемую на веб-сайте.

  • Выберите и загрузите последнюю версию прошивки вашего аппаратного кошелька.

  • Установите прошивку, следуя инструкциям на веб-сайте и подтвердив на своем аппаратном кошельке OneKey.

Шаг 2: Получение контрольной суммы на вашем аппаратном кошельке OneKey

  • Перейдите в раздел «О устройстве» на вашем аппаратном кошельке OneKey.

  • Найдите подробную информацию о прошивке на вашем устройстве аппаратного кошелька OneKey.

  • Вы можете получить первые семь цифр контрольной суммы прошивки вашего устройства из информации о прошивке.

    • Например, 4.9.0[fccbac8-5ff2c88]

    • «fccbac8» — это идентификатор версии прошивки вашего устройства.

    • «5ff2c88» — это первые семь цифр контрольной суммы прошивки вашего устройства.

Шаг 3: Расчет контрольной суммы для исходного кода GitHub

  • Посетите веб-сайт GitHub Release прошивки OneKey: https://github.com/OneKeyHQ/firmware/releases

  • Найдите версию прошивки, для которой вы хотите рассчитать контрольную сумму.

  • Нажмите, чтобы загрузить файл bin в разделе Assets.

github release bin.png
  • Откройте Терминал в вашей операционной системе (требуется macOS/Linux).

  • В зависимости от модели вашего аппаратного кошелька OneKey выберите и выполните соответствующую команду ниже, чтобы рассчитать контрольную сумму.

    • OneKey Classic и OneKey Mini:

    • tail -c +1025 /path/to/(file path) | shasum -a 256 -b

    • OneKey Touch:

    • tail -c +2561 /path/to/(file path) | shasum -a 256 -b

Шаг 4: Сравнение контрольных сумм

  • Сравните первые семь цифр контрольной суммы, рассчитанной вручную на Шаге 3, с контрольной суммой устройства, полученной на Шаге 2.

  • Если оба значения совпадают, это означает, что установленная прошивка соответствует исходному коду с открытым исходным кодом на GitHub.

Шаг 1: Загрузка и установка последней версии прошивки Bluetooth

  • Посетите официальный сайт обновления прошивки OneKey.

  • Подключите аппаратный кошелек OneKey к компьютеру с помощью USB-кабеля.

  • Как только ваше устройство аппаратного кошелька будет обнаружено, вы сможете увидеть информацию о кошельке, отображаемую на веб-сайте.

  • Выберите и загрузите последнюю версию прошивки Bluetooth вашего аппаратного кошелька.

  • Установите прошивку, следуя инструкциям на веб-сайте и подтвердив на своем аппаратном кошельке OneKey.

Шаг 2: Получение контрольной суммы на вашем аппаратном кошельке OneKey

  • Перейдите в раздел «О устройстве» на вашем аппаратном кошельке OneKey.

  • Найдите подробную информацию о прошивке на вашем устройстве аппаратного кошелька OneKey.

  • Вы можете получить первые семь цифр контрольной суммы прошивки вашего устройства из информации Bluetooth.

    • Например, 2.3.1[96bb143-5affc8f]

    • «96bb143» — это идентификатор версии прошивки Bluetooth вашего устройства.

    • «5ff2c8f» — это первые семь цифр контрольной суммы прошивки вашего устройства.

Шаг 3: Расчет контрольной суммы для исходного кода GitHub

pro-bluetooth-firmware-github-release-signed.png
  • Откройте терминал в той же папке, что и загруженный файл bin. (Требуется macOS/Linux)

  • Запустите Python командой: python3. (Загрузите Python здесь)

  • Скопируйте команду ниже:

    • exec("""\nimport struct, hashlib\nwith open("ota.bin", mode="br") as f:\n f.seek(0x0C)\n codelen = struct.unpack("i", f.read(4))[0] - 512\n f.seek(0x600)\n print("".join(format(x, "02x") for x in hashlib.sha256(f.read(codelen)).digest()))\n""")

  • Измените ota.bin (в команде выше) на имя вашего загруженного файла bin.

  • Выполните команду, чтобы получить контрольную сумму.

checksum-github-release.png

Шаг 4: Сравнение контрольных сумм

  • Сравните первые семь цифр контрольной суммы, рассчитанной вручную на Шаге 3, с контрольной суммой устройства, полученной на Шаге 2.

  • Если оба значения совпадают, это означает, что установленная прошивка соответствует исходному коду с открытым исходным кодом на GitHub.

Если вы хотите проверить соответствие файлов прошивки, подписанных и опубликованных командой OneKey в GitHub Release, соответствующим общедоступным исходным кодам в репозиториях OneKey GitHub, обратитесь к этой статье.

Нашли ответ на свой вопрос?