Is it practical for firmware to be uniquely identified in production
You may be asking about a software-only solution but if you are able to add a cheap IC to your board, you can use a 'Silicon Serial Number' chip.

These are tiny ROM chips that each device contains a unique binary number. Examples are Maxim's DS2401 (1-wire bus) and DS28CM00 (I2C) which have a 48-bit unique number.

The number is unique amongst the all the ICs made of that part number by that manufacturer. It's not unique amongst all the SSN chips made by everybody in the world, obviously. But they make it very easy to pick a device for your board and know that each board ever made will read a different and unique number from it.