Thanks for the "device DNA" thing, I did not known that.
I'm planning to make electronic device, based on FPGA or CPLD IC.
I'm afraid that some Chinese "company" can steal my design, and start selling it ten times cheaper than me.
I want to use serial numbers, for protection.
I was thinking to use "serial number IC", like DS2401. I could buy a batch of these ICs, make a list of all SN.
Then, I want to include all valid serial numbers in to my VHDL code. All valid SN will be included in future firmware updates.
If this project will go huge, and there will be no space in FPGA, to remember all SN, I can just make several files, one for devices manufactured in 2017, one for 2018 etc.
Firmware will work only, if it reads valid serial number from hardware.
Even if my harware design will be 100% copied, still, it will not work with DS2401 IC, what is not included in VHDL source code.
And source code will never be release to the internet, only compiled files.
Anyway, I think that DS2401 is not a good protection, because you can connect the logic analyzer, read the SN.
Then, solder microcontroller, what will generate this SN instead of DS2401.
Therefore, I was thinking to use FPGA or CPLD IC, what have hardware OTP serial number.
In this case, I think, only way to clone my device would be to disassemble-reassemble the firmware file.
And that is harder than just creating a new device from scratch.