机器的唯一ID应该是什么?它的主板ID?Windows产品ID?我想检索机器的唯一ID。和其他人一样,我也做了很多研究,发现唯一ID生成过程并不完美。主板序列号(ID):唯一;它不能改变。但是,如果制造商没有将信息放在内存位置,则在某些机器中可能找不到。然后我发现它没有提供唯一的ID。大声笑“处理器ID”、“BIOSID”也类似。不敢使用PC的其他硬件信息。MAC和Windows产品ID可以通过软件更改。“Windows产品ID”是否不同?一种选择是将这些组合起来,但是如果上述条件适用并且组合不是唯一的怎么办?有没有其他方法可以找到机器的唯一标识?编辑:我想根据软件盗版保护的唯一ID生成序列密钥。机器是指我要安装软件的目标PC。@Guge:感谢您的提及。机器的唯一ID?正如您所发现的,没有“机器的唯一ID”之类的东西。您需要定义您的要求,并使用满足这些要求的ID(可能由您自己分配)。例如,对于Web应用程序,带有GUID的cookie可能足以区分匿名用户(可以忽略使用多个浏览器或“私有”模式的少数用户)。对于系统管理,在系统级别分配GUID应该就足够了(无论如何需要单独跟踪具有多重引导的多个操作系统安装)。...由于其中一些ID可能会丢失并且组件可以由用户更换,因此您需要确定“一台机器”的含义。例如,我会查看主板id、处理器id和biosid,因为这些是最不可能改变的。然后我会寻找所有三个并允许一个丢失和/或从上次更改。如果满足这些条件,则允许运行软件。我不知道如果两个甚至三个都丢失我会怎么做,因为正如您所说,MAC地址等其他内容可以通过软件更改,而硬盘驱动器ID可能不是唯一的,并且可能会更频繁地更改。如果您在计算机所有者故意绕过您的独特检查的情况下尝试跟踪独特的计算机,例如免费电脑游戏,每个玩家只需要一个帐户,我已经看到了上面提到的类似方法,但是使用一些加密。收集或尝试收集几条相对稳定的PC信息(TheMotherboardID/MACAddress/BIOS),将它们与salt前缀组合起来,并使用简单的免费算法对其进行加密。此密钥是您为该播放器存储的密钥,用户ID像密码一样加密。该密钥将是您每次登录时都可以检查的“机器”的一个很好的唯一标识符。您可以使用多种计算机信息,具体取决于您对您希望其组件的普通人的风险程度改变,但只要你不检查你检查的所有内容中的空白,它应该是非常安全的。以上就是C#学习教程:机器的唯一ID应该是什么?它的主板ID?Windows产品ID?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
