我正在构建一个应用程序,该应用程序要求用户在服务器上被唯一标识而无需登录。
我已经评估了应用程序特定的硬件 ID,但这似乎取决于机器的硬件配置,如果用户甚至更改了网络设备,它也会改变。
可以将 EasClientDeviceInformation 类与 Id 属性一起用于此目的吗?
谢谢,拉吉夫
我正在构建一个应用程序,该应用程序要求用户在服务器上被唯一标识而无需登录。
我已经评估了应用程序特定的硬件 ID,但这似乎取决于机器的硬件配置,如果用户甚至更改了网络设备,它也会改变。
可以将 EasClientDeviceInformation 类与 Id 属性一起用于此目的吗?
谢谢,拉吉夫
从EasClientDeviceInformation.Id 上的 MSDN 文章中,Id 是:
GUID 从 MachineID、用户 SID 和包系列名称的 SHA256 哈希的前 16 个字节截断,其中 MachineID 使用本地用户组的 SID。
这意味着每个用户帐户和机器组合的 Id 应该是唯一的。但是,我想克隆的操作系统将具有相同的 EasClientDeviceInformation.Id。如果这不是您的应用程序关心的问题,那么它应该足以单独使用。
如果您只使用不应更改的组件,则 ASHWID 可能是您的另一种选择。MSDN 有一篇关于如何使用它的详细文章。你绝对应该忽略音频、网络和蓝牙组件,因为我发现如果你做一些琐碎的事情,比如打开飞行模式或拔下耳机,它们就会被移除。