C# (CSharp) Tpm2Lib Namespace

Classes

Name Description
AesSymDetails
AlgArray
AlgProperty
AlgPropertyArray
AlgorithmDescription
AlgorithmDetailEcc
AnySymDetails
AsymParms
AsymScheme
Attest
AuthCommand
AuthResponse
AuthSession AuthSession encapsulates HMAC, policy, encryption/decryption, and audit sessions, i.e. all session types that are represented by a TPM handle created by means of TPM2_StartAuthSession command.
AuthValue
ByteBuf
CamelliaSymDetails
CapabilityData
CcArray
CcaArray
CertifyInfo
ClockInfo
CommandAuditInfo
CommandHeader
CommandInformation
Context
ContextData
CreationData
CreationInfo
DigestArray
DigestValuesArray
EccCurveArray
EccParms
EccPoint
EccScheme
Empty
EncSchemeOaep
EncSchemeRsaes
HandleArray
IdObject
KdfScheme
KeySchemeEcdh
KeySchemeEcmqv
KeyWrapper This class contains algorithms for wrapping and unwrapping TPM objects
KeyedhashParms
KeyedhashScheme
NullAsymScheme
NullKdfScheme
NullSchemeKeyedhash
NullSigScheme
NullSignature
NullSymDetails
NullSymKeyBits
NullSymMode
NullUnion
NvCertifyInfo
NvPinCounterParameters
NvPublic
ObjectContext
ObjectContextManager
ParametrizedHandle
PcrSelect
PcrSelection
PcrSelectionArray
PcrValue
PcrValueCollection
PolicyAce
PolicyTree A PolicyTree contains machinery for creating, executing and persisting TPM policy expression.
Private
PublicParms
Pwap Password authentication protocol session
QuoteInfo
RsaDecrypt
RsaParms
RsaScheme
SchemeEcdaa
SchemeEcdh
SchemeEcdsa
SchemeEcmqv
SchemeEcschnorr
SchemeHash
SchemeHmac
SchemeKdf1Sp800108
SchemeKdf1Sp80056a
SchemeKdf2
SchemeMgf1
SchemeOaep
SchemeRsaes
SchemeRsapss
SchemeRsassa
SchemeSm2
SchemeXor
Sensitive
SensitiveCreate
SessionAuditInfo
SessionBase Base class for PWAP and HMAC sessions. Policy sessions are a flavor of HMAC sessions.
SessionIn
SessionOut
SigScheme
SigSchemeEcdaa
SigSchemeEcdsa
SigSchemeEcschnorr
SigSchemeRsapss
SigSchemeRsassa
SigSchemeSm2
Signature
SignatureEcc
SignatureEcdaa
SignatureEcdsa
SignatureEcschnorr
SignatureRsa
SignatureRsapss
SignatureRsassa
SignatureSm2
Sm4SymDetails
SymDef
SymDefObject
SymcipherParms
SymmCipher A helper class for doing symmetric cryptography based on TPM structure definitions.
TaggedPcrPropertyArray
TaggedPcrSelect
TaggedProperty
TaggedTpmPropertyArray
Tbs Instances of the class TPM are created on top of TPM devices (either a physical TPM, or another Tbs) via new Tbs(theTpmDevice). TPM device contexts are then typically created through GetTpm(int locality).
Tbs.TbsContext TbsContext provides a virtualized device interface to the underlying TPM. It is typically instantiated via Tbs.GetTpm() or Tbs.CreateTpmContext().
TdesSymDetails
TimeAttestInfo
TimeInfo
TkAuth
TkCreation
TkHashcheck
TkVerified
Tpm2 Tpm2 provides methods to create TPM-compatible byte streams and unmarshal responses. It is used in conjunction with a TPM device (implementing Tpm2Device) that communicates with the actual TPM device. TPM commands map 1:1 to corresponding methods in Tpm2 (with parameter translations described elsewhere). Tpm2 also provides a few commands that are tagged with Ex (like Tpm2.StartAuthSessionEx). These commands provide a slightly higher level of abstraction when using the underlying native TPM command is tricky or verbose. Tpm2 also provides a few commands that are preceded by _ like _AllowErrors(). These commands are not sent to the TPM, but instead change the behavior of later TPM commands (often for the next command invocation only). Finally, Tpm2.Instrumentation provides access to TPM debug functionality (will not be available on release/production TPMs.)
Tpm2ActivateCredentialRequest
Tpm2ActivateCredentialResponse
Tpm2CertifyCreationRequest
Tpm2CertifyCreationResponse
Tpm2CertifyRequest
Tpm2CertifyResponse
Tpm2ChangeEPSRequest
Tpm2ChangeEPSResponse
Tpm2ChangePPSRequest
Tpm2ChangePPSResponse
Tpm2ClearControlRequest
Tpm2ClearControlResponse
Tpm2ClearRequest
Tpm2ClearResponse
Tpm2ClockRateAdjustRequest
Tpm2ClockRateAdjustResponse
Tpm2ClockSetRequest
Tpm2ClockSetResponse
Tpm2CommitRequest
Tpm2CommitResponse
Tpm2ContextLoadRequest
Tpm2ContextLoadResponse
Tpm2ContextSaveRequest
Tpm2ContextSaveResponse
Tpm2CreateLoadedRequest
Tpm2CreateLoadedResponse
Tpm2CreatePrimaryRequest
Tpm2CreatePrimaryResponse
Tpm2CreateRequest
Tpm2CreateResponse
Tpm2DictionaryAttackLockResetRequest
Tpm2DictionaryAttackLockResetResponse
Tpm2DictionaryAttackParametersRequest
Tpm2DictionaryAttackParametersResponse
Tpm2DuplicateRequest
Tpm2DuplicateResponse
Tpm2EcEphemeralRequest
Tpm2EcEphemeralResponse
Tpm2EccParametersRequest
Tpm2EccParametersResponse
Tpm2EcdhKeyGenRequest
Tpm2EcdhKeyGenResponse
Tpm2EcdhZGenRequest
Tpm2EcdhZGenResponse
Tpm2EncryptDecryptRequest
Tpm2EncryptDecryptResponse
Tpm2EventSequenceCompleteRequest
Tpm2EventSequenceCompleteResponse
Tpm2EvictControlRequest
Tpm2EvictControlResponse
Tpm2FieldUpgradeDataRequest
Tpm2FieldUpgradeDataResponse
Tpm2FieldUpgradeStartRequest
Tpm2FieldUpgradeStartResponse
Tpm2FirmwareReadRequest
Tpm2FirmwareReadResponse
Tpm2FlushContextRequest
Tpm2FlushContextResponse
Tpm2GetCapabilityRequest
Tpm2GetCapabilityResponse
Tpm2GetCommandAuditDigestRequest
Tpm2GetCommandAuditDigestResponse
Tpm2GetRandomRequest
Tpm2GetRandomResponse
Tpm2GetSessionAuditDigestRequest
Tpm2GetSessionAuditDigestResponse
Tpm2GetTestResultRequest
Tpm2GetTestResultResponse
Tpm2GetTimeRequest
Tpm2GetTimeResponse
Tpm2HashRequest
Tpm2HashResponse
Tpm2HashSequenceStartRequest
Tpm2HashSequenceStartResponse
Tpm2HierarchyChangeAuthRequest
Tpm2HierarchyChangeAuthResponse
Tpm2HierarchyControlRequest
Tpm2HierarchyControlResponse
Tpm2HmacRequest
Tpm2HmacResponse
Tpm2HmacStartRequest
Tpm2HmacStartResponse
Tpm2ImportRequest
Tpm2ImportResponse
Tpm2IncrementalSelfTestRequest
Tpm2IncrementalSelfTestResponse
Tpm2LoadExternalRequest
Tpm2LoadExternalResponse
Tpm2LoadRequest
Tpm2LoadResponse
Tpm2MakeCredentialRequest
Tpm2MakeCredentialResponse
Tpm2NvCertifyRequest
Tpm2NvCertifyResponse
Tpm2NvChangeAuthRequest
Tpm2NvChangeAuthResponse
Tpm2NvDefineSpaceRequest
Tpm2NvDefineSpaceResponse
Tpm2NvExtendRequest
Tpm2NvExtendResponse
Tpm2NvGlobalWriteLockRequest
Tpm2NvGlobalWriteLockResponse
Tpm2NvIncrementRequest
Tpm2NvIncrementResponse
Tpm2NvReadLockRequest
Tpm2NvReadLockResponse
Tpm2NvReadPublicRequest
Tpm2NvReadPublicResponse
Tpm2NvReadRequest
Tpm2NvReadResponse
Tpm2NvSetBitsRequest
Tpm2NvSetBitsResponse
Tpm2NvUndefineSpaceRequest
Tpm2NvUndefineSpaceResponse
Tpm2NvUndefineSpaceSpecialRequest
Tpm2NvUndefineSpaceSpecialResponse
Tpm2NvWriteLockRequest
Tpm2NvWriteLockResponse
Tpm2NvWriteRequest
Tpm2NvWriteResponse
Tpm2ObjectChangeAuthRequest
Tpm2ObjectChangeAuthResponse
Tpm2PcrAllocateRequest
Tpm2PcrAllocateResponse
Tpm2PcrEventRequest
Tpm2PcrEventResponse
Tpm2PcrExtendRequest
Tpm2PcrExtendResponse
Tpm2PcrReadRequest
Tpm2PcrReadResponse
Tpm2PcrResetRequest
Tpm2PcrResetResponse
Tpm2PcrSetAuthPolicyRequest
Tpm2PcrSetAuthPolicyResponse
Tpm2PcrSetAuthValueRequest
Tpm2PcrSetAuthValueResponse
Tpm2PolicyAuthValueRequest
Tpm2PolicyAuthValueResponse
Tpm2PolicyAuthorizeNVRequest
Tpm2PolicyAuthorizeNVResponse
Tpm2PolicyAuthorizeRequest
Tpm2PolicyAuthorizeResponse
Tpm2PolicyCommandCodeRequest
Tpm2PolicyCommandCodeResponse
Tpm2PolicyCounterTimerRequest
Tpm2PolicyCounterTimerResponse
Tpm2PolicyCpHashRequest
Tpm2PolicyCpHashResponse
Tpm2PolicyDuplicationSelectRequest
Tpm2PolicyDuplicationSelectResponse
Tpm2PolicyGetDigestRequest
Tpm2PolicyGetDigestResponse
Tpm2PolicyLocalityRequest
Tpm2PolicyLocalityResponse
Tpm2PolicyNVRequest
Tpm2PolicyNVResponse
Tpm2PolicyNameHashRequest
Tpm2PolicyNameHashResponse
Tpm2PolicyNvWrittenRequest
Tpm2PolicyNvWrittenResponse
Tpm2PolicyORRequest
Tpm2PolicyORResponse
Tpm2PolicyPCRRequest
Tpm2PolicyPCRResponse
Tpm2PolicyPasswordRequest
Tpm2PolicyPasswordResponse
Tpm2PolicyPhysicalPresenceRequest
Tpm2PolicyPhysicalPresenceResponse
Tpm2PolicyRestartRequest
Tpm2PolicyRestartResponse
Tpm2PolicySecretRequest
Tpm2PolicySecretResponse
Tpm2PolicySignedRequest
Tpm2PolicySignedResponse
Tpm2PolicyTemplateRequest
Tpm2PolicyTemplateResponse
Tpm2PolicyTicketRequest
Tpm2PolicyTicketResponse
Tpm2PpCommandsRequest
Tpm2PpCommandsResponse
Tpm2QuoteRequest
Tpm2QuoteResponse
Tpm2ReadClockRequest
Tpm2ReadClockResponse
Tpm2ReadPublicRequest
Tpm2ReadPublicResponse
Tpm2RewrapRequest
Tpm2RewrapResponse
Tpm2RsaDecryptRequest
Tpm2RsaDecryptResponse
Tpm2RsaEncryptRequest
Tpm2RsaEncryptResponse
Tpm2SelfTestRequest
Tpm2SelfTestResponse
Tpm2SequenceCompleteRequest
Tpm2SequenceCompleteResponse
Tpm2SequenceUpdateRequest
Tpm2SequenceUpdateResponse
Tpm2SetAlgorithmSetRequest
Tpm2SetAlgorithmSetResponse
Tpm2SetCommandCodeAuditStatusRequest
Tpm2SetCommandCodeAuditStatusResponse
Tpm2SetPrimaryPolicyRequest
Tpm2SetPrimaryPolicyResponse
Tpm2ShutdownRequest
Tpm2ShutdownResponse
Tpm2SignRequest
Tpm2SignResponse
Tpm2StartAuthSessionRequest
Tpm2StartAuthSessionResponse
Tpm2StartupRequest
Tpm2StartupResponse
Tpm2StirRandomRequest
Tpm2StirRandomResponse
Tpm2TestParmsRequest
Tpm2TestParmsResponse
Tpm2UnsealRequest
Tpm2UnsealResponse
Tpm2VendorTcgTestRequest
Tpm2VendorTcgTestResponse
Tpm2VerifySignatureRequest
Tpm2VerifySignatureResponse
Tpm2ZGen2PhaseRequest
Tpm2ZGen2PhaseResponse
Tpm2bAttest
Tpm2bAuth
Tpm2bContextData
Tpm2bContextSensitive
Tpm2bCreationData
Tpm2bData
Tpm2bDerive
Tpm2bDigest
Tpm2bDigestKeyedhash
Tpm2bDigestSymcipher
Tpm2bDigestValues
Tpm2bEccParameter
Tpm2bEccPoint
Tpm2bEncryptedSecret
Tpm2bEvent
Tpm2bIdObject
Tpm2bIv
Tpm2bLabel
Tpm2bMaxBuffer
Tpm2bMaxNvBuffer
Tpm2bName
Tpm2bNonce
Tpm2bNvPublic
Tpm2bOperand
Tpm2bPrivateKeyRsa
Tpm2bPrivateVendorSpecific
Tpm2bPublic
Tpm2bPublicKeyRsa
Tpm2bSensitive
Tpm2bSensitiveCreate
Tpm2bSensitiveData
Tpm2bSymKey
Tpm2bTemplate
Tpm2bTimeout
TpmDerive
TpmException Represents and encapsulates TPM error codes. Generally TSS.Net propagates TPM errors as exceptions, although this behavior can be overridden with _ExpectError(), _AllowError(), etc.
TpmFailure
TpmHandle
TpmHandleX This class is a crutch for C#'s inability to support implicit conversions between derived and base classes. Data structures with members of Types derived from TpmHandle declare those members as private, expose them via properties of type TpmHandleX, and use TpmHandleX as the type of the sorresponding constructor arguments.
TpmHash
TpmHashCheck
TpmPolicy
TpmPolicyAction PolicyAction is a dummy-ACE that allows a policy author to embed external data in a policy. PolicyAction is _not_ expected to be directly interpreted by the policy evaluator. Instead it might be used to trigger other TPM or non-TPM program actions (like incrementing a monotonic counter).
TpmPolicyAuthValue This command allows a policy to be bound to the authorization value of the authorized object.
TpmPolicyAuthorize This command allows policies to change. If a policy were static, then it would be difficult to add users to a policy. This command lets a policy authority sign a new policy so that it may be used in an existing policy.
TpmPolicyAuthorizeNV
TpmPolicyChainId PolicyChainId is a dummy policy-ACE that allows the caller to name a chain. PolicyChainId can only be at the leaf of a chain.
TpmPolicyCommand This command indicates that the authorization will be limited to a specific command code.
TpmPolicyCounterTimer
TpmPolicyCpHash This command is used to allow a policy to be bound to a specific command and command parameters.
TpmPolicyDuplicationSelect This command allows qualification of duplication to allow duplication to a selected new parent. If this command is used without a subsequent TPM2_PolicyAuthorize() in the policy, then only the new parent is selected. If a subsequent TPM2_PolicyAuthorize() is used, then both the new parent and the object being duplicated may be specified.
TpmPolicyLocality
TpmPolicyNV This command is used to cause conditional gating of a policy based on the contents of an NV Index.
TpmPolicyNameHash This command allows a policy to be bound to a specific set of handles without being bound to the parameters of the command. This is most useful for commands such as TPM2_Duplicate() and for TPM2_PCR_Event() when the referenced PCR requires a policy.
TpmPolicyNvWritten This command allows a policy to be bound to the TPMA_NV_WRITTEN attributes. This is a deferred assertion. Values are stored in the policy session context and checked when the policy is used for authorization.
TpmPolicyOr This command allows options in authorizations without requiring that the TPM evaluate all of the options. If a policy may be satisfied by different sets of conditions, the TPM need only evaluate one set that satisfies the policy. This command will indicate that one of the required sets of conditions has been satisfied.
TpmPolicyPassword This command allows a policy to be bound to the authorization value of the authorized object.
TpmPolicyPcr
TpmPolicyPhysicalPresence This command indicates that physical presence will need to be asserted at the time the authorization is performed.
TpmPolicyRestart This command allows a policy authorization session to be returned to its initial state.
TpmPolicySecret This command includes a secret-based authorization to a policy. The caller proves knowledge of the secret value using either a password or an HMAC-based authorization session.
TpmPolicySigned This command includes an asymmetrically signed authorization in a policy.
TpmPolicyTicket This command is similar to TPM2_PolicySigned() except that it takes a ticket instead of a signed authorization. The ticket represents a validated authorization that had an expiration time associated with it.
TpmPolicyWithExpiration Base class for TpmPolicySigned and TpmPolicySecret.
TpmPrivate
TpmPublic
TpmStructPrinter Provides formatting for structures and other TPM types.
TpmStructureBase
TpmStructureBase.TpmStructMemberInfo Reflection and additional information associated with a TPM structure member.
TpmiRhNvIndex
TssException Represents exceptions generated by the TSS.Net library. Encapsulates call stack at the point where the exception was generated. Serves as the base for the TpmException class.
TssObject
XorSymDetails
XorSymMode