Symmetric Authentication - Use Case Example
Authentication - to prove that something is real, true, or genuine.
In terms of computer security, it is a process in which two entities exchange information to authenticate the identity of the other.
In this use case example, we will authenticate an object. It can be an accessory, peripheral, battery, or cartridge. Generally, an object that is removable and replaceable by the consumer. The purpose of authenticating an object is to ensure that it is genuine and it is authorized to connect to a product. Another purpose is to prevent cloning and counterfeiting.
This method avoids the need for an Internet connection and white (or black) list. A white list is a lookup table for identifying approved units. A black list is a lookup table for identifying non-approved units.
This method also allows for a limited number of uses. If the object is to only be used a limited number of times, a counter counts the number of uses. Once the specified number of uses has been reached, authentication ceases and the object can no longer be used.
Symmetric authentication uses symmetric key algorithms (also known as secret key algorithms).
The Provisioning Process (Factory Setup)
The Authority creates a Secret Key which will be used as the Parent Key for the system.
The Parent Key is sent to each Manufacturing Module. Each manufacturing site will have its own Manufacturing Module.
The device which will act as the Host in the field needs to have knowledge of the Parent Key.
This completes the provisioning stage done during the time of manufacture.
The Authentication Process (Running in the field)
The next two figures show the run-time authentication process the Host uses to prove that the Peripheral is genuine. All aspects of the authentication process are done through runtime firmware.
The Host must now recreate the Derived Key, which is unique to this Peripheral. The Host requests the unique serial number of the Peripheral and performs a hash function with the Parent Key which creates a Derived Key uniquely associated with the end product Peripheral.
The Host asks for the result from the Peripheral and compares it against the result it generated. If the two results match, then the Peripheral is genuine.
If the Peripheral should only be used a limited number of times, a monotonic counter is decremented each time an authentication occurs. When the counter reaches zero, no more hashing results are produced. The device cannot be authenticated and therefore should be disposed and replaced.