最近我开始使用TPM(1.2版),在检查了官方的GnuTLS API之后,我想知道哪个API函数是执行芯片内所有加密工作的正确函数(签名证书获取pk +密钥等)。 ..)。
目前,我可以在TPM之外获取此数据,因此我可以在C代码中签名或获取私钥,但这不是我想要的。
谢谢!
答案 0 :(得分:2)
事件的顺序是这样的:
gnutls_tpm_key_list_get_url
以获得TPM密钥列表。gnutls_privkey_import_tpm_url
导入。gnutls_privkey_t
对象,您可以将abstract API与其他任何键一样使用。就您而言,您可能想使用gnutls_privkey_sign_data
或类似的签名功能之一。请记住,采用这种方法会限制您使用TPM 1.2。来自GnuTLS docs:
请注意,我们建议您不要将TPM与该API一起使用,因为 限于TPM 1.2。我们建议改用PKCS#11包装器 用于TPM,例如CHAPS14或opencryptoki15。这些将允许使用 标准智能卡和HSM功能(请参阅智能卡和HSM) 用于TPM密钥。