What are you looking for?

Using OEMSafetyKey

How to program and verify the OEM Safety Key

Programming Step – Option A

Using GenICam Browser:

  • Go to the GenApi tab of the interface module.
  • Write a secret key to ProgramOemSafetyKey
  • Copy the value of EncryptedOemSafetyKey and paste it somewhere appropriate.

Note: There is a direct relationship between the programming key and the encrypted key. A given programming key will always lead to the same encrypted key, even on different computers or with different Coaxlink cards. This makes it possible to read the encrypted key once and hard-code this value in the application that must be protected by the OEM safety key.

Programming Step – Option B

Using a custom application:

  1. Program the OEM safety key of the Coaxlink card by writing a secret key to ProgramOemSafetyKey.
  2. Read back the encrypted key by reading EncryptedOemSafetyKey. Write this value somewhere appropriate.

grabber.set<InterfacePort>("ProgramOemSafetyKey","plain-text key");               // 1
std::stringencryptedKey=grabber.get<InterfacePort>("EncryptedOemSafetyKey");      // 2

Verification Step

In the application that must be protected by the OEM key:

InterfacePort>("CheckOemSafetyKey[EncryptedKey]", "encrypted key retrieved in the programming step");
Note: Even if the encrypted key is discovered and an attacker uses it to reprogram cards, the above verification will fail.