Freigeben über


TPM V2.0 – Befehls- und Signalprofil

Dieses Dokument enthält Spezifikationen der von Windows 8 unterstützten TPM-Signalschnittstelle und listet TPM 2.0-Befehle auf, für die Folgendes gilt:

  1. Sie werden von Windows 8 verwendet und müssen daher für eine Windows-Hardwarezertifizierung implementiert werden.

  2. Sie werden nicht von Windows 8 verwendet, ihre Implementierung wird aber aus anderen Gründen empfohlen (z. B. TPM-Verwaltung, voraussichtliche Nutzung von Drittanbieter-Apps und OEM-Nutzung).

  3. Sie werden nicht von Windows 8 verwendet, ihre Implementierung ist aber optional.

Es wird keine andere Signalschnittstelle unterstützt, aber es können zusätzliche TPM 2.0-Befehle, die von Windows nicht verwendet werden, in einem TPM 2.0-Gerät implementiert werden, das mit dieser Spezifikation konform ist. Wenden Sie sich an Microsoft, um weitere Informationen zu anbieterspezifischen Befehlsbereichen zu erhalten.

Befehls- und Signalprofil

Anforderungen

Für dieses Profil muss ein TPM der Version 2.0 implementiert sein, um Windows 8 zu unterstützen:

  • Implementiert die TCG TPM 2.0-Bibliotheksspezifikation einschließlich kritischer Sicherheitspatches (Informationen zur Kompatibilität mit späteren Versionen der Spezifikation erhalten Sie von Microsoft. Bei der Zertifizierung von TPMs für 2015 muss v0.99 zusammen mit erforderlichen Sicherheitspatches implementiert werden. Informationen zu den erforderlichen Sicherheitspatches erhalten Sie von Microsoft.)

  • Ist immer aktiv, muss also nicht programmgesteuert oder durch einen Benutzer aktiviert werden.

  • Wird mit einem primären Seed für Zustimmung und Speicherung bereitgestellt.

Anforderungsmatrix

Signale und Hinweise Enthalten Optional Hinweise

_TPM_Init

X

_TPM_Hash_Start

X

_TPM_Hash_Data

X

_TPM_Hash_End

X

Befehle Enthalten Optional Hinweise

Startbefehle

TPM2_Startup

X

Nur von der Firmware verwendet

TPM2_Shutdown

X

Testbefehle

TPM2_SelfTest

X

TPM2_IncrementalSelfTest

X

TPM2_GetTestResult

X

Sitzungsbefehle

TPM2_StartAuthSession

X

TPM2_PolicyRestart

X

Objektbefehle

TPM2_Create

X

TPM2_Load

X

TPM2_LoadExternal

X

Empfohlen

TPM2_ReadPublic

X

TPM2_ActivateCredential

X

TPM2_MakeCredential

X

Empfohlen

TPM2_Unseal

X

TPM2_ObjectChangeAuth

X

Duplizierungsbefehle

TPM2_Duplicate

X

TPM2_Rewrap

X

TPM2_Import

X

Asymmetrische primitive Typen

TPM2_RSA_Encrypt

X

TPM2_RSA_Decrypt

X

TPM2_ECDH_KeyGen

X

TPM2_ECDH_ZGen

X

TPM2_ECC_Parameters

X

Symmetrische primitive Typen

TPM2_EncryptDecrypt

X

TPM2_Hash

X

TPM2_HMAC

X

Zufallszahlengenerator

TPM2_GetRandom

X

TPM2_StirRandom

X

Hash-/HMAC-/Ereignissequenzen

TPM2_HMAC_Start

X

TPM2_HashSequenceStart

X

Empfohlen

TPM2_SequenceUpdate

X

Empfohlen

TPM2_SequenceComplete

X

Empfohlen

TPM2_EventSequenceComplete

X

Empfohlen

Nachweisbefehle

TPM2_Certify

X

TPM2_CertifyCreation

X

TPM2_Quote

X

TPM2_GetSessionAuditDigest

X

TPM2_GetCommandAuditDigest

X

TPM2_GetTime

X

Anonyme Nachweisbefehle

TPM2_Commit

X

Signaturüberprüfungsbefehle

TPM2_VerifySignature

X

Empfohlen

TPM2_Sign

X

Befehlsüberwachung

TPM2_SetCommandCodeAuditStatus

X

Integritätssammlung

TPM2_PCR_Extend

X

TPM2_PCR_Event

X

TPM2_PCR_Read

X

TPM2_PCR_Allocate

X

TPM2_PCR_SetAuthPolicy

X

TPM2_PCR_SetAuthValue

X

TPM2_PCR_Reset

X

Erweiterte Autorisierungsbefehle

TPM2_PolicySigned

X

Empfohlen

TPM2_PolicySecret

X

TPM2_PolicyTicket

X

Empfohlen

TPM2_PolicyOR

X

TPM2_PolicyPCR

X

TPM2_PolicyLocality

X

TPM2_PolicyNV

X

TPM2_PolicyCounterTimer

X

Empfohlen

TPM2_PolicyCommandCode

X

TPM2_PolicyPhysicalPresence

X

TPM2_PolicyCpHash

X

Empfohlen

TPM2_PolicyNameHash

X

Empfohlen

TPM2_PolicyDuplicationSelect

X

Empfohlen

TPM2_PolicyAuthorize

X

Empfohlen

TPM2_PolicyAuthValue

X

TPM2_PolicyPassword

X

Empfohlen

TPM2_PolicyGetDigest

X

Hierarchiebefehle

TPM2_CreatePrimary

X

TPM2_HierarchyControl

X

TPM2_SetPrimaryPolicy

X

TPM2_ChangePPS

X

TPM2_ChangeEPS

X

TPM2_Clear

X

TPM2_ClearControl

X

TPM2_HierarchyChangeAuth

X

Wörterbuchangriffsfunktionen

TPM2_DictionaryAttackLockReset

X

TPM2_DictionaryAttackParameters

X

Verschiedene Verwaltungsfunktionen

TPM2_PP_Commands

X

TPM2_SetAlgorithmSet

X

Feldupgrade

TPM2_FieldUpgradeStart

X

Bereitstellung eines Updatemechanismus von Microsoft dringend empfohlen

TPM2_FieldUpgradeData

X

TPM2_FirmwareRead

X

Kontextverwaltung

TPM2_ContextSave

X

TPM2_ContextLoad

X

TPM2_FlushContext

X

TPM2_EvictControl

X

Uhren und Timer

TPM2_ReadClock

X

Verwendet zum Lesen des Startzählers

TPM2_ClockSet

X

Wahrscheinlich nur von Firmware verwendet

TPM2_ClockRateAdjust

X

Funktionalitätsbefehle

TPM2_GetCapability

X

TPM2_TestParms

X

Nicht flüchtiger Speicher

TPM2_NV_DefineSpace

X

TPM2_NV_UndefineSpace

X

Win 8 verwendet möglicherweise stattdessen „Clear“

TPM2_NV_UndefineSpaceSpecial

X

TPM2_NV_ReadPublic

X

TPM2_NV_Write

X

Wahrscheinlich nur von OEM verwendet

TPM2_NV_Increment

X

TPM2_NV_Extend

X

TPM2_NV_SetBits

X

TPM2_NV_WriteLock

X

TPM2_NV_GlobalWriteLock

X

TPM2_NV_Read

X

TPM2_NV_ReadLock

X

TPM2_NV_ChangeAuth

X

TPM2_NV_Certify

X