The TPM requires the use of nonvolatile memory for two general classes of data:
- Data structures defined by the TPM architecture.
- Unstructured data defined by a user or a platform-specific specification
One use of TPM nonvolatile memory is for architecturally defined data, or fields defined in the TPM library specification. This includes hierarchy authorization values, seeds and proofs, and private data that the TPM won’t reveal outside its secure boundary. It also includes counters, a clock, and more: nonvolatile data that the caller can read. Nonvolatile memory can also hold structured data made persistent, such as a key. ...