De lo que recojo, la clave AES se carga en el chip. Y también puede haber una verificación de CR232 en el firmware o conjunto de fusibles OTP
fuente
Admite el arranque no seguro desde interfaces UART y USB (clase DFU) durante
desarrollo. Una vez que la clave AES está programada en la OTP, solo se inicia el arranque seguro
permitido a través de UART y USB.
Esto no significa que no pueda ser pirateado, si le dedicas tiempo. Me gustaría verificar si los pines JTAG se han deshabilitado y comenzar desde allí.
algunas declaraciones interesantes de la guía del usuario
7.1 caso de uso de línea de producción
En la línea de producción NXP, la OTP se probará y programará utilizando JTAG. En prueba
En el modo, se accederá directamente al propio bloque de fusibles. Durante la programación el VPP
Necesita un voltaje más alto que en el caso de uso de la aplicación. Los datos escritos se verifican después
mediante la lectura de los fusibles (utilizando un bajo voltaje en VPP)
El cliente también programará la OTP solo en la línea de producción, aquí DFU
Se utilizará la programación.
Una imagen para programar bits seleccionados por el cliente se puede cargar en el dispositivo a través de USB.
7.2 Caso de uso de la aplicación
En lo esencial, es importante asegurarse de que el registro data_15 se actualice temprano durante el
La inicialización (por código de inicio) establecerá el nivel de seguridad. Cuatro niveles de seguridad son
implementado en el diseño:
• Nivel 0: nada está protegido.
• Nivel 1: protegido por contraseña. En este nivel, JTAG puede habilitarse por software después de
secuencia de contraseñas (depende de la aplicación del cliente) configurando el bit de pegado
'JTAG_EN' en el registro OTP_con.
• Nivel 2: en este nivel, el acceso JTAG puede habilitarse utilizando equipos de prueba especiales.
Utilizado por NXP solo para el análisis de material devuelto.
• Nivel 3: JTAG está completamente deshabilitado y, por lo tanto, el chip está prácticamente bloqueado.
El cliente puede programar el nivel de seguridad del chip. Para el nivel 1, el fusible 509 debería
ser establecido Para el nivel 2, se establecen los bits de fusible 509 y 510. Para el nivel 3, fusibles 509, 510 y 511.
estan programados Un caso especial será que el cliente desactive la escritura en los fusibles,
pero como en la aplicación se conectará un bajo voltaje (para lectura) al VPP, la escritura
De todos modos no será posible.
Durante la aplicación normal, los fusibles ya se habrán programado en el
línea de producción. Así que quedan tres opciones: copiar los datos del fusible en los registros de datos,
leyendo estos datos, y configurando la protección de lectura. El código de arranque copiará los datos del fusible.
en los registros de datos porque esto es necesario para la seguridad y DRM. Después de esto, los datos.
Se puede leer desde los registros de datos a través del bus APB0 (según la protección de lectura
configuración).
Editar: si la clave está realmente cargada, solo podrás cargar firmware personalizado si tienes la clave.