Эта статья содержит пошаговое руководство, которое поможет вам проверить соответствие прошивки, установленной на вашем аппаратном кошельке 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».
Откройте Терминал в вашей операционной системе (требуется macOS/Linux).
В зависимости от модели вашего аппаратного кошелька OneKey выберите и выполните соответствующую команду ниже, чтобы рассчитать контрольную сумму.
OneKey Classic и OneKey Mini:
tail -c +1025 /path/to/(file path) | shasum -a 256 -bOneKey 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
Перейдите в раздел официальных выпусков прошивки Bluetooth OneKey на GitHub:
OneKey Classic и Classic 1S: https://github.com/OneKeyHQ/bluetooth-firmware-classic/releases
Найдите версию прошивки, для которой вы хотите рассчитать контрольную сумму.
Нажмите, чтобы загрузить файл bin в разделе «Assets».
Откройте терминал в той же папке, что и загруженный файл 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.
Выполните команду, чтобы получить контрольную сумму.
Шаг 4: Сравните контрольные суммы
Сравните первые семь цифр контрольной суммы, рассчитанной вручную в Шаге 3, с контрольной суммой устройства, полученной в Шаге 2.
Если оба значения совпадают, это означает, что установленная прошивка соответствует коду с открытым исходным кодом на GitHub.
Если вы хотите проверить соответствие файлов прошивки, подписанных и опубликованных командой OneKey в GitHub Release, соответствующим общедоступным кодам с открытым исходным кодом в репозиториях OneKey GitHub, обратитесь к этой статье.
