Mi departamento de la empresa en la que estoy trabajando está a cargo del desarrollo de un circuito para la producción, y la seguridad en el sistema integrado es un requisito crucial. El prototipo actual de nuestro sistema integrado ejecuta Linux en una tarjeta micro SD (con una MPU, Am335x). Mi trabajo ahora es cambiar el diseño a algo más seguro, algo que el usuario no pueda modificar fácilmente. Sin embargo, no he hecho esto en el pasado, así que no estoy realmente seguro de cuáles son las pautas.
Mis pensamientos hasta ahora:
Busque un chip EMCC en un paquete BGA con una capa interna en el PCB para las huellas. De esa manera sería imposible reprogramarlo a menos que el usuario destruya la PCB. Sin embargo, estoy teniendo dificultades para encontrar un chip de emmc en Digikey, al parecer no son muy comunes y están agotados.
Otra cosa que estaba pensando era que no estaba usando un EMMC sino un flash NOR seguro. Sin embargo, no estoy realmente seguro de si eso aumentaría el tiempo de desarrollo en mi departamento porque supongo que eso requeriría modificar los árboles de dispositivos en nuestro AM335x para que funcione con un NOR seguro en lugar de un EMMC o una tarjeta micro SD.
Editar: El requisito de seguridad al que me refiero en esta publicación está relacionado únicamente con el hardware. Estamos utilizando un TPM para el arranque seguro y un protocolo de certificación remota para afirmar el estado de los PCR de forma remota. Todo el software (nuevo firmware) debe tener un código firmado para ejecutarse. Además, todos los datos sensibles en flash están encriptados. Por lo tanto, no me preocupa que alguien termine de leer y leer el EMMC. Sin embargo, me preocupa toda la comunicación que va desde el EMMC al AM335x, así que debo asegurarme de que sería difícil para alguien conectar una sonda de prueba a las trazas de PCB . Y, por supuesto, volviendo a grabar el chip y / o resolviendo uno nuevo . Esos son los dos requisitos básicos que necesito.
Cualquier orientación sobre esto sería muy apreciada.
Gracias de antemano.