IBM Attestation Client Server测试 - Real Own
# 终端1 cd /opt/ibmtpm/src ./tpm_server # 终端2 cd /opt/ibmtss/utils ./powerup ./startup ## 由于这些证书是写在NV中的,因此可以事先将原来的NV备份 cp /opt/ibmtpm/src/NVChip /opt/ibmtpm/src/NVChip.bak ## 将RSA EK证书写入到NV中 createekcert.exe -rsa 2048 -cakey cakey.pem -capwd rrrr -v ## 将ECC EK证书写入到NV中 createekcert.exe -ecc nistp256 -cakey cakeyecc.pem -capwd rrrr -caalg ec -v
- 对于硬件TPM,则在其NV区域已经内置了EK证书。如果想要将其提取出来可以参照下列步骤:
读取NV存储区内的EK证书信息,并将其保存到文件。
# 创建RSA证书文件 nvread -ha 01c00002 | awk 'NR==1 {next} {print}' | xxd -r -ps | base64 | sed -e '1i -----BEGIN CERTIFICATE-----' -e '$a -----END CERTIFICATE-----' > VMW_EK_CACERT.pem # 同理创建ECC证书文件 nvread -ha 01c0000a | awk 'NR==1 {next} {print}' | xxd -r -ps | base64 | sed -e '1i -----BEGIN CERTIFICATE-----' -e '$a -----END CERTIFICATE-----' > VMW_EKECC_CACERT.pem
nvwrite.exe -ha 01c0000c -ic 1122334455
nvread.exe -ha 01c00002
打开 reg.sh 文件 :
( 把 \ibmtss1.6.0\utils\policies目录下面的zerosha256.bin 拷贝到 Debug目录下面 )
然后执行:
createprimary.exe -hi p -pwdk sto -pol zerosha256.bin -tk pritk.bin -ch prich.bin
再查看 regtests下面的 xxx.sh 相关脚本
pcrread.exe -ha 16 -halg sha256 -of tmp.bin
"PCR Reset" :
pcrreset -ha 16
createprimary -hi p -pwdk sto
超过三个后创建失败
如何删除,执行:
flushcontext -ha 80000002
多次执行会提示失败:
创建指定算法的:
"-rsa 2048" "-rsa 3072" "-ecc bnp256" "-ecc nistp256" "-ecc nistp384" "-rsa"
createprimary -hi p -ecc nistp256