Distinguishing Original VS Fake Products
This problem is well defined for supply chain management, and generally you use a challenge-response.  In RFID, you an use asymmetric or symmetric schemes to verify that a product is authentic.  I give RFID as an example because you should be able find a lot of documentation on them.

In the asymmetric case:


A authentic product public key is on the interrogator and the product sends a unique id  (UID).
The interrogator responds with the created signature
The product sends it's signature


In the symmetric case:


The product sends a UID to the interrogator
The interrogator sends a challenge to the product
The product sends a response.


The asymmetric case allows you verify the authenticity of a class of product without a network to know the key for each device.  The symmetric case requires some method to get the key to the interrogator to verify the response because usually the key and the challenge verification are on a server somewhere.

Grab any notes on verifying a supply chain and these schemes will be described in detail.

Update:  An example from NXP.