C# 클래스 Tpm2Lib.TssObject

상속: TpmStructureBase
파일 보기 프로젝트 열기: Microsoft/TSS.MSR 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
SecretEncodingParms byte[]
UseAuth AuthValue

Private Properties

프로퍼티 타입 설명
CreateSensitiveComposite ISensitiveCompositeUnion
GetSymDef SymDefObject
Transform void

공개 메소드들

메소드 설명
Copy ( ) : TssObject
CreateStorageParent ( TpmPublic keyParameters, AuthValue authVal ) : TssObject

Creates a *software* root key. The key will be random (not created from a seed). The key can be used as the root of a software hierarchy that can be translated into a duplication blob ready for import into a TPM. Depending on the type of key, the software root key can be a parent for other root keys that can comprise a migration group. The caller should specify necessary key parameters in Public.

GetDuplicationBlob ( TpmPublic newParent, SymmCipher innerWrapper, byte &encryptedWrappingKey ) : TpmPrivate

Creates a duplication blob for the current key that can be Imported as a child of newParent. Three forms are possible. GetPlaintextDuplicationBlob() allows plaintext-import. This function enables duplication with and without an inner wrapper (depending on whether innerWrapper is null)

GetName ( ) : byte[]

Get the name of the associated public object

GetPlaintextDuplicationBlob ( ) : TpmPrivate

Create a plaintext duplication blob that can be imported into a TPM

GetPrivate ( TssObject intendedParent ) : TpmPrivate

Creates a Private area for this key that will be loadable on a TPM though TPM2_Load() if the target TPM already has the parent storage key "parent" loaded. This function lets applications create key-hierarchies in software that can be loaded into a TPM once the parent has been "TPM2_Import'ed." TPM2_Import() supports plaintext import. To get this sort of import blob set intendedParent to null

TssObject ( ) : System
TssObject ( TpmPublic the_publicPart, Sensitive the_sensitivePart, TpmPrivate the_privatePart ) : System
TssObject ( TpmPublic thePublicPart, TpmPrivate thePrivatePart ) : System
TssObject ( TssObject the_TssObject ) : System
_SetTransformer ( Transformer transformer ) : void

Install a transformer callback (for debugging). Transformer is called on several code-paths in creating SW-generated keys, import blobs, and activation blobs. Transformer can arbitrarily manipulate the byte array parameter and the transformed value will be used (this allows a caller to transform parameters that are hard to affect in the raw TPM command because they are protected by crypto. Note that the transformer callback should only work on a fraction (say 10%) of the calls because the it is called several times during preparation of some data structures and if one always modifies the first then it is possible that the second is never processed by the TPM.

비공개 메소드들

메소드 설명
CreateSensitiveComposite ( TpmPublic keyParms, IPublicIdUnion &publicParms ) : ISensitiveCompositeUnion

Create a new asymmetric key based on the parameters in keyParms. The resulting key data is returned in structures suitable for incorporation in a TPMT_PUBLIC and TPMS_SENSITIVE

GetSymDef ( TpmPublic keyParms ) : SymDefObject

Extract and return the SymDefObject that describes the associated symmetric algorithm that is used for key protection in storage keys.

Transform ( byte x ) : void

메소드 상세

Copy() 공개 메소드

public Copy ( ) : TssObject
리턴 TssObject

CreateStorageParent() 공개 정적인 메소드

Creates a *software* root key. The key will be random (not created from a seed). The key can be used as the root of a software hierarchy that can be translated into a duplication blob ready for import into a TPM. Depending on the type of key, the software root key can be a parent for other root keys that can comprise a migration group. The caller should specify necessary key parameters in Public.
public static CreateStorageParent ( TpmPublic keyParameters, AuthValue authVal ) : TssObject
keyParameters TpmPublic
authVal AuthValue
리턴 TssObject

GetDuplicationBlob() 공개 메소드

Creates a duplication blob for the current key that can be Imported as a child of newParent. Three forms are possible. GetPlaintextDuplicationBlob() allows plaintext-import. This function enables duplication with and without an inner wrapper (depending on whether innerWrapper is null)
public GetDuplicationBlob ( TpmPublic newParent, SymmCipher innerWrapper, byte &encryptedWrappingKey ) : TpmPrivate
newParent TpmPublic
innerWrapper SymmCipher
encryptedWrappingKey byte
리턴 TpmPrivate

GetName() 공개 메소드

Get the name of the associated public object
public GetName ( ) : byte[]
리턴 byte[]

GetPlaintextDuplicationBlob() 공개 메소드

Create a plaintext duplication blob that can be imported into a TPM
public GetPlaintextDuplicationBlob ( ) : TpmPrivate
리턴 TpmPrivate

GetPrivate() 공개 메소드

Creates a Private area for this key that will be loadable on a TPM though TPM2_Load() if the target TPM already has the parent storage key "parent" loaded. This function lets applications create key-hierarchies in software that can be loaded into a TPM once the parent has been "TPM2_Import'ed." TPM2_Import() supports plaintext import. To get this sort of import blob set intendedParent to null
public GetPrivate ( TssObject intendedParent ) : TpmPrivate
intendedParent TssObject
리턴 TpmPrivate

TssObject() 공개 메소드

public TssObject ( ) : System
리턴 System

TssObject() 공개 메소드

public TssObject ( TpmPublic the_publicPart, Sensitive the_sensitivePart, TpmPrivate the_privatePart ) : System
the_publicPart TpmPublic Public part of key
the_sensitivePart Sensitive Sensitive part of key
the_privatePart TpmPrivate Private part is the encrypted sensitive part of key
리턴 System

TssObject() 공개 메소드

public TssObject ( TpmPublic thePublicPart, TpmPrivate thePrivatePart ) : System
thePublicPart TpmPublic
thePrivatePart TpmPrivate
리턴 System

TssObject() 공개 메소드

public TssObject ( TssObject the_TssObject ) : System
the_TssObject TssObject
리턴 System

_SetTransformer() 공개 메소드

Install a transformer callback (for debugging). Transformer is called on several code-paths in creating SW-generated keys, import blobs, and activation blobs. Transformer can arbitrarily manipulate the byte array parameter and the transformed value will be used (this allows a caller to transform parameters that are hard to affect in the raw TPM command because they are protected by crypto. Note that the transformer callback should only work on a fraction (say 10%) of the calls because the it is called several times during preparation of some data structures and if one always modifies the first then it is possible that the second is never processed by the TPM.
public _SetTransformer ( Transformer transformer ) : void
transformer Transformer
리턴 void

프로퍼티 상세

SecretEncodingParms 공개적으로 정적으로 프로퍼티

Encoding parameters for objects in the storage hierarchy
public static byte[] SecretEncodingParms
리턴 byte[]

UseAuth 공개적으로 프로퍼티

public AuthValue,Tpm2Lib UseAuth
리턴 AuthValue