Is there any unique identifier like the serial number (00000000xxxxxxxx), which is specific to an exact board? And which cannot be spoofed or cracked or changed? and can also be retrieved to identify the board type?

Thank you

  • Why won't the serial number work? Commented Jul 25, 2017 at 6:09
  • It is because, I read that it can easily be spoofed. I just wanted it to be unique
    – benny96
    Commented Jul 25, 2017 at 6:10
  • What is the use case? Commented Jul 25, 2017 at 6:11
  • 1
    Have you considered a certificate based approach Commented Jul 25, 2017 at 6:40
  • 1
    Spoofed in what context? If you're going to transmit this unique id it can be changed or impersonated in the transmission. If so, you need a challenge-response approach.
    – Bex
    Commented Jul 25, 2017 at 7:56

1 Answer 1


the only 2 identifiers which are more or less unqiue, I know about, are:

  1. the serial number which you already mentioned, find more details about it here
  2. the MAC address of the eth0 or wlan0 interface. for eth0 you could get it by using cat /sys/class/net/eth0/address or ifconfig eth0 | grep HWaddr | awk '{print $NF}'. The result will be something like b8:27:eb:2e:6a:20

The MAC address is only 48 bits and the serial number looks even less. So they are by no means cryptographically strong.

You could now generate a HMAC of these values, or maybe from both (by chaining).

You should consider that it is possible to disable the wlan0 interface (and probably the eth0 aswell). Which would void your MAC address result, so you need to test for that.

  • The MAC address is 24bit OUI, which is fixed for a specific vendor, and 24bit serial. Then, afaik, the MAC48 is generated from (lower bits?) of the Pi serial number.
    – TheDiveO
    Commented Jul 25, 2017 at 15:32

Not the answer you're looking for? Browse other questions tagged or ask your own question.