0

以下情况:我们的网关有一个 TPM,我们将为它提供每个设备的证书(由我们的 PKI 颁发)。IoT 中心身份验证如何工作?据我所知,需要向 IoT Hub 注册主证书和辅助证书的指纹,这没问题。稍后我们想使用主证书通过 IoT 中心对设备进行身份验证。根据这个项目的源代码,一个应该提供证书的私钥

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

这是我想避免的。我不希望私钥在内存 (RAM) 中。是否可以散列/加密并将结果用于身份验证?它将如何运作?

我们将使用 Windows 10 IoT Enterprise 或 Linux(不是 Windows 10 IoT Core)

编辑:这里https://github.com/ms-iot/security/blob/master/Limpet/Limpet.NET/Limpet.cs是用于根据设备的主要创建 SAS 令牌签名的方法 (SignHmac)直接键入 TPM (2.0)。我需要与证书类似的东西。

4

1 回答 1

1

@Helikaon,

您可以使用新的 Azure IoT 中心设备预配服务(现在为公共预览版)来使用 TPM 向 IoT 中心注册设备。您可以在此处找到更多信息:

https://docs.microsoft.com/en-us/azure/iot-dps/about-iot-dps

拉杰夫

于 2017-09-18T17:24:22.947 回答