TPMTool 是 Windows 中的一款命令行工具,用于与 TPM 进行交互。TPM(受信任平台模块)是一种嵌入式硬件组件,旨在增强计算机的安全性,通常用于加密操作、数字证书、硬盘加密(例如 BitLocker)以及其他安全相关任务。使用 tpmtool,可以查看 TPM 设备的状态、获取设备信息、收集日志以及执行一些调试和诊断操作。

 

tpmtool | Microsoft Learn

TPMTool 是 Windows 操作系统中用于与受信任平台模块(TPM)进行交互的命令行工具。TPM 是一种硬件安全模块,它用于提供硬件级的加密支持,确保操作系统和应用程序的安全性。TPMTool 允许用户检查、配置和诊断与 TPM 相关的设置,查看日志,比较 PCR(平台配置寄存器)值等。

1. 什么是 TPMTool 命令?

TPMTool 是 Windows 中的一款命令行工具,用于与 TPM 进行交互。TPM(受信任平台模块)是一种嵌入式硬件组件,旨在增强计算机的安全性,通常用于加密操作、数字证书、硬盘加密(例如 BitLocker)以及其他安全相关任务。使用 tpmtool,可以查看 TPM 设备的状态、获取设备信息、收集日志以及执行一些调试和诊断操作。

2. 常见的 TPMTool 命令及用途:

  • 获取 TPM 设备信息:

    • 命令:tpmtool getdeviceinformation
    • 功能:显示 TPM 设备的详细信息,包括版本、状态等。
       
      术语 解释
      TPM 受信平台模块(Trusted Platform Module),硬件安全设备,用于增强计算机的安全性。
      TPM 2.0 TPM的第二代版本,具有更多的功能,如改进的加密算法和更强的安全保护。
      TPM INTC 指代Intel(英特尔)制造的TPM芯片,通常用于支持硬件加密、身份验证等。
      TPM Intel 具体指Intel品牌的TPM设备,通常与英特尔的硬件平台兼容。
      TPM 600.7.0.0 特定版本号的TPM固件,表示特定固件版本的TPM实现。
      PPI 1.3 平台保护接口(Platform Protection Interface)的1.3版本,用于与TPM进行通信的标准。
      Bitlocker PCR7 BitLocker(微软的磁盘加密工具)使用的平台配置寄存器(PCR7)来存储加密信息。
      TPM 1.38 指TPM 1.2版本中的一个特定版本号,较旧的TPM规范,功能相对简单。
      TPM Wednesday, October 30, 2019 TPM相关事件的日期,可能指代某次固件更新、审计事件或设置更改的时间。
      1.03 特定的TPM版本号,可能是某个硬件或固件版本。
      -0 可能表示TPM设备或配置中的状态码或值,通常为数值状态或错误代码。
      -31 可能是某个特定错误码或状态,通常表示TPM设备的异常或错误状态。
      -600s 表示某个时间段,可能是TPM操作持续的时间,单位为秒(600秒)。
      -86400s 表示某个时间段,86400秒等于1天,可能表示某个操作持续的时间或系统恢复时间。

      注释:

      • TPM:是硬件安全模块,广泛应用于提供加密密钥管理、身份验证等功能。
      • BitLocker PCR7:PCR(平台配置寄存器)7用于存储在开机时系统的某些认证信息,通常是TPM加密信息,BitLocker使用它来确保系统启动的安全性。

      这些术语常见于TPM(受信平台模块)相关的硬件和软件的操作中,尤其在加密、安全认证等场景下。

  • 收集 TPM 日志:

    • 命令:tpmtool gatherlogs [输出目录路径]
    • 功能:收集 TPM 操作日志并将其保存在指定目录中。
  • TPM 驱动程序跟踪:

    • 命令:tpmtool drivertracing start 或 tpmtool drivertracing stop
    • 功能:启动或停止 TPM 驱动程序的跟踪,用于调试 TPM 驱动程序操作。
  • 比较 PCR(平台配置寄存器):

    • 命令:tpmtool comparepcr [哈希算法]
    • 功能:比较 TPM 中的平台配置寄存器(PCR)值,确保设备的完整性。
  • 打印 PCR 值:

    • 命令:tpmtool printpcr [哈希算法]
    • 功能:打印出指定哈希算法下的 PCR 值。
  • 帮助命令:

    • 命令:tpmtool /?
    • 功能:显示 tpmtool 的帮助信息,列出所有可用命令及其功能。

3. 为什么使用 TPMTool 命令?

  • 增强安全性: TPM 可以用于加密操作,如 BitLocker 磁盘加密,保护计算机中的数据。通过 tpmtool,管理员可以确保 TPM 正常工作并进行诊断。

  • 系统诊断和故障排除: TPMTool 提供的日志收集和驱动跟踪功能有助于管理员诊断与 TPM 相关的任何问题。

  • 管理和配置 TPM: 对于需要管理受信任平台模块(TPM)并确保其符合安全要求的组织,tpmtool 提供了一些方便的命令,帮助配置 TPM 的行为,查看设备信息等。

  • 检查和验证设备完整性: 通过比较和打印 PCR 值,可以验证系统的完整性和可靠性,确保没有篡改。

总之,tpmtool 是一个有用的工具,可以帮助管理员与 TPM 交互,诊断其状态,收集日志并进行配置,确保系统的安全性。


TPMTool 是由微软(Microsoft)开发的命令行工具,主要用于与 Windows 操作系统中的受信任平台模块(TPM)进行交互和管理。其设计目的是帮助用户、IT 管理员和开发人员诊断、配置和调试 TPM 设备。TPM 是一种硬件安全模块(HSM),通常用于数据加密和身份验证等安全任务。微软将其集成到 Windows 操作系统中,以增强操作系统的安全性,尤其是在保护数据隐私、设备启动安全等方面。

TPMTool 的起源:

  1. TPM 技术的背景: TPM(受信任平台模块)技术最早在 2000 年由 Trusted Computing Group (TCG) 推动和制定。它的目标是通过硬件级别的安全功能,保护计算机系统免受恶意软件和物理攻击的威胁。TPM 通常内置于现代计算机的主板上,提供强大的加密、身份验证和密钥管理功能。

  2. 与 Windows 操作系统的集成: 微软在其操作系统中加入了对 TPM 的支持,尤其是在 Windows 7 及之后的版本中,TPM 被广泛用于功能如 BitLocker 加密Windows Hello 等。随着 Windows 操作系统越来越依赖硬件加密技术,TPM 也成为了操作系统安全功能的一个重要组成部分。

  3. 命令行工具的需求: 随着 TPM 技术的普及和运用,尤其是在企业环境中,IT 管理员和开发人员需要一种方便的方式来管理和诊断 TPM 设备。TPMTool 就是为了满足这种需求而开发的。该工具帮助用户获取 TPM 设备信息、检查其健康状态、查看日志等,以确保 TPM 正常运行并支持各种加密和身份验证功能。

  4. 工具的功能和演变: TPMTool 提供了一些基础的命令行功能,包括获取设备信息、收集日志、检查和配置 TPM 状态等。随着 Windows 操作系统版本的更新,TPMTool 也不断更新,增加了更多的功能,进一步增强了对 TPM 管理和调试的支持。

TPMTool 起源于微软对 TPM 技术的集成和支持需求,特别是在 Windows 操作系统中的加密和安全功能的使用日益增加时,开发了这个命令行工具,帮助管理员和开发人员更有效地管理 TPM 设备、调试和配置相关功能。


TPMTool 的发展经历了多个阶段,随着 Windows 操作系统对硬件安全模块(TPM)集成的加深以及 IT 管理需求的增加,TPMTool 工具本身也在不断演进和扩展。下面是 TPMTool 发展的几个关键阶段:

1. 早期阶段:TPM 的引入和初步集成

  • 2000 年代初期:受信任平台模块(TPM)由 Trusted Computing Group (TCG) 推出,旨在提高计算机的安全性,特别是在加密、身份验证和数据保护方面。TPM 技术主要应用于硬件级别的安全保护,并逐步被集成到主板上。
  • Windows Vista(2007 年):Windows Vista 是微软第一个正式支持 TPM 的操作系统,特别是在 BitLocker 加密 和 受信任的启动(Trusted Boot) 等功能中,TPM 提供了底层的硬件安全支持。这时,TPM 被广泛应用于企业级设备和高安全性环境中。

2. 中期阶段:增强的管理与调试功能

  • Windows 7(2009 年):随着 Windows 7 的发布,TPM 的支持逐渐加强,特别是在 BitLocker 驱动器加密 和 用户身份验证(如 Windows Hello)等领域。微软增加了更多用于配置和管理 TPM 的工具和接口。
  • TPM 管理工具的初步出现:虽然在早期阶段,TPM 的配置和管理依赖于 GUI(图形用户界面)工具和控制面板,但随着企业级使用的增加,微软开始开发命令行工具,以便 IT 管理员能够更高效地管理大量设备。

3. 后期阶段:命令行工具的出现和增强

  • Windows 8(2012 年):Windows 8 引入了更多基于 TPM 的功能,例如支持更强的加密和更安全的启动过程。随着企业对 TPM 依赖度的增加,微软开发了 TPMTool 命令行工具,允许管理员使用更细粒度的命令来管理 TPM。
  • TPMTool 的功能扩展: TPMTool 的初期功能包括检查 TPM 设备的健康状态、查看 TPM 配置和配置 TPM 的某些选项。该工具也用于诊断 TPM 的状态并生成日志文件,有助于分析 TPM 故障或配置问题。

4. 当前阶段:Windows 10 及 Windows 11 和进一步增强的 TPM 支持

  • Windows 10(2015 年):Windows 10 加强了对 TPM 的支持,并引入了多种新的硬件安全功能,例如 Windows Hello 和更强的 BitLocker 加密。微软加强了 TPM 的管理功能,尤其是在企业环境中,TPMTool 也得到了进一步完善,使其更加易于与其他管理工具(如 Group Policy)结合使用。
  • Windows 11(2021 年):Windows 11 强调了硬件安全性,并要求 TPM 2.0 作为系统要求之一。Windows 11 的发布使得 TPM 2.0 成为标准,并进一步提升了 TPMTool 的功能,帮助管理员管理和诊断最新的 TPM 设备。
  • 功能增强:除了基础的功能(如查看 TPM 配置、诊断信息和日志),TPMTool 现在还支持一些高级功能,如:
    • 远程清除 TPM。
    • 配置 TPM 密钥。
    • 启用或禁用特定的 TPM 功能。

5. 未来发展:云端与自动化管理

  • 随着企业云计算和远程工作环境的兴起,微软可能会进一步扩展 TPMTool,特别是在自动化管理和远程部署方面。TPMTool 可能会与云服务进行更深度的集成,为管理员提供跨多个设备的统一管理平台。
  • 安全性提升:随着安全威胁的发展,TPM 的管理工具可能会继续增加新的安全功能,例如更精细的密钥管理、更强的身份验证机制等。

TPMTool 随着微软操作系统对 TPM 支持的加深而发展。从最初的基础加密支持到现代操作系统中的强大硬件安全保护,TPMTool 的功能逐步增强,以满足 IT 管理员和企业对硬件级安全的日益需求。随着 TPM 技术的持续发展和新的硬件安全需求的出现,TPMTool 也将不断进化,以提供更强大的管理、配置和调试功能。


功能分类 命令 参数说明 示例
设备信息 tpmtool getdeviceinformation 获取TPM设备的详细信息,显示TPM硬件和配置状态。 tpmtool getdeviceinformation
日志收集 tpmtool gatherlogs [OUTPUT DIRECTORY PATH] 收集TPM日志并将其保存到指定目录路径。 tpmtool gatherlogs C:\Users\Public
驱动程序跟踪 tpmtool drivertracing start 启动TPM驱动程序的跟踪功能,用于调试或分析TPM驱动的行为。 tpmtool drivertracing start
  tpmtool drivertracing stop 停止TPM驱动程序的跟踪功能。 tpmtool drivertracing stop
可选命令 tpmtool optionalcommands 执行TPM相关的可选命令。 tpmtool optionalcommands
PCR(平台配置寄存器) tpmtool comparepcr [HASH ALGORITHM] 比较TPM的PCR值,使用指定的哈希算法。 tpmtool comparepcr sha256
  tpmtool printpcr [HASH ALGORITHM] 打印TPM的PCR值,使用指定的哈希算法。 tpmtool printpcr sha256
帮助文档 tpmtool /? 显示命令行帮助文档,列出所有可用的命令和参数。 tpmtool /?

参数说明:

  • [OUTPUT DIRECTORY PATH]:指定保存日志的目录路径。例如 C:\Users\Public
  • [HASH ALGORITHM]:指定用于PCR值比较或打印的哈希算法,例如 sha256

示例:

  1. 获取设备信息
    运行 tpmtool getdeviceinformation 命令将显示有关系统中TPM设备的详细信息。

  2. 收集日志到指定目录
    运行 tpmtool gatherlogs C:\Users\Public 将会把TPM相关的日志文件保存到 C:\Users\Public 目录。

  3. 启动TPM驱动程序跟踪
    运行 tpmtool drivertracing start 启动TPM驱动程序的调试跟踪。

  4. 停止TPM驱动程序跟踪
    运行 tpmtool drivertracing stop 停止TPM驱动的调试跟踪。

  5. 打印TPM PCR值
    运行 tpmtool printpcr sha256 将打印当前TPM设备的PCR值,使用SHA-256哈希算法。

  6. 比较TPM PCR值
    运行 tpmtool comparepcr sha256 将比较系统中当前的PCR值与存储的PCR值,使用SHA-256哈希算法进行比较。

  7. 查看帮助文档
    运行 tpmtool /? 可以查看所有可用命令及其用法的帮助文档。

通过这种分类和示例,用户可以快速理解每个命令的功能和如何使用它们来进行TPM相关的操作和故障排除。


TPMTool 功能的分类表格,涵盖了常见功能及其说明:

功能类别 功能名称 功能描述
信息查询 检查 TPM 状态 显示 TPM 是否启用、TPM 版本、制造商信息以及设备健康状态。
  查看 TPM 配置 获取 TPM 配置详细信息,例如支持的功能、密钥存储方式等。
  获取 TPM 日志 显示 TPM 事件日志,记录 TPM 相关的操作和状态变化。
管理操作 启用 TPM 启用计算机上的 TPM(如果尚未启用)。
  禁用 TPM 禁用计算机上的 TPM 功能。
  初始化 TPM 初始化未配置的 TPM,并设置管理员密码等。
  清除 TPM 完全清除 TPM 存储的所有数据,通常用于重置或更换设备。
密钥管理 配置 TPM 密钥 配置和管理 TPM 的密钥存储区,生成、存储、更新和删除 TPM 密钥。
  密钥保护 配置 TPM 密钥保护策略,确保密钥在硬件上存储并受到安全保护。
诊断与故障排除 诊断 TPM 健康 检查 TPM 是否存在故障或错误,并返回详细的故障信息。
  查看 TPM 错误日志 获取与 TPM 相关的错误日志,以帮助排除故障。
安全性增强 启用受信任启动(Secure Boot) 启用 TPM 以确保计算机只启动经过验证的受信任操作系统。
  启用 BitLocker 加密 启用基于 TPM 的 BitLocker 磁盘加密功能,保护存储的数据免受未授权访问。
高级功能 远程管理 TPM 通过远程管理工具配置和管理 TPM,适用于大规模部署和管理的场景。
  迁移 TPM 数据 支持 TPM 配置和密钥的迁移,例如在硬件更换时迁移 TPM 信息。
  启用身份验证 启用基于 TPM 的身份验证,如 Windows Hello 身份验证等。

这个表格列出了 TPMTool 的常见功能分类和具体操作,帮助管理员在系统上进行 TPM 配置、管理和诊断等任务。


TPMTool 是用于管理受信任平台模块(TPM,Trusted Platform Module)的工具,它依赖于 TPM 的底层硬件和固件来执行各种安全操作。要理解 TPMTool 的底层原理,我们需要先了解 TPM 的基本工作原理和其与操作系统的交互方式。

1. TPM 模块的工作原理

TPM 是一种独立的硬件安全模块,专门设计用于提高计算机系统的安全性。TPM 的底层原理基于加密技术,特别是公钥基础设施(PKI)和哈希函数。其核心功能包括:

  • 密钥生成与存储: TPM 生成和存储加密密钥,并为这些密钥提供硬件级的保护。密钥不会离开 TPM,只有 TPM 可以使用这些密钥进行加解密操作。

  • 数字签名与验证: 使用 TPM 存储的私钥生成数字签名,并对外部数据进行验证,以确保数据的完整性和来源。

  • 安全启动与完整性检查: TPM 支持测量启动过程中的每个组件,以确保系统启动时没有被篡改。通过“度量值”来确保引导加载程序和操作系统没有被修改,确保操作系统的完整性。

  • 加密存储: TPM 通过 BitLocker 等功能加密存储的磁盘数据,保护数据免受未授权访问。

2. TPM 与 操作系统的交互

TPMTool 是操作系统与 TPM 之间的交互桥梁。它主要通过操作系统的 TPM 驱动程序与 TPM 进行通信。以下是 TPMTool 的工作流程:

  • 初始化 TPM: 系统启动时,TPM 驱动会与 TPM 进行通信,确认 TPM 的状态、配置及其功能是否可用。TPMTool 可以读取 TPM 的状态,检查其是否启用、健康状态如何等。

  • TPM 命令执行: TPMTool 可以发送 TPM 指令到 TPM 硬件进行特定操作,如密钥生成、加密解密、清除数据等。TPM 支持通过标准的 TPM 指令集(如 TPM 2.0 规范定义的命令)进行操作,TPMTool 通过这些命令来控制 TPM 执行特定任务。

  • 密钥管理: TPMTool 可以与 TPM 交互,生成、存储、导入和导出加密密钥。所有密钥的生成和存储都在 TPM 内部进行,外部无法直接访问这些密钥。只有在 TPM 内部的安全环境下才能使用这些密钥。

  • 受信任启动与加密: 通过 TPMTool 可以配置受信任启动或启动密钥保护(如 BitLocker)。TPM 通过“测量”引导过程中加载的每个模块和操作系统的状态来确保系统启动过程的完整性。

3. TPM 命令和接口

TPM 通过一系列标准的命令集与操作系统和应用程序交互,通常遵循 TPM 2.0 规范。TPMTool 使用这些命令来执行底层的操作,主要包括:

  • TPM 认证(TPM Authentication):验证对 TPM 的访问权限。
  • TPM 密钥生成(TPM Key Generation):通过 TPM 生成对称或非对称密钥。
  • TPM 存储与保护(TPM Storage & Protection):加密和存储密钥或数据。
  • TPM 报告和测量(TPM Attestation & Measurement):报告硬件和软件的启动状态,测量和验证系统组件的完整性。
  • TPM 随机数生成(TPM RNG):生成高质量的随机数,供加密操作使用。

4. TPMTool 的底层通信协议

TPMTool 与 TPM 的通信通常通过以下协议:

  • TSS(Trusted Software Stack): 是用于与 TPM 交互的中间层软件框架。TSS 提供一套 API,允许开发者在应用程序中实现对 TPM 的操作。TPMTool 可能通过 TSS 与 TPM 硬件进行通信。

  • TPM 指令集(TPM Command Set): TPM 设备遵循特定的指令集(如 TPM 2.0 指令集),每个命令都会触发 TPM 执行特定任务,TPMTool 通过这些命令来控制 TPM 完成所需操作。

  • 设备接口(Device Interface): 通过操作系统中的设备接口(如 Windows 中的 TPM 驱动),TPMTool 能与物理 TPM 硬件进行交互。

5. TPMTool 的常见操作

  • TPM 状态查询: 检查 TPM 是否启用、运行健康状态等。
  • 密钥生成与管理: 利用 TPMTool 生成和管理加密密钥。
  • TPM 清除与重置: 清除 TPM 存储的数据,进行重置。
  • 启用或禁用 BitLocker 加密: 配置 TPM 以启用磁盘加密,保护数据安全。

TPMTool 是操作系统与 TPM 硬件之间的管理工具,借助底层 TPM 硬件的加密和安全特性,执行一系列安全操作。它通过与 TPM 驱动及 TPM 命令集交互,实现密钥管理、系统完整性检查、安全启动等功能,从而增强操作系统和存储数据的安全性。


TPMTool 是用于管理和操作 TPM(受信任平台模块)的一种工具。在执行各种任务时,TPMTool 可能依赖一些特定的文件、驱动程序和库。以下是 TPMTool 一般依赖的文件和组件的简要概述:

1. TPM 驱动程序文件

为了与 TPM 进行通信,操作系统需要安装适当的 TPM 驱动程序。TPM 驱动程序是操作系统与 TPM 硬件进行交互的关键。常见的 TPM 驱动程序包括:

  • Windows 系统驱动程序:

    • tpm.sys:这是 Windows 系统中用于与 TPM 进行交互的核心驱动程序文件。它负责加载并控制 TPM 模块。
    • tpmbios.sys(在 BIOS 和固件层面用于 TPM 的早期初始化)和其他驱动程序文件,可能与特定的硬件厂商相关。
  • Linux 系统驱动程序:

    • tpm_tis.ko(TPM TIS 驱动):用于通过 TIS(Trusted Interface Specification)协议与 TPM 进行通信。
    • tpm_crb.ko(TPM CRB 驱动):适用于基于 CRB(Control Resource Bus)接口的 TPM。

这些驱动程序文件通常在操作系统安装时自动安装,也可以通过系统的硬件管理工具手动更新。

2. TPM 软件栈(TSS)

TSS(Trusted Software Stack)是操作系统与 TPM 交互的重要软件组件,提供了标准化的 API 和接口。TPMTool 会依赖 TSS 来发送和接收与 TPM 交互的命令。TSS 可以有不同的实现,常见的 TSS 包括:

  • TSS2(TPM 2.0 软件栈): 用于支持 TPM 2.0 设备的功能,提供用于与 TPM 2.0 模块交互的 API。

    • libtss2:提供用于与 TPM 2.0 硬件通信的共享库。
  • TSS1(TPM 1.2 软件栈): 如果使用的是较旧版本的 TPM(如 TPM 1.2),则可能使用 TSS1 栈。

TSS 提供的库文件和接口是 TPMTool 操作的基础,TPMTool 会调用这些库来实现与 TPM 的各种操作。

3. TPM 配置和日志文件

TPM 相关的操作有时需要配置文件来存储设置和状态信息。常见的配置文件和日志文件包括:

  • Windows 注册表文件:

    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TPM:Windows 注册表中的 TPM 配置。
  • Linux 配置文件:

    • /etc/tpm:在某些 Linux 系统中,TPM 配置文件可以存储在此位置,供 TPMTool 或其他 TPM 管理工具使用。
  • 日志文件:

    • 在执行 TPM 操作时,操作系统通常会生成日志文件,记录 TPM 相关的事件和错误。例如,Windows 事件日志中可能会记录与 TPM 相关的错误或警告。

4. TPMTool 本身的可执行文件

  • Windows 系统:

    • TPMTool.exe:Windows 中的 TPMTool 可执行文件,通常位于系统文件夹或者由管理员通过命令行工具启动。
  • Linux 系统:

    • tpm2-tools:Linux 下常用的 TPM 工具集合,包含许多与 TPM 交互的命令行工具。tpm2-tools 提供了类似于 TPMTool 的功能,并且通常依赖于 TPM2 的库文件。

5. TPM 指令集和固件

TPMTool 与 TPM 的通信依赖于 TPM 内部的指令集和固件。在 TPM 启动时,固件加载并执行这些指令,以支持如密钥生成、加解密等功能。固件通常由硬件厂商提供,并随着硬件的固件更新进行更新。

  • TPM 固件: 由硬件制造商提供,用于 TPM 模块的初始化、管理和指令执行。不同厂商的 TPM 模块可能有不同版本的固件。

TPMTool 的操作依赖于多个关键文件和组件,包括操作系统的 TPM 驱动程序、TSS(软件栈)库文件、TPM 配置与日志文件、以及 TPM 固件等。通过这些组件,TPMTool 能够与 TPM 硬件交互,执行安全操作,如密钥管理、加密解密、数据保护等。

 


按功能分类的 tpmtool 命令表格:

功能分类 命令 描述
获取设备信息 tpmtool getdeviceinformation 获取 TPM 设备的相关信息。
收集日志 tpmtool gatherlogs [输出目录路径] 收集 TPM 日志并将其保存到指定的目录中。
驱动跟踪 tpmtool drivertracing start 启动 TPM 驱动操作的跟踪。
  tpmtool drivertracing stop 停止 TPM 驱动跟踪。
可选命令 tpmtool optionalcommands 用于执行其他 TPM 操作。
比较 PCR tpmtool comparepcr [哈希算法] 使用指定的哈希算法比较 PCR(平台配置寄存器)值。
打印 PCR tpmtool printpcr [哈希算法] 使用指定的哈希算法打印 PCR 值。
帮助 tpmtool /? 显示帮助信息及可用命令。

示例:

  1. tpmtool gatherlogs C:\Users\Public — 收集日志并将其保存在指定目录。
  2. tpmtool comparepcr sha256 — 使用 SHA256 哈希算法比较 PCR 值。
  3. tpmtool drivertracing start — 启动 TPM 驱动跟踪。

 

tpmtool
描述:
    此实用程序可用于获取有关受信任的平台模块(TPM)的信息。
    有关最新文档,请转到 https://aka.ms/tpmtool

语法:
    tpmtool [parameter] [<参数>]

参数:
    GETDEVICEINFORMATION                     显示 TPM 的基本信息。

    GATHERLOGS [OUTPUT DIRECTORY PATH]       收集 TPM 日志并将其放置在指定的目录中。
                                             如果未指定路径,则当前路径为默认路径。

    DRIVERTRACING [START / STOP]             开始/停止收集驱动程序跟踪。

    /?                                       显示此帮助消息。

示例:
    tpmtool /?

    tpmtool getdeviceinformation

    tpmtool gatherlogs C:\Users\Public

    tpmtool drivertracing start

    tpmtool drivertracing stop

要制作一个批处理 .cmd 文件来创建一个菜单,执行你提到的 tpmtool 命令,你可以按照以下步骤进行:

批处理文件内容 (tpm_menu.cmd):

Copy Code
@echo off
:menu
cls
echo ================================
echo TPM 工具菜单
echo ================================
echo 1. 获取设备信息 (tpmtool getdeviceinformation)
echo 2. 收集日志 (tpmtool gatherlogs)
echo 3. 开始驱动程序跟踪 (tpmtool drivertracing start)
echo 4. 停止驱动程序跟踪 (tpmtool drivertracing stop)
echo 5. 显示可选命令 (tpmtool optionalcommands)
echo 6. 比较 PCR (tpmtool comparepcr sha256)
echo 7. 打印 PCR (tpmtool printpcr sha256)
echo 8. 退出
echo ================================
set /p choice=请输入你的选择 (1-8):

if "%choice%"=="1" goto get_device_info
if "%choice%"=="2" goto gather_logs
if "%choice%"=="3" goto driver_tracing_start
if "%choice%"=="4" goto driver_tracing_stop
if "%choice%"=="5" goto optional_commands
if "%choice%"=="6" goto compare_pcr
if "%choice%"=="7" goto print_pcr
if "%choice%"=="8" exit

:get_device_info
tpmtool getdeviceinformation
pause
goto menu

:gather_logs
set /p path=请输入日志保存路径 (默认: C:\Users\Public): 
if "%path%"=="" set path=C:\Users\Public
tpmtool gatherlogs %path%
pause
goto menu

:driver_tracing_start
tpmtool drivertracing start
pause
goto menu

:driver_tracing_stop
tpmtool drivertracing stop
pause
goto menu

:optional_commands
tpmtool optionalcommands
pause
goto menu

:compare_pcr
tpmtool comparepcr sha256
pause
goto menu

:print_pcr
tpmtool printpcr sha256
pause
goto menu

说明:

  1. @echo off:关闭命令显示,清理输出。
  2. 菜单:在命令行中显示一个简单的文本菜单,用户可以选择不同的选项。
  3. set /p choice:让用户输入一个选项。
  4. 每个命令执行的块:每个选项都会调用相应的 tpmtool 命令,执行完后使用 pause 命令等待用户按任意键继续返回菜单。
  5. goto menu:每个命令执行完后,跳回菜单界面。

如何使用:

  1. 将上述代码保存为 .cmd 文件,例如 tpm_menu.cmd
  2. 双击 .cmd 文件运行它。
  3. 按照菜单的提示输入选项。

这样,你就可以方便地通过菜单执行 TPM 相关的命令了。如果你希望对路径或其他参数进行更多自定义修改,也可以在相应的命令部分进行调整。

 

posted @ 2024-08-01 22:06  suv789  阅读(654)  评论(0)    收藏  举报