CPC G06Q 30/018 (2013.01) [G06Q 10/0875 (2013.01); G06T 7/0008 (2013.01); H04L 9/0869 (2013.01); H04L 9/3242 (2013.01); H04L 9/50 (2022.05)] | 13 Claims |
1. A method for determining the authenticity of a component in an electronic device, the method comprising:
receiving a seed by a component in the electronic device;
storing the seed in a block of non-volatile memory in the component;
calculating, by the component, the output of a cryptographic function with the input based on the seed and storing the output in the block of non-volatile memory;
iteratively calculating, by the component, the outputs of the cryptographic function wherein for each iteration the input for the cryptographic function is based on the seed and all previous outputs, and for each iteration storing the output in the block of non-volatile memory; and
determining the authenticity of the component based on a selected output of the cryptographic function F, the selected output being one of the outputs stored in the block of non-volatile memory;
calculating, by a second component, the output of the cryptographic function with the input based on the seed in the same manner as the calculation by the component; and
iteratively calculating, by the second component, the outputs of the cryptographic function wherein for each iteration the input for the cryptographic function is based on the seed and all previous outputs in the same manner as the calculation by the component,
wherein the number of iterations of the calculation of the cryptographic function performed by the component is the same as the number of iterations of the calculation of the cryptographic function performed by the second component, and
wherein determining the authenticity of the component comprises comparing the selected output of the cryptographic function of the component with the corresponding output of the cryptographic function of the second component to determine if they are the same.
|