Método IsCommandPresent da classe Win32_Tpm

O método IsCommandPresent da classe Win32_Tpm indica se há suporte para um comando com o ordinal especificado pelo dispositivo.

Sintaxe

uint32 IsCommandPresent(
  [in]  uint32  CommandOrdinal,
  [out] boolean IsCommandPresent
);

Parâmetros

CommandOrdinal [in]

Tipo: uint32

Um valor inteiro que especifica um comando no dispositivo.

Valor Significado
TPM_ActivateIdentity
122 (0x7A)
Permite que o proprietário do TPM desembrulgue a chave de sessão que permite a descriptografia da credencial AIK (Chave de Identidade de Atestado), obtendo assim a garantia de que a credencial é válida para o TPM.
TPM_AuthorizeMigrationKey
43 (0x2B)
Permite que o proprietário do TPM crie um tíquete de autorização de migração para que os usuários possam migrar chaves sem envolvimento do proprietário do TPM.
TPM_CertifyKey
50 (0x32)
Certifica uma chave carregada com a parte pública de outra chave. Uma chave de identidade do TPM só pode certificar chaves que não podem ser migradas, enquanto a assinatura e as chaves herdadas podem certificar todas as chaves.
TPM_CertifyKey2
51 (0x33)
Com base em TPM_CertifyKey, mas inclui parâmetros extras para certificar uma CMK (Chave de Migração Certifiável).
TPM_CertifySelfTest
82 (0x52)
Executa um auto-teste completo e retorna um valor autenticado se o teste for aprovado. Não atualizado no TPM v1.2. Esse valor é bloqueado por padrão.
TPM_ChangeAuth
12 (0xC)
Permite que o proprietário de uma entidade (por exemplo, chave TPM) altere o valor de autorização dessa entidade.
TPM_ChangeAuthAsymFinish
15 (0xF)
Substituído por estabelecer uma sessão de transporte com o TPM e executar TPM_ChangeAuth. Esse valor é bloqueado por padrão.
TPM_ChangeAuthAsymStart
14 (0xE)
Substituído por estabelecer uma sessão de transporte com o TPM e executar TPM_ChangeAuth. Esse valor é bloqueado por padrão.
TPM_ChangeAuthOwner
16 (0x10)
Permite que o proprietário do TPM altere o valor de autorização do proprietário do TPM ou o valor de autorização da chave raiz de armazenamento (SRK).
TPM_CMK_ApproveMA
29 (0x1D)
Permite que o proprietário do TPM crie um tíquete de autorização para uma ou mais autoridades de migração ou de migração para que os usuários possam criar chaves de migração certificados (usando TPM_CMK_CreateKey) sem o envolvimento do proprietário do TPM.
TPM_CMK_ConvertMigration
36 (0x24)
Cria um BLOB de chave de migração certificável que pode ser carregado em outra plataforma usando a função TPM_LoadKey2, dado um número aleatório e o BLOB de migração da chave de migração certificável (conforme gerado usando TPM_CMK_CreateBlob).
TPM_CMK_CreateBlob
27 (0x1B)
Permite que uma entidade com conhecimento do tíquete de autorização de migração de uma chave de migração certificável (conforme gerado usando TPM_AuthorizeMigrationKey) crie um BLOB de migração necessário para mover a chave para uma nova plataforma ou chave pai.
TPM_CMK_CreateKey
19 (0x13)
Gera e cria uma chave de migração certificada assimétrica segura, considerando o tíquete de autorização para uma ou mais autoridades de migração ou de migração (conforme gerado usando TPM_CMK_ApproveMA).
TPM_CMK_CreateTicket
18 (0x12)
Permite que o proprietário do TPM crie um tíquete de verificação de assinatura para uma chave de migração certificável usando uma chave pública fornecida.
TPM_CMK_SetRestrictions
28 (0x1C)
Permite que o proprietário do TPM especifique o uso de uma chave de migração certificável.
TPM_ContinueSelfTest
83 (0x53)
Informa ao TPM que ele pode concluir o auto-teste de todas as funções do TPM.
TPM_ConvertMigrationBlob
42 (0x2A)
Cria um BLOB de chave que pode ser carregado em outra plataforma usando a função TPM_LoadKey2, dado um número aleatório e o BLOB de migração da chave (conforme gerado usando TPM_CreateMigrationBlob).
TPM_CreateCounter
220 (0xDC)
Permite que o proprietário do TPM crie um novo contador monotônico, atribua um valor de autorização a esse contador, incremente o valor do contador interno do TPM em um e defina o valor inicial do novo contador como o valor interno atualizado.
TPM_CreateEndorsementKeyPair
120 (0x78)
Cria a chave de endosso do TPM, se essa chave ainda não existir.
TPM_CreateMaintenanceArchive
44 (0x2C)
Permite que o proprietário do TPM crie um arquivo morto de manutenção que permite a migração de todos os dados mantidos pelo TPM, incluindo a chave raiz de armazenamento (SRK), a autorização do proprietário do TPM e as chaves que, de outra forma, não podem ser migradas usando outras funcionalidades.
TPM_CreateMigrationBlob
40 (0x28)
Permite que uma entidade com conhecimento do tíquete de autorização de migração de uma chave crie um BLOB de migração necessário para mover uma chave de migração para uma nova plataforma ou chave pai.
TPM_CreateRevocableEK
127 (0x7F)
Cria a chave de endosso do TPM (EK) usando opções que especificam se a chave de endosso pode ser redefinida e, nesse caso, o valor de autorização necessário para redefinir essa chave (se esse valor não for gerado pelo TPM). Esse é um comando opcional que pode expor um ataque de DOS (negação de serviço) se compatível com o fabricante da plataforma.
TPM_CreateWrapKey
31 (0x1F)
Gera e cria uma chave assimétrica segura.
TPM_DAA_JOIN
41 (0x29)
Permite que o proprietário do TPM estabeleça os parâmetros do DAA (Atestado Anônimo Direto) no TPM para uma autoridade emissora de DAA específica.
TPM_DAA_SIGN
49 (0x31)
Permite que o proprietário do TPM assine dados usando o DAA (Atestado Anônimo Direto).
TPM_Delegate_CreateKeyDelegation
212 (0xD4)
Permite ao proprietário de uma chave delegar o privilégio para usar essa chave.
TPM_Delegate_CreateOwnerDelegation
213 (0xD5)
Permite ao proprietário do TPM delegar o privilégio para executar comandos que normalmente exigem autorização de proprietário.
TPM_Delegate_LoadOwnerDelegation
216 (0xD8)
Permite que o proprietário do TPM carregue uma linha de uma tabela de delegação no armazenamento não volátil do TPM. Esse comando não pode ser usado para carregar BLOBs de delegação de chaves no TPM.
TPM_Delegate_Manage
210 (0xD2)
Permite que o proprietário do TPM gerencie tabelas da família de delegação. Esse comando deve ser executado pelo menos uma vez antes que os comandos de delegação para essa tabela de família possam ser executados.
TPM_Delegate_ReadTable
219 (0xDB)
Lê o conteúdo público da família e das tabelas delegadas armazenadas no TPM.
TPM_Delegate_UpdateVerification
209 (0xD1)
Permite que o proprietário do TPM atualize uma entidade de delegação para que ela continue a ser aceita pelo TPM.
TPM_Delegate_VerifyDelegation
214 (0xD6)
Interpreta um BLOB delegado e retorna se esse BLOB é válido no momento.
TPM_DirRead
26 (0x1A)
Substituído por TPM_NV_ReadValue e TPM_NV_ReadValueAuth. Esse valor é bloqueado por padrão.
TPM_DirWriteAuth
25 (0x19)
Substituído por TPM_NV_WriteValue e TPM_NV_WriteValueAuth. Esse valor é bloqueado por padrão.
TPM_DisableForceClear
94 (0x5E)
Desabilita a execução do comando TPM_ForceClear até que a plataforma seja reiniciada.
TPM_DisableOwnerClear
92 (0x5C)
Permite que o proprietário do TPM desabilite permanentemente a capacidade de executar o comando TPM_OwnerClear. Depois de usado, o único método de limpeza do TPM exigirá a execução do comando TPM_ForceClear.
TPM_DisablePubekRead
126 (0x7E)
Substituído por ter TPM_TakeOwnership desabilitar automaticamente a leitura da parte pública da chave de endosso (EK) usando TPM_ReadPubek. Esse valor é bloqueado por padrão.
TPM_DSAP
17 (0x11)
Gera um identificador de sessão de autorização para o protocolo DSAP (Delegate-Specific Authorization Protocol) usado para passar com segurança os dados de autorização delegados para o TPM e as informações que o TPM precisa para acompanhar esse identificador de sessão de autorização.
TPM_EstablishTransport
230 (0xE6)
Estabelece uma sessão de transporte que pode ser usada para transmitir confidencialmente segredos compartilhados, chaves de criptografia e logs de sessão para o TPM (usando TPM_ExecuteTransport).
TPM_EvictKey
34 (0x22)
Substituído por TPM_FlushSpecific. Esse valor é bloqueado por padrão.
TPM_ExecuteTransport
231 (0xE7)
Entrega um comando TPM encapsulado para o TPM em uma sessão de transporte. O TPM desembrulha o comando e, em seguida, executa o comando .
TPM_Extend
20 (0x14)
Adiciona um novo resumo a um PCR (registro de configuração de plataforma) especificado e retorna esse resumo estendido.
TPM_FieldUpgrade
170 (0xAA)
Permite uma atualização do fabricante da funcionalidade do TPM. Esse comando é específico para o fabricante do TPM.
TPM_FlushSpecific
186 (0xBA)
Libera do TPM um identificador de recurso especificado.
TPM_ForceClear
93 (0x5D)
Elimina o TPM. Esse comando requer presença física na plataforma e não pode ser executado pelo sistema operacional.
TPM_GetAuditDigest
133 (0x85)
Retorna o resumo da auditoria do TPM.
TPM_GetAuditDigestSigned
134 (0x86)
Retorna um resumo de auditoria do TPM assinado e uma lista de comandos auditados no momento.
TPM_GetAuditEvent
130 (0x82)
Removido devido a questões de segurança. Esse valor é bloqueado por padrão.
TPM_GetAuditEventSigned
131 (0x83)
Removido devido a questões de segurança. Esse valor é bloqueado por padrão.
TPM_GetCapability
101 (0x65)
Retorna informações do TPM.
TPM_GetCapabilityOwner
102 (0x66)
Removido devido a questões de segurança. Esse valor é bloqueado por padrão.
TPM_GetCapabilitySigned
100 (0x64)
Removido devido a questões de segurança. Esse valor é bloqueado por padrão.
TPM_GetOrdinalAuditStatus
140 (0x8C)
Removido devido a questões de segurança. Esse valor é bloqueado por padrão.
TPM_GetPubKey
33 (0x21)
Permite que um proprietário de uma chave carregada obtenha o valor da chave pública dessa chave.
TPM_GetRandom
70 (0x46)
Retorna dados aleatórios de um comprimento especificado do gerador de número aleatório do TPM.
TPM_GetTestResult
84 (0x54)
Fornece informações específicas e de diagnóstico do fabricante sobre os resultados do auto-teste.
TPM_GetTick
241 (0xF1)
Retorna a contagem de tiques atual do TPM.
TSC_PhysicalPresence
1073741834 (0x4000000A)
Indica a presença física na plataforma. Esse comando não pode ser executado pelo sistema operacional.
TSC_ResetEstablishmentBit
1073741835 (0x4000000B)
Indica se ocorreu uma sequência especial para criar um sistema operacional confiável na plataforma.
TPM_IncrementCounter
221 (0xDD)
Permite que o proprietário do contador incremente esse contador por um e retorne esse valor atualizado.
TPM_Init
151 (0x97)
Primeiro, o comando enviado pela plataforma para o TPM durante o processo de início. Esse comando não pode ser executado por software.
TPM_KeyControlOwner
35 (0x23)
Permite que o proprietário do TPM controle determinados atributos de chaves armazenados no cache de chaves do TPM.
TPM_KillMaintenanceFeature
46 (0x2E)
Permite que o proprietário do TPM impeça a criação de um arquivo morto de manutenção (usando TPM_CreateMaintenanceArchive). Essa ação é válida até que um novo proprietário do TPM seja definido (usando TPM_TakeOwnership).
TPM_LoadAuthContext
183 (0xB7)
Substituído por TPM_LoadContext. Esse valor é bloqueado por padrão.
TPM_LoadContext
185 (0xB9)
Carrega no TPM um contexto salvo anteriormente.
TPM_LoadKey
32 (0x20)
Substituído por TPM_LoadKey2. Esse valor é bloqueado por padrão.
TPM_LoadKey2
65 (0x41)
Carrega uma chave no TPM para uso adicional (por exemplo, wrap, unwrap, bind, unbind, seal, unseal, sign).
TPM_LoadKeyContext
181 (0xB5)
Substituído por TPM_LoadContext. Esse valor é bloqueado por padrão.
TPM_LoadMaintenanceArchive
45 (0x2D)
Permite que o proprietário do TPM carregue um arquivo morto de manutenção (gerado usando TPM_CreateMaintenanceArchive). Quando carregado, o valor de autorização para a chave raiz de armazenamento (SRK) é definido como o mesmo que a autorização de proprietário do TPM.
TPM_LoadManuMaintPub
47 (0x2F)
Carrega a chave pública do fabricante da plataforma no TPM para uso no processo de manutenção. Esse comando só pode ser executado uma vez e deve ser executado antes que uma plataforma seja enviada.
TPM_MakeIdentity
121 (0x79)
Permite que o proprietário do TPM gere uma AIK (Chave de Identidade de Atestado) que pode ser usada para assinar informações geradas internamente pelo TPM.
TPM_MigrateKey
37 (0x25)
Permite que o TPM migre um BLOB (conforme gerado usando TPM_CreateMigrationBlob ou TPM_CMK_CreateBlob) para um destino rescriptografando-o com uma determinada chave pública.
TPM_NV_DefineSpace
204 (0xCC)
Permite que o proprietário do TPM defina espaço para uma área de armazenamento não volátil no TPM. Essa definição inclui os requisitos de acesso para gravar e ler a área.
TPM_NV_ReadValue
207 (0xCF)
Lê de uma área de armazenamento nãovolatile definida.
TPM_NV_ReadValueAuth
208 (0xD0)
Lê de uma área de armazenamento nãovolatile definida, dada a autorização necessária para essa área.
TPM_NV_WriteValue
205 (0xCD)
Grava um valor especificado em uma área de armazenamento não involatile definida.
TPM_NV_WriteValueAuth
206 (0xCE)
Grava um valor especificado em uma área de armazenamento não involatile definida, dada a autorização necessária para essa área.
TPM_OIAP
10 (0xA)
Gera um identificador de sessão de autorização para o OIAP (Protocolo de Autorização de Object-Independent) usado para passar dados de autorização com segurança para o TPM e as informações necessárias pelo TPM para acompanhar esse identificador de sessão de autorização.
TPM_OSAP
11 (0xB)
Gera um identificador de sessão de autorização para o OSAP (Object-Specific Authorization Protocol) usado para passar dados de autorização com segurança para o TPM e as informações que o TPM precisa para acompanhar esse identificador de sessão de autorização.
TPM_OwnerClear
91 (0x5B)
Permite que o proprietário do TPM limpe o TPM.
TPM_OwnerReadInternalPub
129 (0x81)
Permite que o proprietário do TPM retorne a parte pública da chave de endosso do TPM (EK) ou da SRK (chave raiz de armazenamento).
TPM_OwnerReadPubek
125 (0x7D)
Substituído por TPM_OwnerReadInternalPub. Esse valor é bloqueado por padrão.
TPM_OwnerSetDisable
110 (0x6E)
Permite que o proprietário do TPM habilite ou desabilite o TPM.
TPM_PCR_Reset
200 (0xC8)
Redefine os registros de configuração de plataforma especificados (PCRs) para seu estado padrão.
TPM_PcrRead
21 (0x15)
Retorna o conteúdo de um PCR (registro de configuração de plataforma) especificado.
TPM_PhysicalDisable
112 (0x70)
Desabilita o TPM. Esse comando requer presença física na plataforma e não pode ser executado pelo sistema operacional.
TPM_PhysicalEnable
111 (0x6F)
Habilita o TPM. Esse comando requer presença física na plataforma e não pode ser executado pelo sistema operacional.
TPM_PhysicalSetDeactivated
114 (0x72)
Ativa ou desativa o TPM. Esse comando requer presença física na plataforma e não pode ser executado pelo sistema operacional.
TPM_Quote
22 (0x16)
Retorna um resumo assinado que é uma combinação do conteúdo de um PCR (registro de configuração de plataforma) especificado e alguns dados externos especificados. O resumo é assinado com uma chave carregada.
TPM_Quote2
62 (0x3E)
Semelhante ao comando TPM_Quote com a inclusão de informações de localidade para fornecer uma exibição mais completa da configuração da plataforma atual.
TPM_ReadCounter
222 (0xDE)
Retorna o valor do contador especificado.
TPM_ReadManuMaintPub
48 (0x30)
Retorna o resumo da chave de manutenção pública do fabricante da plataforma (carregada usando TPM_LoadManuMaintPub).
TPM_ReadPubek
124 (0x7C)
Retorna a parte pública da chave de endosso do TPM. Esse comando é desabilitado quando a propriedade do TPM é tomada.
TPM_ReleaseCounter
223 (0xDF)
Permite que o proprietário do contador libere o contador especificado. Nenhuma leitura ou incremento subsequente do contador terá êxito.
TPM_ReleaseCounterOwner
224 (0xE0)
Permite que o proprietário do TPM libere o contador especificado. Nenhuma leitura ou incremento subsequente do contador terá êxito.
TPM_ReleaseTransportSigned
232 (0xE8)
Conclui a sessão de transporte. Se o registro em log estiver ativado, esse comando retornará o hash de todas as operações executadas durante a sessão, juntamente com a assinatura digital do hash.
TPM_Reset
90 (0x5A)
Libera todos os recursos associados a sessões de autorização existentes. Não atualizado no TPM v1.2. Esse valor é bloqueado por padrão.
TPM_ResetLockValue
64 (0x40)
Redefine os mecanismos usados para proteger contra ataques em valores de autorização do TPM.
TPM_RevokeTrust
128 (0x80)
Limpa uma chave de endosso do TPM revogável (gerada usando TPM_CreateRevocableEK) e redefine o TPM, considerando o valor de autorização necessário para esse suporte de redefinição e plataforma para esse comando. Esse comando requer presença física na plataforma e não pode ser executado pelo sistema operacional.
TPM_SaveAuthContext
182 (0xB6)
Substituído por TPM_SaveContext. Esse valor é bloqueado por padrão.
TPM_SaveContext
184 (0xB8)
Salva um recurso carregado fora do TPM. Depois de executar esse comando com êxito, o TPM libera automaticamente a memória interna para sessões, mas deixa as chaves em vigor.
TPM_SaveKeyContext
180 (0xB4)
Substituído por TPM_SaveContext. Esse valor é bloqueado por padrão.
TPM_SaveState
152 (0x98)
Avisa um TPM para salvar algumas informações de estado.
TPM_Seal
23 (0x17)
Permite que o software proteja segredos para que eles sejam liberados somente se uma configuração de plataforma especificada for validada.
TPM_Sealx
61 (0x3D)
Permite que o software proteja segredos para que eles sejam liberados somente se uma configuração de plataforma especificada for validada. O segredo deve ser criptografado.
TPM_SelfTestFull
80 (0x50)
Testa todas as funções internas do TPM. Qualquer falha faz com que o TPM entre no modo de falha.
TPM_SetCapability
63 (0x3F)
Permite que o proprietário do TPM defina valores no TPM.
TPM_SetOperatorAuth
116 (0x74)
Define o valor de autorização do operador. Esse comando requer presença física na plataforma e não pode ser executado pelo sistema operacional.
TPM_SetOrdinalAuditStatus
141 (0x8D)
Permite que o proprietário do TPM defina o sinalizador de auditoria para um determinado número de comando.
TPM_SetOwnerInstall
113 (0x71)
Permite ou não permite a capacidade de inserir um proprietário. Esse comando requer presença física na plataforma e não pode ser executado pelo sistema operacional.
TPM_SetOwnerPointer
117 (0x75)
Define a referência à autorização de proprietário que o TPM usa ao executar uma sessão OIAP ou OSAP. Esse comando só deve ser usado para fornecer a funcionalidade de delegação de proprietário para código herdado que não dá suporte a DSAP.
TPM_SetRedirection
154 (0x9A)
Permite que o TPM se comunique diretamente com um processador de segurança conectado redirecionando a saída.
TPM_SetTempDeactivated
115 (0x73)
Permite que o operador da plataforma desative o TPM até o próximo início da plataforma. O operador deve ter presença física na plataforma ou apresentar o valor de autorização do operador definido com o comando TPM_SetOperatorAuth.
TPM_SHA1Complete
162 (0xA2)
Conclui um processo de resumo SHA-1 pendente e retorna a saída de hash SHA-1 resultante.
TPM_SHA1CompleteExtend
163 (0xA3)
Conclui um processo de resumo SHA-1 pendente, retorna a saída de hash SHA-1 resultante e incorpora esse hash em um PCR (registro de configuração de plataforma).
TPM_SHA1Start
160 (0xA0)
Inicia o processo de cálculo de um resumo SHA-1. Esse comando deve ser seguido pela execução do comando TPM_SHA1Update ou o processo SHA-1 é invalidado.
TPM_SHA1Update
161 (0xA1)
Insere blocos completos de dados em um resumo SHA-1 pendente (iniciado usando TPM_SHA1Start).
TPM_Sign
60 (0x3C)
Assina dados com uma chave de assinatura carregada e retorna a assinatura digital resultante.
TPM_Startup
153 (0x99)
Comando que deve ser chamado após TPM_Init para transmitir informações adicionais da plataforma para o TPM sobre o tipo de redefinição que está ocorrendo.
TPM_StirRandom
71 (0x47)
Adiciona entropia ao estado do gerador de número aleatório do TPM.
TPM_TakeOwnership
13 (0xD)
Assume a propriedade do TPM com um novo valor de autorização de proprietário, derivado da senha do proprietário. Entre outras condições que devem ser atendidas antes que esse comando possa ser executado, o TPM deve ser habilitado e ativado.
TPM_Terminate_Handle
150 (0x96)
Substituído por TPM_FlushSpecific. Esse valor é bloqueado por padrão.
TPM_TickStampBlob
242 (0xF2)
Assina um resumo especificado com a contagem de tiques atual do TPM usando uma chave de assinatura carregada.
TPM_UnBind
30 (0x1E)
Descriptografa dados criptografados anteriormente com a parte pública de uma chave associada ao TPM.
TPM_Unseal
24 (0x18)
Libera segredos lacrados anteriormente pelo TPM se as verificações de integridade, configuração de plataforma e autorização forem bem-sucedidas.

 

IsCommandPresent [out]

Tipo: booliano

Se true , um comando com o ordinal especificado terá suporte do dispositivo.

Valor retornado

Tipo: uint32

Todos os erros do TPM, bem como erros específicos dos Serviços Base do TPM, podem ser retornados.

Os códigos de retorno comuns estão listados abaixo.

Código/valor de retorno Descrição
S_OK
0 (0x0)
O método foi bem-sucedido.

 

Comentários

Os arquivos MOF (Managed Object Format) contêm as definições para classes WMI (Instrumentação de Gerenciamento do Windows). Os arquivos MOF não são instalados como parte do SDK do Windows. Eles são instalados no servidor quando você adiciona a função associada usando o Gerenciador do Servidor. Para obter mais informações sobre arquivos MOF, consulte MOF (Managed Object Format).

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows Server 2008 [somente aplicativos da área de trabalho]
Namespace
Root\CIMV2\Security\MicrosoftTpm
MOF
Win32_tpm.mof
DLL
Win32_tpm.dll

Confira também

Win32_Tpm