Como identificar de forma única os dispositivos ARM sem confiar no endereço MAC?

6

Eu tenho um monte de dispositivos ARM. Eles não diferem em hardware. Posso de alguma forma obter um ID único para cada dispositivo sem usar o endereço MAC? Esse ID deve permanecer o mesmo, mesmo se eu reflash o NAND com um novo kernel e rootfs. Seu hardware é baseado no Atmel AT91SAM9.

    
por OrangeTux 13.05.2016 / 21:04

1 resposta

8

Obtenha a serial do dispositivo em / proc / cpuinfo

grep Serial /proc/cpuinfo 
Serial      : 1651660a0642ebb0

(tirado do meu SoC baseado em A20, Lamobo R1 , também conhecido como Banana Pi R1 e ArmBian / Jessie com kernel 4.5.2)

grep Serial /proc/cpuinfo 
Serial          : 64355040058f0d000000

(retirado do meu Soc H3, Orange Pi One com o kernel Armbian / Jessie 3.4)

Obtendo o seu número de série do Raspberry Pi Usando o Python

Sobre este número de série: Supõe-se que seja único, mas é lido de forma diferente em diferentes SoCs. E às vezes o software ou as configurações falham.

Guia de registro do SID

Few use cases for the SID are, but not limited to:
- Generate per-device unique MAC address
- Store/use as an RSA etc key
- Write in-house serial numbers

No framboesa, esse número geralmente é usado como um SN para comprar uma licença de codec de vídeo. Sabe-se também que a leitura pode falhar quando o u-boot não está configurado corretamente .

Nem todos os SoCs da ARM suportam essa funcionalidade. De acordo com a pergunta atualizada, o Atmel AT91SAM9 parece não ter essa funcionalidade. No entanto, deixarei esta resposta aqui para outras pessoas que pesquisarem por ele.

    
por 13.05.2016 / 22:11

Tags