Estoy implementando ejecución de código externo para STM32F765VG con flash NOR (8/16 bit). La idea es ejecutar código desde una memoria flash externa. ¿Hay alguna forma de proteger mi código presente en la memoria externa del acceso no autorizado?
He entendido acerca de seguir dos métodos actualmente. Pero, no estoy seguro de si estoy pensando en la dirección correcta. Además, por favor guíame en la dirección correcta.
Método 1:
Cifre el archivo hexadecimal de código completo en bloque, antes de enviarlo a la memoria externa. Cargue los bloques con lectura normal en la RAM interna, descifre en la RAM interna y ejecútelo desde la RAM. Con este método, las partes externas no podrán entender el contenido del código de la memoria flash externa.
Método 2:
Recompile el software para cada combinación de MCU y flash según el ID de hardware exclusivo de la memoria flash y el ID de MCU. De esta manera, incluso si el código es copiado por un tercero, no se ejecutará ya que los ID de la nueva MCU no coincidirán con el ID asumido en el código.
Por favor sugiera si hay prácticas estándar. ¡Gracias de antemano!