2017-07-28 102 views
0

以下情況: 我們的網關具有TPM,我們將爲每個設備證書(由我們的PKI頒發)配置它。 IoT Hub認證如何工作? 據我所知,需要在物聯網集線器上註冊主要和輔助證書的指紋,這是可以的。 稍後,我們想要使用主要證書來認證使用IoT Hub的設備。據this一個項目的源代碼應該提供證書的私鑰具有x509證書和TPM的Azure IoT Hub

var authWithPrimaryPfx = new DeviceAuthenticationWithX509Certificate(device.Id, primaryCertSecret); 

這是我想避免的。我不希望私鑰在內存(RAM)中。是否有可能散列/加密並使用結果進行身份驗證?它將如何工作?

我們將使用Windows 10物聯網企業或Linux(而不是Windows 10物聯網核心)

編輯:這裏https://github.com/ms-iot/security/blob/master/Limpet/Limpet.NET/Limpet.cs是方法(SignHmac)用於創建基於一個SAS令牌的簽名設備的主鍵直接在TPM(2.0)中。我需要與證書類似的東西。

+0

你檢查[這](https://github.com/Azure/azure-iot-hub-vs-cs/wiki/Device -Provisioning與 - TPM)? –

+0

是的,這是我看到TpmDevice類的用法。該示例是我們不使用的Windows 10 IoT Core,它演示了對稱密鑰(主)的用法。我想使用證書 – Helikaon

+0

您可以[打開問題](https://github.com/ms-iot/security/issues)瞭解TPM支持的證書。 –

回答