tpm.dev.tutorials/TPM-Commands/TPM2_CreateLoaded.md
2021-06-04 14:46:46 -05:00

1.4 KiB

TPM2_CreateLoaded()

This command creates a key object and loads it. The object can be a primary key, in which case TPM2_CreateLoaded() behaves just like TPM2_CreatePrimary(). Or the object can be ordinary or derived.

The created object can then be loaded with TPM2_Load().

To decide whether to use TPM2_CreateLoaded(), TPM2_Create(), or TPM2_CreatePrimary() refer to table 28 in section 2.7 of the TCG TPM Library part 1: Architecture.

If you need to TPM2_CertifyCreation() that a TPM created some object, you must use TPM2_CreatePrimary() or TPM2_Create().

If you need to seal the object to a PCR selection, you must use TPM2_CreatePrimary() or TPM2_Create().

If you need to create a derived object, you must use TPM2_CreateLoaded().

Inputs

  • TPMI_DH_PARENT+ parentHandle
  • TPM2B_SENSITIVE_CREATE inSensitive
  • TPM2B_TEMPLATE inPublic

Outputs (success case)

  • TPM_HANDLE objectHandle
  • TPM2B_PRIVATE outPrivate (optional)
  • TPM2B_PUBLIC outPublic
  • TPM2B_NAME name

References