¿Es generalmente posible identificar de manera única una MCU individual (para propósitos de licencia) (no hay una dirección MAC disponible)?

0

Se me pide que mejore el programa de instalación de firmware para una MCU (específicamente, una Freescale MC9S12E64, aunque no sé si esto importa).

El objetivo de la instalación mejorada es limitar la cantidad de veces que se puede instalar el firmware. Parece que la mejor manera de hacerlo sería identificar de forma única la MCU específica en uso durante la instalación del firmware, para poder realizar un seguimiento en una base de datos central.

Si la MCU tiene una dirección MAC, esto parece ser factible. Desafortunadamente, estas MCU no tienen interfaz de red y, por lo tanto, no tienen dirección MAC. Mirando el manual de la MCU que se indicó anteriormente, no puedo encontrar una indicación de un identificador único para la MCU.

Mi pregunta es: ¿las MCU suelen tener identificadores únicos asociados con ellas, de forma análoga a una dirección MAC, que pueden obtenerse mediante el software a medida que se quema el firmware en estos dispositivos?

    
pregunta Dan Nissenbaum

5 respuestas

1

Casi todos lo hacen, pero no siempre son accesibles para los usuarios.

Creo que su problema es más complejo porque está intentando usarlo para imponer una instalación. Tenga en cuenta que muchos de los métodos de DRM fallan cuando un adversario adecuado los ataca (especialmente porque no puede confiar en el microcontrolador porque el usuario tiene el control).

Una búsqueda rápida a través de la hoja de datos del microcontrolador no encontró ninguna serie de identificación. Debes ponerte en contacto directamente con Freescale.

    
respondido por el Gustavo Litovsky
1

Microchip tiene su propio sistema de agregar números de serie únicos a mcu. Pienso ICSP, Programación Serial en Circuito. No estoy seguro de Freescale. Quizás migrar a un mcu diferente es la respuesta. En ese caso, podría programar un número único para cada unidad y almacenarlos en su base de datos.

    
respondido por el rob j loranger
0

El tipo de MCU que tienen número de serie será cualquier cosa que utilice cifrado, como Bluetooth, CPU de estaciones de trabajo, como Intel (aunque entiendo que esta función puede estar desactivada) y, por supuesto, los Ethernet ethernet mencionados anteriormente, que ellos mismos contienen subsistemas MCU elaborados.

El tipo de tecnologías que se pueden usar para un número de serie son limitados. De hecho, puede que cueste más agregar el número de serie que la mayor rentabilidad de su software con licencia. Las técnicas habituales son:

efuse: a type of polysilicon which goes open circuit when a high current is passed.
floating gate transistor: uses quantum mechanical tunnelling to make a small memory.
EEPROM, EAROM, FLASH: uses extra mask layers to provide a memory function.
1-wire serial number interface: a separate chip and low cost interface.

Todos estos métodos requieren máscaras, regalías, tiempo de prueba o todos los anteriores, por lo que generalmente no se implementan en MCU de producción masiva. El costoso procesador de escritorio puede absorber el costo, pero hay problemas de privacidad en países paranoicos como Estados Unidos.

    
respondido por el jrrk
0

Una posible solución a su problema podría ser que el firmware original de la MCU genere un UUID aleatorio en el primer inicio, y escriba esto en la EEPROM. Este UUID se usaría luego como un número de serie único.

Este enfoque falla si las actualizaciones del firmware borran la EEPROM, y también si el usuario / adversario puede borrar la EEPROM. Sin embargo, todos los esquemas DRM pueden ser derrotados y este enfoque al menos detendría la piratería de firmware casual / accidental.

Hay varias formas de generar números aleatorios en MCU. Si cree que esta solución es prometedora, intente encontrar una fuente de ruido, como las fuentes de temporizador sin correlación o los sensores de temperatura.

    
respondido por el avl_sweden
-2

Según este informe de STOA de 1999 "Debería pedirse a los comités pertinentes del Parlamento Europeo que consideren medidas legales para evitar que se instalen chips equipados con [Número de serie del procesador] (o equivalente a PSN) en las computadoras de ciudadanos, empresas y organizaciones europeas."

Entonces, no, generalmente no es posible identificar de forma única una MCU individual.

En mi opinión, GSM, los teléfonos inteligentes y el conocimiento de la ubicación han hecho que toda la decisión sea irrelevante, y ya lo fue en 1999, pero posiblemente la intención real era dañar a la EM y a Intel: de ser así, probablemente fue exitosa.

    
respondido por el david

Lea otras preguntas en las etiquetas