2017-09-22 101 views
0

在DragonBoard 410c上,我可以通过设备入口或IoT Core仪表板配置TPM,在这两种情况下,所存储的信息都不可通过TpmDevice(0)逻辑设备获得。TPM供应不与实际的TPM设备配合使用

TpmDevice(0).GetDeviceID()确实返回一个值,但它不是配置的值,并.GetHostName().GetSasToken()都返回null

我无法在MinnowBoard Max上进行测试,因为该板上的TPM 2.0实现不完整,而且树莓派没有TPM。

我还没有尝试在MBM上使用软件模拟TPM,因为我希望这实际上是安全的。

这是我的代码,它的价值。

TpmDevice myDevice = new TpmDevice(0); 
string hubUri = myDevice.GetHostName(); // returns null 
string deviceId = myDevice.GetDeviceId(); // returns wrong value 
string sasToken = myDevice.GetSASToken(); // returns null 

回答

0

你可以按照下面的教程,以验证是否已启用正确的TPM版本的fTPM是否正常:

Setup firmware TPM (fTPM)

+0

这不是一个关于MBM fTPM的问题这么多,因为它是关于Azure的证书存储。也就是说,这是MBM在设置后在其TPM页面中显示的内容。 https://i.imgur.com/Oe7eUAW.png请注意“不支持”的文本。 – Naikrovek

+0

看起来像MBM TPM不支持存储Azure凭证所需的功能。 DragonBoard的确如此;为什么没有证书存储在那里工作? – Naikrovek

0

这与内幕预览的Dragonboard的问题。目前的版本(15063)没有这个问题。

标记自己的答案。

问题显然是通过内部人员进入生产的所有方式。 对于我来说,16299与我的内幕预览版本一样,显示了同样的行为。

https://github.com/ms-iot/security/issues/29

+0

如果您的物联网核心设备是最新的,这不再是解决方案。 Insider Preview版本中的错误似乎已经贯穿到了制作中...... – Naikrovek