如何验证密钥是否已加载到 TPM 2.0 设备上

如何验证密钥是否已加载到 TPM 2.0 设备上

情况:

我正在学习如何使用软件包中的一些基本命令,tpm2-tools因为我必须开发一些高级测试用例来验证 TPM 是否按照客户要求处理密钥。我用来演示测试方法的计算机是一台 Dell 7510 笔记本电脑,配有 TPM 2.0 芯片和 Ubuntu 22.04 LTS。由于我完全不熟悉这项技术以及如何使用它,因此我首先按照帮助文档

现在,我专注于理解该tpm2_load命令及其中记录的示例帮助页面。 (我在下一节中写出了该过程。)我不明白的是为什么由于命令tpm2_loadkey_load.ctx在我的过程部分中)生成的密钥存储在我的计算机的硬盘驱动器上。它不应该存储在 TPM 上吗?如何检查 TPM 的内存以手动验证密钥是否已加载到其上?

过程:

以下是我执行的命令序列,似乎成功了:

$ sudo tpm2_createprimary -c key_prim.ctx
$ sudo tpm2_create -C key_prim.ctx -u key.pub -r key.priv
$ sudo tpm2_load -C key_prim.ctx -u key.pub -r key.priv -c key_load.ctx

我可以使用这些密钥加密/解密消息,并且我似乎可以证明key_prim.ctx使用是有效的tpm2_certify(表面上,我的意思是我可以执行该命令并且它不会返回错误消息)。一切似乎都正常工作,但我仍然对我应该加载的密钥也存在于我的硬盘上这一事实感到困惑。

相关内容