Physical unclonable function using message authentication code
AssigneeMicron Technology, Inc.
InventorsAntonino Mondello, Alberto Troia
Life of this patent
Estimating the term…
Abstract
An improved PUF architecture for generating physical unclonable function (PUF) values. The PUF architecture generates an output by feeding inputs provided from one or more PUFs into a message authentication code (MAC) block. The output from the MAC block provides the improved PUF value (e.g., resistant to the preimage hacker attack). The PUFs can be selected by a selector module. An additional input to the MAC block that is used to output a PUF value may be obtained from a monotonic counter that is, for example, incremented prior to each PUF output calculation. In one embodiment, a capability is provided to generate a session key by using a monotonic counter or other freshness mechanism like timestamp, NONCE, etc.
Claims20
A system comprising:
- at least one physical unclonable function (PUF) device;
- a message authentication code (MAC) module configured to receive a first input based on at least one value provided by the at least one PUF device;
- at least one processor;
- and
- memory containing instructions configured to instruct the at least one processor to generate, based on the first input, a first output from the MAC module.
A method implemented in a computing device, the method comprising:
- providing, by at least one physical unclonable function (PUF), at least one value;
- and
- generating, based on a message authentication code (MAC), a first output, wherein the MAC uses the at least one value provided by the at least one PUF as an input for generating the first output.
A non-transitory computer storage medium storing instructions which, when executed on a memory device, cause the memory device to perform a method, the method comprising:
- providing, by at least one physical unclonable function (PUF), at least one value;
- and
- generating, based on a message authentication code (MAC), a first output, wherein the MAC uses the at least one value provided by the at least one PUF as an input for generating the first output.
Dependencies are inferred from the claim text.