Ir al contenido principal

Verificación del código fuente abierto para el firmware instalado en los dispositivos de hardware de OneKey

Actualizado ayer

Este artículo te proporciona una guía paso a paso para ayudarte a autenticar la consistencia del firmware instalado en tu dispositivo de hardware de OneKey con su correspondiente código fuente abierto en GitHub.

Importante

El chip de seguridad integrado en la billetera de hardware OneKey está firmado con una multi-firma oficial en el momento de la fabricación. Si el firmware de la billetera de hardware es manipulado maliciosamente por un hacker, se mostrará un mensaje de 'Firmware no oficial detectado' al inicio.

Proceso

Firmware del Sistema Firmware Bluetooth

Paso 1: Descargar e instalar el último firmware

  • Visita el sitio web oficial de Actualización de Firmware de OneKey.

  • Conecta tu billetera de hardware OneKey a tu computadora a través del cable USB.

  • Una vez que tu dispositivo de billetera de hardware sea detectado, podrás ver la información de la billetera mostrada en el sitio web.

  • Selecciona y descarga la última versión del firmware de tu billetera de hardware.

  • Instala el firmware siguiendo las instrucciones proporcionadas en el sitio web y confirmando en tu billetera de hardware OneKey.

Paso 2: Obtener la suma de verificación (checksum) en tu billetera de hardware OneKey

  • Navega a "Acerca del dispositivo" en tu billetera de hardware OneKey.

  • Encuentra la información detallada del firmware en tu dispositivo de billetera de hardware OneKey.

  • Puedes obtener los primeros siete dígitos de la suma de verificación para el firmware de tu dispositivo a partir de la información del firmware.

    • Por ejemplo, 4.9.0[fccbac8-5ff2c88]

    • "fccbac8" es el ID de versión de tu firmware de dispositivo.

    • "5ff2c88" son los primeros siete dígitos de la suma de verificación de tu firmware de dispositivo.

Paso 3: Calcular la suma de verificación para el código fuente de GitHub

  • Visita el sitio web de GitHub Release del Firmware de OneKey: https://github.com/OneKeyHQ/firmware/releases

  • Encuentra la versión del firmware para la que deseas calcular la suma de verificación.

  • Haz clic para descargar el archivo bin bajo 'Assets'.

github release bin.png
  • Abre la Terminal en tu sistema operativo (requiere macOS/Linux).

  • Según tu modelo de billetera de hardware OneKey, selecciona y ejecuta el comando correspondiente a continuación para calcular la suma de verificación.

    • OneKey Classic & OneKey Mini:

    • tail -c +1025 /ruta/a/(ruta del archivo) | shasum -a 256 -b

    • OneKey Touch:

    • tail -c +2561 /ruta/a/(ruta del archivo) | shasum -a 256 -b

Paso 4: Comparar las sumas de verificación

  • Compara los primeros siete dígitos de la suma de verificación calculada manualmente en el Paso 3 con la suma de verificación del dispositivo obtenida en el Paso 2.

  • Si los dos valores coinciden, indica que el firmware instalado es consistente con el código fuente abierto en GitHub.

Paso 1: Descargar e instalar el último firmware Bluetooth

  • Visita el sitio web oficial de Actualización de Firmware de OneKey.

  • Conecta tu billetera de hardware OneKey a tu computadora a través del cable USB.

  • Una vez que tu dispositivo de billetera de hardware sea detectado, podrás ver la información de la billetera mostrada en el sitio web.

  • Selecciona y descarga la última versión del firmware Bluetooth de tu billetera de hardware.

  • Instala el firmware siguiendo las instrucciones proporcionadas en el sitio web y confirmando en tu billetera de hardware OneKey.

Paso 2: Obtener la suma de verificación (checksum) en tu billetera de hardware OneKey

  • Navega a "Acerca del dispositivo" en tu billetera de hardware OneKey.

  • Encuentra la información detallada del firmware en tu dispositivo de billetera de hardware OneKey.

  • Puedes obtener los primeros siete dígitos de la suma de verificación para el firmware de tu dispositivo a partir de la información Bluetooth.

    • Por ejemplo, 2.3.1[96bb143-5affc8f]

    • "96bb143" es el ID de versión de tu firmware Bluetooth de dispositivo.

    • "5ff2c8f" son los primeros siete dígitos de la suma de verificación de tu firmware de dispositivo.

Paso 3: Calcular la suma de verificación para el código fuente de GitHub

pro-bluetooth-firmware-github-release-signed.png
  • Abre una terminal en la misma carpeta con el archivo bin descargado. (Requiere macOS/Linux)

  • Invoca Python con el comando: python3. (Descarga Python aquí)

  • Copia el siguiente comando:

    • 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""")

  • Cambia ota.bin (en el comando anterior) al nombre de tu archivo bin descargado.

  • Ejecuta el comando para obtener la suma de verificación.

checksum-github-release.png

Paso 4: Comparar las sumas de verificación

  • Compara los primeros siete dígitos de la suma de verificación calculada manualmente en el Paso 3 con la suma de verificación del dispositivo obtenida en el Paso 2.

  • Si los dos valores coinciden, indica que el firmware instalado es consistente con el código fuente abierto en GitHub.

Si deseas verificar la consistencia de los archivos de firmware firmados y publicados en GitHub Release por el equipo de OneKey con los códigos fuente abiertos correspondientes almacenados públicamente en los repositorios de GitHub de OneKey, consulta este artículo.

¿Ha quedado contestada tu pregunta?