Let's assume that we want to distinguish original vs fake products when a customer receives them. I was thinking about using a protocol similar to digital signature.

My question is can this problem be mapped to digital signature? If not, what other security protocol can we use?

More details: I was thinking about using the digital signature. Let's assume the original company writes a pair of digital signature and plain text on the product. Then, when customer receives it, (s)he can verifies it using the protocol (you may refer to here (3' 56'') for the protocol), and understands if the item is coming from the original sender or not. However, the attacker can come in the middle, make a product, and copy the digital signature and the plaintext from original one!


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:

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

In the symmetric case:

  1. The product sends a UID to the interrogator
  2. The interrogator sends a challenge to the product
  3. 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.

  • $\begingroup$ oops. yeah. it’s just the standard challenge response scenario. when i get a moment, ill expand the answer $\endgroup$ – b degnan May 31 '19 at 12:20
  • $\begingroup$ yes. I agree about challenge-response protocol. For a case that the product is shipped and there is no network, it is the product itself that we have... $\endgroup$ – Shannon Jun 4 '19 at 4:47
  • $\begingroup$ @Shabnam There's not a very good way to address this you'd need some sort of database of the solutions that is product based. If all of the objects had the same private key, you could do something but I'm pretty sure you'd leak the key almost immediately due to physical access of the items. $\endgroup$ – b degnan Jun 4 '19 at 7:43

A digital signature is not sufficient, because it can be copied. We must let the product hold a secret key not easily extractable from it. It has to be secret so we have some advantage over potential forgers.

We then need some sort of challenge response, where the verifer sends a challenge and only someone with the secret key can produce a valid response.

Assuming the verifier does not share the secret we will need to use asymetric encryption in order to allow the verifier to check the response to the challenge.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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