Package tss.tpm

Class TPM2_CreatePrimary_REQUEST

  • All Implemented Interfaces:
    TpmMarshaller

    public class TPM2_CreatePrimary_REQUEST
    extends ReqStructure
    This command is used to create a Primary Object under one of the Primary Seeds or a Temporary Object under TPM_RH_NULL. The command uses a TPM2B_PUBLIC as a template for the object to be created. The size of the unique field shall not be checked for consistency with the other object parameters. The command will create and load a Primary Object. The sensitive area is not returned.
    • Field Detail

      • primaryHandle

        public TPM_HANDLE primaryHandle
        TPM_RH_ENDORSEMENT, TPM_RH_OWNER, TPM_RH_PLATFORM+{PP}, or TPM_RH_NULL Auth Index: 1 Auth Role: USER
      • inSensitive

        public TPMS_SENSITIVE_CREATE inSensitive
        The sensitive data, see TPM 2.0 Part 1 Sensitive Values
      • inPublic

        public TPMT_PUBLIC inPublic
        The public template
      • outsideInfo

        public byte[] outsideInfo
        Data that will be included in the creation data for this object to provide permanent, verifiable linkage between this object and some object owner data
      • creationPCR

        public TPMS_PCR_SELECTION[] creationPCR
        PCR that will be used in creation data
    • Constructor Detail

      • TPM2_CreatePrimary_REQUEST

        public TPM2_CreatePrimary_REQUEST()
      • TPM2_CreatePrimary_REQUEST

        public TPM2_CreatePrimary_REQUEST​(TPM_HANDLE _primaryHandle,
                                          TPMS_SENSITIVE_CREATE _inSensitive,
                                          TPMT_PUBLIC _inPublic,
                                          byte[] _outsideInfo,
                                          TPMS_PCR_SELECTION[] _creationPCR)
        Parameters:
        _primaryHandle - TPM_RH_ENDORSEMENT, TPM_RH_OWNER, TPM_RH_PLATFORM+{PP}, or TPM_RH_NULL Auth Index: 1 Auth Role: USER
        _inSensitive - The sensitive data, see TPM 2.0 Part 1 Sensitive Values
        _inPublic - The public template
        _outsideInfo - Data that will be included in the creation data for this object to provide permanent, verifiable linkage between this object and some object owner data
        _creationPCR - PCR that will be used in creation data
    • Method Detail

      • toTpm

        public byte[] toTpm()
        Deprecated.
        Returns:
        Wire (marshaled) representation of this object
      • fromBytes

        public static TPM2_CreatePrimary_REQUEST fromBytes​(byte[] byteBuf)
        Static marshaling helper
        Parameters:
        byteBuf - Wire representation of the object
        Returns:
        New object constructed from its wire representation
      • fromTpm

        public static TPM2_CreatePrimary_REQUEST fromTpm​(byte[] byteBuf)
        Deprecated.
        Use fromBytes(byte[]) instead
        Parameters:
        byteBuf - Wire representation of the object
        Returns:
        New object constructed from its wire representation
      • fromTpm

        public static TPM2_CreatePrimary_REQUEST fromTpm​(TpmBuffer buf)
        Static marshaling helper
        Parameters:
        buf - Wire representation of the object
        Returns:
        New object constructed from its wire representation
      • toStringInternal

        public void toStringInternal​(TpmStructurePrinter _p,
                                     int d)
        Description copied from class: TpmStructure
        Serialize this object to the structure printer
        Overrides:
        toStringInternal in class TpmStructure
        Parameters:
        _p - The structure accumulator
        d - The data to serialize
      • numHandles

        public int numHandles()
        Overrides:
        numHandles in class CmdStructure
        Returns:
        Number of TPM handles contained (as fields) in this data structure
      • numAuthHandles

        public int numAuthHandles()
        Overrides:
        numAuthHandles in class ReqStructure
        Returns:
        Number of authorization TPM handles contained in this data structure
      • getHandles

        public TPM_HANDLE[] getHandles()
        Overrides:
        getHandles in class ReqStructure
        Returns:
        An array of TPM handles contained in this TPM request data structure
      • sessEncInfo

        public SessEncInfo sessEncInfo()
        Overrides:
        sessEncInfo in class CmdStructure
        Returns:
        Non-zero size info of the encryptable command/response parameter if session based encryption can be applied to this object (i.e. its first non-handle field is marshaled in size-prefixed form). Otherwise returns zero initialized struct.