记一次双系统配置TPM的过程
前言
既然是涉及双系统,这里也顺便记录下一个安装Win + Ubuntu双系统可能出现的问题:解决由于intelRST问题导致无法安装ubuntu。
写下此篇时,还未开始动手修改IBM ACS源代码,待日后实现了修改方案更新本文。
正篇
起因 – IBM ACS发起注册失败
之前都是在Vmware的虚拟机上模拟的TPM进行操作的,这一次是拿到了一台物理机,带物理TPM 2.0芯片。在装好Ubuntu之后,编译安装ibmtss和ibmacs(教程:IBM Attestation Client Server测试) 。
想要进行一次简单的证实测试,但是却出现了问题通过nvread读取EK相关的信息,全部都提示失败。
根据相关资料[3]的描述,可以得知厂商预设的EK相关信息是存储在NV区域的低地址空间。
- 直接读取nv区域:
- 通过其他工具读取EK Template\Nonce\Certificate
处理方法1 – 自签名EK
自签名EK就没什么好说的了,但是这并不是一个安全的方式。
1 | # 将EK证书存储在TPM上 |
处理方法2 – 远程EK证书
该方式适合使用了Intel PTT技术的环境。
“Device-Node“ retrieving the endorsement-key-certificate to send to the “Privacy-CA“. There are two possible locations where the endorsement key certificates are provided by the TPM manufacturer. While most TPM manufacturers store them in the TCG specified NV indices , some make it available for download through a web hosting. Let’s look at both these methods.
1 | # Location 1 - TPM2 NV Index 0x1c00002 is the TCG specified location for RSA-EK-certificate. |
处理方法3 – DAA
由于DAA方式的证实,并不需要EK证书的参与,因此可以绕开无法获取EK证书的问题。但是IBM ACS默认是不支持DAA方式的,因此需要修改源码实现。
DAA的相关资料参考:TPM2.0 ECDAA方法测试
相关资料
记一次双系统配置TPM的过程