TSS.MSR-源码阅读-1

TPM-传输连接

/**
      * 使用默认端口连接到在本地主机上运行的模拟器。
      * 成功连接后,此方法会重启模拟器并执行 TPM2_Statup(SU_CLEAR) 命令。
      * 请注意,一次只能有一个 Tpm 设备实例可以连接到本地模拟器。
      *
      * @return 具有连接的 TpmDeviceTcp 的新 Tpm 实例
      */

 

TpmDevice 抽象

 针对不同的设备:

a simulator,
TBS interface on Windows
/dev/tpm0 on linux

分发接口

/** Sends the TPM command buffer byte array to the TPM
 *  @param cmdBuf  TPM command buffer
 */
public abstract void dispatchCommand(byte[] cmdBuf);

相关常量

        // 平台层次结构已启用,硬件平台功能(例如
         // 因为 SignalHashStart/Data/End) 可用。
         TpmPlatformAvailable = 0x01,

         // 连接表示 TPM 资源管理器 (TRM),而不是 TPM 设备。
         // 这意味着上下文管理命令不可用,句柄值
         // 返回给客户端的是虚拟化的。
         TpmUsesTrm = 0x02,

         // TRM 处于原始模式(即没有执行实际的资源虚拟化)。
         TpmInRawMode = 0x04,

         // 支持物理存在信号 (SignalPPOn/Off)。
         TpmSupportsPP = 0x08,

         // 仅在设置了 TpmPlatformAvailable 时有效。
         // 不支持系统和 TPM 电源控制信号 (SignalPowerOn/Off)。
         TpmNoPowerCtl = 0x10,

         // 仅在设置了 TpmPlatformAvailable 时有效。
         // TPM 位置无法更改。
         TpmNoLocalityCtl = 0x20,

         //
         // 端点类型描述符
         //

         // 连接介质为套接字。
         // 与 TSS_TbsConn 互斥以更好地检查错误
         TpmSocketConn = 0x1000,

         // 连接介质是操作系统特定的句柄。
         // 与 TSS_SocketConn 互斥以更好地检查错误
         TpmTbsConn = 0x2000,

         // 仅对 TSS_SocketConn 有效。 这是一个旧的套接字连接
         // Linux 上英特尔用户模式 TRM 实现的版本
         TpmLinuxOldUserModeTrm = 0x4000,

         // 通过表示符合 TCG 的 TCTI 连接接口的上下文连接
         TpmTctiConn = 0x8000;

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值