📄 tss_defines.h
字号:
#define TSS_TSPATTRIB_KEY_BLOB (0x00000040) // key info as blob data#define TSS_TSPATTRIB_KEY_INFO (0x00000080) // key param info as blob data#define TSS_TSPATTRIB_KEY_UUID (0x000000C0) // key GUID info as blob data#define TSS_TSPATTRIB_KEY_PCR (0x00000100) // composite digest value for the key#define TSS_TSPATTRIB_RSAKEY_INFO (0x00000140) // public exponent of the key#define TSS_TSPATTRIB_KEY_REGISTER (0x00000180) // register location for the key data//// Object Hash://#define TSS_TSPATTRIB_HASH_IDENTIFIER (0x00001000) // Hash algorithm identifier//// SubFlags for Flag TSS_TSPATTRIB_ENCDATA_BLOB//// 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1// 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0// ---------------------------------------------------------------// SubFlags for Flag TSS_TSPATTRIB_ENCDATA_BLOB//// TSS_TSPATTRIB_ENCDATABLOB_BLOB |0 0 1|// TSS_TSPATTRIB_ENCDATAPCR_DIGEST_ATCREATION |0 1 0|//#define TSS_TSPATTRIB_ENCDATABLOB_BLOB (0x00000001) // encrypted data blob#define TSS_TSPATTRIB_ENCDATAPCR_DIGEST_ATCREATION (0x00000002) // PCR digest at creation#define TSS_TSPATTRIB_ENCDATAPCR_DIGEST_RELEASE (0x00000003)#define TSS_TSPATTRIB_ENCDATAPCR_SELECTION (0x00000004)//// SubFlags for Flag TSS_TSPATTRIB_KEY_BLOB////// TSS_TSPATTRIB_KEYBLOB_BLOB |0 0 0 1|// TSS_TSPATTRIB_KEYBLOB_PUBLIC_KEY |0 0 1 0|// TSS_TSPATTRIB_KEYBLOB_PLAIN |0 0 1 1|// TSS_TSPATTRIB_KEYBLOB_GUID |0 1 0 0|// TSS_TSPATTRIB_KEYBLOB_PRIVATE_KEY |0 1 0 1|//#define TSS_TSPATTRIB_KEYBLOB_BLOB (0x00000008) // key info using the key blob#define TSS_TSPATTRIB_KEYBLOB_PUBLIC_KEY (0x00000010) // public key info using the blob#define TSS_TSPATTRIB_KEYBLOB_PRIVATE_KEY (0x00000028) // encrypted private key blob//// SubFlags for Flag TSS_TSPATTRIB_KEY_INFO//// 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1// 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0// ---------------------------------------------------------------//// TSS_TSPATTRIB_KEYINFO_SIZE |0 0 0 0 1|// TSS_TSPATTRIB_KEYINFO_USAGE |0 0 0 1 0|// TSS_TSPATTRIB_KEYINFO_KEYFLAGS |0 0 0 1 1|// TSS_TSPATTRIB_KEYINFO_AUTHUSAGE |0 0 1 0 0|// TSS_TSPATTRIB_KEYINFO_ALGORITHM |0 0 1 0 1|// TSS_TSPATTRIB_KEYINFO_SIGSCHEME |0 0 1 1 0|// TSS_TSPATTRIB_KEYINFO_ENCSCHEME |0 0 1 1 1|// TSS_TSPATTRIB_KEYINFO_MIGRATABLE |0 1 0 0 0|// TSS_TSPATTRIB_KEYINFO_REDIRECTED |0 1 0 0 1|// TSS_TSPATTRIB_KEYINFO_VOLATILE |0 1 0 1 0|// TSS_TSPATTRIB_KEYINFO_AUTHDATAUSAGE |0 1 0 1 1|// TSS_TSPATTRIB_KEYINFO_VERSION |0 1 0 100|//#define TSS_TSPATTRIB_KEYINFO_SIZE (0x00000080) // key size in bits#define TSS_TSPATTRIB_KEYINFO_USAGE (0x00000100) // key usage info#define TSS_TSPATTRIB_KEYINFO_KEYFLAGS (0x00000180) // key flags#define TSS_TSPATTRIB_KEYINFO_AUTHUSAGE (0x00000200) // key auth usage info#define TSS_TSPATTRIB_KEYINFO_ALGORITHM (0x00000280) // key algorithm ID#define TSS_TSPATTRIB_KEYINFO_SIGSCHEME (0x00000300) // key sig scheme#define TSS_TSPATTRIB_KEYINFO_ENCSCHEME (0x00000380) // key enc scheme#define TSS_TSPATTRIB_KEYINFO_MIGRATABLE (0x00000400) // if true then key is migratable#define TSS_TSPATTRIB_KEYINFO_REDIRECTED (0x00000480) // key is redirected#define TSS_TSPATTRIB_KEYINFO_VOLATILE (0x00000500) // if true key is volatile#define TSS_TSPATTRIB_KEYINFO_AUTHDATAUSAGE (0x00000580) // if true authorization is required#define TSS_TSPATTRIB_KEYINFO_VERSION (0x00000600) // version info as TSS version struct////////////////////////////////////////////////////////////////////////////// 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1// 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0// ---------------------------------------------------------------//// SubFlags for Flag TSS_TSPATTRIB_RSAKEY_INFO//// TSS_TSPATTRIB_KEYINFO_RSA_EXPONENT |0 0 1|// TSS_TSPATTRIB_KEYINFO_RSA_MODULUS |0 1 0|// TSS_TSPATTRIB_KEYINFO_RSA_KEYSIZE |0 1 1|// TSS_TSPATTRIB_KEYINFO_RSA_PRIMES |1 0 0|//#define TSS_TSPATTRIB_KEYINFO_RSA_EXPONENT (0x00001000)#define TSS_TSPATTRIB_KEYINFO_RSA_MODULUS (0x00002000)#define TSS_TSPATTRIB_KEYINFO_RSA_KEYSIZE (0x00003000)#define TSS_TSPATTRIB_KEYINFO_RSA_PRIMES (0x00004000)//// SubFlags for Flag TSS_TSPATTRIB_KEY_PCR//////////////////////////////////////////////////////////////////////////////////////// 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1// 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0// ---------------------------------------------------------------//// SubFlags for Flag TSS_TSPATTRIB_KEY_PCR// TSS_TSPATTRIB_KEYPCR_DIGEST_ATCREATION |0 0 1|// TSS_TSPATTRIB_KEYPCR_DIGEST_ATRELEASE |0 1 0|// TSS_TSPATTRIB_KEYPCR_SELECTION |0 1 1|//#define TSS_TSPATTRIB_KEYPCR_DIGEST_ATCREATION (0x00008000)#define TSS_TSPATTRIB_KEYPCR_DIGEST_ATRELEASE (0x00010000)#define TSS_TSPATTRIB_KEYPCR_SELECTION (0x00018000)//// SubFlags for TSS_TSPATTRIB_KEY_REGISTER//// SubFlags for TSS_TSPATTRIB_KEY_REGISTER///////////////////////////////////////////////////////////////////////////////////////////////////// 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1// 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0// ---------------------------------------------------------------//// TSS_TSPATTRIB_KEYREGISTER_USER |0 0 1|// TSS_TSPATTRIB_KEYREGISTER_SYSTEM |0 1 0|// TSS_TSPATTRIB_KEYREGISTER_NO |0 1 1|//#define TSS_TSPATTRIB_KEYREGISTER_USER (0x02000000)#define TSS_TSPATTRIB_KEYREGISTER_SYSTEM (0x04000000)#define TSS_TSPATTRIB_KEYREGISTER_NO (0x06000000)//// Attribute definition for the tsp key object//// Algorithm ID Definitions////// key size definitions//#define TSS_KEY_SIZEVAL_512BIT (0x0200)#define TSS_KEY_SIZEVAL_1024BIT (0x0400)#define TSS_KEY_SIZEVAL_2048BIT (0x0800)#define TSS_KEY_SIZEVAL_4096BIT (0x1000)#define TSS_KEY_SIZEVAL_8192BIT (0x2000)#define TSS_KEY_SIZEVAL_16384BIT (0x4000)//// This table defines the algo id's// Values intentional moved away from corresponding TPM values to avoid possible misuse//#define TSS_ALG_RSA (0x20)#define TSS_ALG_DES (0x21)#define TSS_ALG_3DES (0x22)#define TSS_ALG_SHA (0x23)#define TSS_ALG_HMAC (0x24)#define TSS_ALG_AES (0x25)////// persisten storage registration definitions//#define TSS_PS_TYPE_USER (1) // Key is registered persistantly in the user// storage database.#define TSS_PS_TYPE_SYSTEM (2) // Key is registered persistantly in the// system storage database.// migration scheme definitions// Values intentional moved away from corresponding TPM values to avoid possible misuse//#define TSS_MS_MIGRATE (0x20)#define TSS_MS_REWRAP (0x21)#define TSS_MS_MAINT (0x22)////// TCPA key authorization// Values intentional moved away from corresponding TPM values to avoid possible misuse//#define TSS_KEYAUTH_AUTH_NEVER (0x10)#define TSS_KEYAUTH_AUTH_ALWAYS (0x11)//// key usage definitions// Values intentional moved away from corresponding TPM values to avoid possible misuse//#define TSS_KEYUSAGE_BIND (0x00)#define TSS_KEYUSAGE_IDENTITY (0x01)#define TSS_KEYUSAGE_LEGACY (0x02)#define TSS_KEYUSAGE_SIGN (0x03)#define TSS_KEYUSAGE_STORAGE (0x04)#define TSS_KEYUSAGE_AUTHCHANGE (0x07)//// key encrypten and signature scheme definitions//#define TSS_ES_NONE (0x10)#define TSS_ES_RSAESPKCSV15 (0x11)#define TSS_ES_RSAESOAEP_SHA1_MGF1 (0x12)//#define TSS_SS_NONE (0x10)#define TSS_SS_RSASSAPKCS1V15_SHA1 (0x11)#define TSS_SS_RSASSAPKCS1V15_DER (0x12)//// Flags for TPM status information (Get- and SetStatus)//#define TSS_TPMSTATUS_DISABLEOWNERCLEAR (0x00000001) // persistent flag#define TSS_TPMSTATUS_DISABLEFORCECLEAR (0x00000002) // volatile flag#define TSS_TPMSTATUS_DISABLED (0x00000003) // persistent flag#define TSS_TPMSTATUS_DEACTIVATED (0x00000004) // volatile flag#define TSS_TPMSTATUS_OWNERSETDISABLE (0x00000005) // persistent flag for SetStatus// (disable flag)#define TSS_TPMSTATUS_SETOWNERINSTALL (0x00000006) // persistent flag (ownership flag)#define TSS_TPMSTATUS_DISABLEPUBEKREAD (0x00000007) // persistent flag#define TSS_TPMSTATUS_ALLOWMAINTENANCE (0x00000008) // persistent flag#define TSS_TPMSTATUS_PHYSPRES_LIFETIMELOCK (0x00000009) // persistent flag#define TSS_TPMSTATUS_PHYSPRES_HWENABLE (0x0000000A) // persistent flag#define TSS_TPMSTATUS_PHYSPRES_CMDENABLE (0x0000000B) // persistent flag#define TSS_TPMSTATUS_PHYSPRES_LOCK (0x0000000C) // volatile flag#define TSS_TPMSTATUS_PHYSPRESENCE (0x0000000D) // volatile flag#define TSS_TPMSTATUS_PHYSICALDISABLE (0x0000000E) // persistent flag (SetStatus-Fkt// disable flag)#define TSS_TPMSTATUS_CEKP_USED (0x0000000F) // persistent flag#define TSS_TPMSTATUS_PHYSICALSETDEACTIVATED (0x00000010) // persistent flag (deactivated flag)#define TSS_TPMSTATUS_SETTEMPDEACTIVATED (0x00000011) // volatile flag (deactivated flag)#define TSS_TPMSTATUS_POSTINITIALISE (0x00000012) // volatile flag#define TSS_TPMSTATUS_TPMPOST (0x00000013) // persistent flag#define TSS_TPMSTATUS_TPMPOSTLOCK (0x00000014) // persistent flag//// Capability flag definitions//// TPM capabilities#define TSS_TPMCAP_ORD (0x10)#define TSS_TPMCAP_ALG (0x11)#define TSS_TPMCAP_FLAG (0x12)#define TSS_TPMCAP_PROPERTY (0x13)#define TSS_TPMCAP_VERSION (0x14)//// Sub-Capability Flags TPM-Capabilities#define TSS_TPMCAP_PROP_PCR (0x10)#define TSS_TPMCAP_PROP_DIR (0x11)#define TSS_TPMCAP_PROP_MANUFACTURER (0x12)#define TSS_TPMCAP_PROP_SLOTS (0x13)//// TSS Core Service Capabilities#define TSS_TCSCAP_ALG (0x00000001)#define TSS_TCSCAP_VERSION (0x00000002)#define TSS_TCSCAP_CACHING (0x00000003)#define TSS_TCSCAP_PERSSTORAGE (0x00000004)#define TSS_TCSCAP_MANUFACTURER (0x00000005)//// Sub-Capability Flags TSS-CoreService-Capabilities#define TSS_TCSCAP_PROP_KEYCACHE (0x00000100)#define TSS_TCSCAP_PROP_AUTHCACHE (0x00000101)#define TSS_TCSCAP_PROP_MANUFACTURER_STR (0x00000102)#define TSS_TCSCAP_PROP_MANUFACTURER_ID (0x00000103)//// TSS Service Provider Capabilities#define TSS_TSPCAP_ALG (0x00000010)#define TSS_TSPCAP_VERSION (0x00000011)#define TSS_TSPCAP_PERSSTORAGE (0x00000012)//// Event type definitions#define TSS_EV_CODE_CERT (0x00000001)#define TSS_EV_CODE_NOCERT (0x00000002)#define TSS_EV_XML_CONFIG (0x00000003)#define TSS_EV_NO_ACTION (0x00000004)#define TSS_EV_SEPARATOR (0x00000005)#define TSS_EV_ACTION (0x00000006)#define TSS_EV_PLATFORM_SPECIFIC (0x00000007)////// TSS random number limits//#define TSS_TSPCAP_RANDOMLIMIT (0x00001000) / Errata: Missing from spec//// UUIDs//// Errata: This are not in the spec#ifdef __GNUC__#define TSS_UUID_SRK {0x00000000,0x0000,0x0000,0x00,0x00,{0x00,0x00,0x00,0x00,0x00,0x01}} // Storage root key#define TSS_UUID_SK {0x00000000,0x0000,0x0000,0x00,0x00,{0x00,0x00,0x00,0x00,0x00,0x02}} // System key#define TSS_UUID_RK {0x00000000,0x0000,0x0000,0x00,0x00,{0x00,0x00,0x00,0x00,0x00,0x03}} // roaming key#define TSS_UUID_USK1 {0x00000000,0x0000,0x0000,0x00,0x00,{0x00,0x00,0x00,0x00,0x00,0x04}} // user storage key 1#define TSS_UUID_USK2 {0x00000000,0x0000,0x0000,0x00,0x00,{0x00,0x00,0x00,0x00,0x00,0x05}} // user storage key 2#define TSS_UUID_USK3 {0x00000000,0x0000,0x0000,0x00,0x00,{0x00,0x00,0x00,0x00,0x00,0x06}} // user storage key 3#define TSS_UUID_USK4 {0x00000000,0x0000,0x0000,0x00,0x00,{0x00,0x00,0x00,0x00,0x00,0x07}} // user storage key 4#else#define TSS_UUID_SRK L"00000000-0000-0000-0000-000000000001" // Storage root key#define TSS_UUID_SK L"00000000-0000-0000-0000-000000000002" // System key#define TSS_UUID_RK L"00000000-0000-0000-0000-000000000003" // roaming key#define TSS_UUID_USK1 L"00000000-0000-0000-0000-000000000004" // user storage key 1#define TSS_UUID_USK2 L"00000000-0000-0000-0000-000000000005" // user storage key 2#define TSS_UUID_USK3 L"00000000-0000-0000-0000-000000000006" // user storage key 3#define TSS_UUID_USK4 L"00000000-0000-0000-0000-000000000007" // user storage key 4#endif//// TCPA well known secret//#define TSS_WELL_KNOWN_SECRET {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}/* Imported from the TSS 1.2 header files for use in 1.2 style callbacks */// *************// TPM object: *// *************//// Attributes://#define TSS_TSPATTRIB_TPM_CALLBACK_COLLATEIDENTITY 0x00000001#define TSS_TSPATTRIB_TPM_CALLBACK_ACTIVATEIDENTITY 0x00000002#endif // __TSS_DEFINES_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -